[INFO] cloning repository https://github.com/listellodavide/veritasmatic
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/listellodavide/veritasmatic" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flistellodavide%2Fveritasmatic", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flistellodavide%2Fveritasmatic'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 06b948c920e7d9eb48b63a75fcaeb8b14eb7e872
[INFO] checking listellodavide/veritasmatic/06b948c920e7d9eb48b63a75fcaeb8b14eb7e872 against 1.94.0 for beta-1.95-4
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flistellodavide%2Fveritasmatic" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/listellodavide/veritasmatic
[INFO] finished tweaking git repo https://github.com/listellodavide/veritasmatic
[INFO] tweaked toml for git repo https://github.com/listellodavide/veritasmatic written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/listellodavide/veritasmatic on toolchain 1.94.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.94.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/listellodavide/veritasmatic already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.94.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
[INFO] [stderr]   |
[INFO] [stderr]   = note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
[INFO] [stderr]   = note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest
[INFO] [stderr]   = note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded wat v1.240.0
[INFO] [stderr]   Downloaded wasmtime-types v18.0.4
[INFO] [stderr]   Downloaded wasmtime-winch v18.0.4
[INFO] [stderr]   Downloaded ittapi v0.4.0
[INFO] [stderr]   Downloaded memfd v0.6.5
[INFO] [stderr]   Downloaded wasmtime-jit-icache-coherence v18.0.4
[INFO] [stderr]   Downloaded wasmtime-versioned-export-macros v18.0.4
[INFO] [stderr]   Downloaded wasmtime-wmemcheck v18.0.4
[INFO] [stderr]   Downloaded wasmtime-component-util v18.0.4
[INFO] [stderr]   Downloaded cranelift-codegen-shared v0.105.4
[INFO] [stderr]   Downloaded ar_archive_writer v0.2.0
[INFO] [stderr]   Downloaded wasmtime-cache v18.0.4
[INFO] [stderr]   Downloaded cranelift-frontend v0.105.4
[INFO] [stderr]   Downloaded fxprof-processed-profile v0.6.0
[INFO] [stderr]   Downloaded cranelift-isle v0.105.4
[INFO] [stderr]   Downloaded wit-parser v0.13.2
[INFO] [stderr]   Downloaded wasmtime-cranelift v18.0.4
[INFO] [stderr]   Downloaded regalloc2 v0.9.3
[INFO] [stderr]   Downloaded ittapi-sys v0.4.0
[INFO] [stderr]   Downloaded wast v240.0.0
[INFO] [stderr]   Downloaded wasmparser v0.121.2
[INFO] [stderr]   Downloaded wasmtime-runtime v18.0.4
[INFO] [stderr]   Downloaded cranelift-wasm v0.105.4
[INFO] [stderr]   Downloaded wasmparser v0.240.0
[INFO] [stderr]   Downloaded wasmtime-environ v18.0.4
[INFO] [stderr]   Downloaded wasmtime v18.0.4
[INFO] [stderr]   Downloaded cranelift-codegen-meta v0.105.4
[INFO] [stderr]   Downloaded cpp_demangle v0.3.5
[INFO] [stderr]   Downloaded winch-codegen v0.16.4
[INFO] [stderr]   Downloaded wasm-encoder v0.41.2
[INFO] [stderr]   Downloaded cranelift-bforest v0.105.4
[INFO] [stderr]   Downloaded wasmprinter v0.2.80
[INFO] [stderr]   Downloaded wasmtime-wit-bindgen v18.0.4
[INFO] [stderr]   Downloaded wasmtime-component-macro v18.0.4
[INFO] [stderr]   Downloaded wasmtime-fiber v18.0.4
[INFO] [stderr]   Downloaded wasmtime-jit-debug v18.0.4
[INFO] [stderr]   Downloaded cranelift-entity v0.105.4
[INFO] [stderr]   Downloaded psm v0.1.28
[INFO] [stderr]   Downloaded cranelift-control v0.105.4
[INFO] [stderr]   Downloaded wasm-encoder v0.240.0
[INFO] [stderr]   Downloaded cranelift-native v0.105.4
[INFO] [stderr]   Downloaded wasmtime-cranelift-shared v18.0.4
[INFO] [stderr]   Downloaded slice-group-by v0.3.1
[INFO] [stderr]   Downloaded wasmtime-asm-macros v18.0.4
[INFO] [stderr]   Downloaded cranelift-codegen v0.105.4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.94.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 53a883954102aa43a3bcd3f88657701098f08aefdb1ce91299800ade8b67fa10
[INFO] running `Command { std: "docker" "start" "-a" "53a883954102aa43a3bcd3f88657701098f08aefdb1ce91299800ade8b67fa10", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "53a883954102aa43a3bcd3f88657701098f08aefdb1ce91299800ade8b67fa10", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "53a883954102aa43a3bcd3f88657701098f08aefdb1ce91299800ade8b67fa10", kill_on_drop: false }`
[INFO] [stdout] 53a883954102aa43a3bcd3f88657701098f08aefdb1ce91299800ade8b67fa10
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.94.0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b32165ab88a3d9e3ee1fefbc46d36c7fe85c7df025ca9f181e834d3f2fba7c73
[INFO] running `Command { std: "docker" "start" "-a" "b32165ab88a3d9e3ee1fefbc46d36c7fe85c7df025ca9f181e834d3f2fba7c73", kill_on_drop: false }`
[INFO] [stderr] warning: virtual workspace defaulting to `resolver = "1"` despite one or more workspace members being on edition 2021 which implies `resolver = "2"`
[INFO] [stderr]   |
[INFO] [stderr]   = note: to keep the current resolver, specify `workspace.resolver = "1"` in the workspace root's manifest
[INFO] [stderr]   = note: to use the edition 2021 resolver, specify `workspace.resolver = "2"` in the workspace root's manifest
[INFO] [stderr]   = note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
[INFO] [stderr]    Compiling unicode-ident v1.0.20
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling libc v0.2.177
[INFO] [stderr]     Checking cfg-if v1.0.4
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]     Checking hashbrown v0.16.0
[INFO] [stderr]     Checking memchr v2.7.6
[INFO] [stderr]     Checking equivalent v1.0.2
[INFO] [stderr]     Checking bitflags v2.10.0
[INFO] [stderr]     Checking once_cell v1.21.3
[INFO] [stderr]     Checking log v0.4.28
[INFO] [stderr]    Compiling zerocopy v0.8.27
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling cranelift-isle v0.105.4
[INFO] [stderr]    Compiling target-lexicon v0.12.16
[INFO] [stderr]    Compiling anyhow v1.0.100
[INFO] [stderr]    Compiling cranelift-codegen-shared v0.105.4
[INFO] [stderr]     Checking bumpalo v3.19.0
[INFO] [stderr]    Compiling cranelift-codegen-meta v0.105.4
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]     Checking semver v1.0.27
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]     Checking slice-group-by v0.3.1
[INFO] [stderr]    Compiling proc-macro2 v1.0.103
[INFO] [stderr]     Checking arbitrary v1.4.2
[INFO] [stderr]     Checking rustc-hash v1.1.0
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]    Compiling generic-array v0.14.9
[INFO] [stderr]     Checking typenum v1.19.0
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling cpp_demangle v0.3.5
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]     Checking utf8parse v0.2.2
[INFO] [stderr]     Checking linux-raw-sys v0.4.15
[INFO] [stderr]     Checking leb128 v0.2.5
[INFO] [stderr]    Compiling quote v1.0.41
[INFO] [stderr]     Checking wasm-encoder v0.41.2
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]     Checking anstyle-parse v0.2.7
[INFO] [stderr]    Compiling syn v2.0.108
[INFO] [stderr]     Checking colorchoice v1.0.4
[INFO] [stderr]     Checking anstyle-query v1.1.4
[INFO] [stderr]     Checking wasmtime-component-util v18.0.4
[INFO] [stderr]    Compiling wasm-encoder v0.240.0
[INFO] [stderr]     Checking cranelift-control v0.105.4
[INFO] [stderr]    Compiling rustix v1.1.2
[INFO] [stderr]    Compiling zstd-safe v5.0.2+zstd.1.5.2
[INFO] [stderr]     Checking rustc-demangle v0.1.26
[INFO] [stderr]     Checking anstyle v1.0.13
[INFO] [stderr]     Checking regex-syntax v0.8.8
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking is_terminal_polyfill v1.70.2
[INFO] [stderr]     Checking anstream v0.6.21
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling memoffset v0.9.1
[INFO] [stderr]     Checking leb128fmt v0.1.0
[INFO] [stderr]    Compiling id-arena v2.2.1
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]     Checking crypto-common v0.1.6
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]    Compiling dirs-sys-next v0.1.2
[INFO] [stderr]     Checking linux-raw-sys v0.11.0
[INFO] [stderr]     Checking strsim v0.11.1
[INFO] [stderr]     Checking clap_lex v0.7.6
[INFO] [stderr]    Compiling cc v1.2.43
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]    Compiling dirs-next v2.0.0
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]     Checking clap_builder v4.5.51
[INFO] [stderr]     Checking crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking indexmap v2.12.0
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]     Checking wasmtime-asm-macros v18.0.4
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking hashbrown v0.13.2
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]    Compiling wasmtime-component-macro v18.0.4
[INFO] [stderr]    Compiling cranelift-codegen v0.105.4
[INFO] [stderr]     Checking unicode-width v0.2.2
[INFO] [stderr]     Checking uuid v1.18.1
[INFO] [stderr]     Checking regalloc2 v0.9.3
[INFO] [stderr]    Compiling tiny-keccak v2.0.2
[INFO] [stderr]     Checking ryu v1.0.20
[INFO] [stderr]    Compiling wasmtime-cache v18.0.4
[INFO] [stderr]     Checking gimli v0.28.1
[INFO] [stderr]     Checking wasmparser v0.121.2
[INFO] [stderr]     Checking object v0.32.2
[INFO] [stderr]     Checking cpufeatures v0.2.17
[INFO] [stderr]     Checking regex-automata v0.4.13
[INFO] [stderr]     Checking itoa v1.0.15
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]    Compiling zstd-sys v2.0.16+zstd.1.5.7
[INFO] [stderr]    Compiling ittapi-sys v0.4.0
[INFO] [stderr]     Checking debugid v0.8.0
[INFO] [stderr]     Checking wast v240.0.0
[INFO] [stderr]     Checking fxhash v0.2.1
[INFO] [stderr]     Checking directories-next v2.0.0
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling term v0.7.0
[INFO] [stderr]     Checking encoding_rs v0.8.35
[INFO] [stderr]     Checking memfd v0.6.5
[INFO] [stderr]     Checking sptr v0.3.2
[INFO] [stderr]     Checking wasmtime-wmemcheck v18.0.4
[INFO] [stderr]     Checking base64 v0.21.7
[INFO] [stderr]    Compiling petgraph v0.6.5
[INFO] [stderr]    Compiling pest_generator v2.8.3
[INFO] [stderr]    Compiling itertools v0.11.0
[INFO] [stderr]    Compiling ascii-canvas v3.0.0
[INFO] [stderr]     Checking ittapi v0.4.0
[INFO] [stderr]     Checking rayon v1.11.0
[INFO] [stderr]    Compiling string_cache v0.8.9
[INFO] [stderr]    Compiling bit-set v0.5.3
[INFO] [stderr]     Checking wasmtime-jit-icache-coherence v18.0.4
[INFO] [stderr]     Checking regex v1.12.2
[INFO] [stderr]     Checking hex v0.4.3
[INFO] [stderr]     Checking lalrpop-util v0.20.2
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling wasmtime-versioned-export-macros v18.0.4
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling clap_derive v4.5.49
[INFO] [stderr]    Compiling wasmtime-fiber v18.0.4
[INFO] [stderr]    Compiling wasmtime-runtime v18.0.4
[INFO] [stderr]     Checking addr2line v0.21.0
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]     Checking wasmtime-jit-debug v18.0.4
[INFO] [stderr]    Compiling pest_derive v2.8.3
[INFO] [stderr]    Compiling lalrpop v0.20.2
[INFO] [stderr]     Checking wasmprinter v0.2.80
[INFO] [stderr]     Checking clap v4.5.51
[INFO] [stderr]     Checking wat v1.240.0
[INFO] [stderr]     Checking cranelift-entity v0.105.4
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking toml v0.5.11
[INFO] [stderr]     Checking veritas_api v0.1.0 (/opt/rustwide/workdir/veritas_api)
[INFO] [stderr]     Checking fxprof-processed-profile v0.6.0
[INFO] [stderr]    Compiling wit-parser v0.13.2
[INFO] [stderr]     Checking cranelift-bforest v0.105.4
[INFO] [stderr]     Checking wasmtime-types v18.0.4
[INFO] [stderr]     Checking wasmtime-environ v18.0.4
[INFO] [stderr]    Compiling wasmtime-wit-bindgen v18.0.4
[INFO] [stderr]     Checking zstd v0.11.2+zstd.1.5.2
[INFO] [stderr]    Compiling veritas_compiler v0.1.0 (/opt/rustwide/workdir/veritas_compiler)
[INFO] [stderr] error: failed to run custom build command for `veritas_compiler v0.1.0 (/opt/rustwide/workdir/veritas_compiler)`
[INFO] [stderr] note: To improve backtraces for build dependencies, set the CARGO_PROFILE_DEV_BUILD_OVERRIDE_DEBUG=true environment variable to enable debug information generation.
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/target/debug/build/veritas_compiler-dd09388f7785d25f/build-script-build` (exit status: 1)
[INFO] [stderr]   --- stdout
[INFO] [stderr]   processing file `/opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop`
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:115:5: 115:19: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     AddSubOp = (*) "+" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     AddSubOp = (*) "-" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = Factor (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = Factor (*) AddSubOp Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"+"` we can reduce to a `Term` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:115:5: 115:19: Local ambiguity detected
[INFO] [stderr] 
[INFO] [stderr]     The problem arises after having observed the following symbols in the input:
[INFO] [stderr]       "for" Identifier "in" Expression ".." Factor
[INFO] [stderr]     At that point, if the next token is a `"-"`, then the parser can proceed in two different ways.
[INFO] [stderr] 
[INFO] [stderr]     First, the parser could execute the production at
[INFO] [stderr]     /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:115:5: 115:19, which would consume
[INFO] [stderr]     the top 1 token(s) from the stack and produce a `Term`. This might then yield a parse tree like
[INFO] [stderr]       "for" Identifier "in" Expression ".." Factor       ╷ Expression
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, the parser could shift the `"-"` token and later use it to construct a
[INFO] [stderr]     `AddSubOp`. This might then yield a parse tree like
[INFO] [stderr]       Factor "-"        ╷ Factor
[INFO] [stderr]       │      └─AddSubOp─┘      │
[INFO] [stderr]       └─Term───────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     See the LALRPOP manual for advice on making your grammar LR(1).
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:99:5: 99:17: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     Comparison = Term (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = Term (*) ComparisonOp Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "!=" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "<" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "<=" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "==" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) ">" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) ">=" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "and" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "or" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"!="` we can reduce to a `Comparison` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:99:5: 99:17: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     Comparison = Term (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = Term (*) ComparisonOp Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "!=" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "<" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "<=" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "==" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) ">" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) ">=" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "and" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "or" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"<"` we can reduce to a `Comparison` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:99:5: 99:17: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     Comparison = Term (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = Term (*) ComparisonOp Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "!=" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "<" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "<=" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "==" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) ">" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) ">=" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "and" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "or" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"<="` we can reduce to a `Comparison` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:99:5: 99:17: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     Comparison = Term (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = Term (*) ComparisonOp Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "!=" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "<" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "<=" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "==" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) ">" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) ">=" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "and" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "or" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"=="` we can reduce to a `Comparison` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:99:5: 99:17: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     Comparison = Term (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = Term (*) ComparisonOp Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "!=" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "<" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "<=" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "==" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) ">" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) ">=" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "and" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "or" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `">"` we can reduce to a `Comparison` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:99:5: 99:17: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     Comparison = Term (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = Term (*) ComparisonOp Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "!=" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "<" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "<=" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "==" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) ">" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) ">=" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "and" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "or" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `">="` we can reduce to a `Comparison` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:99:5: 99:17: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     Comparison = Term (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = Term (*) ComparisonOp Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "!=" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "<" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "<=" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "==" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) ">" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) ">=" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "and" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "or" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"and"` we can reduce to a `Comparison` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:99:5: 99:17: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     Comparison = Term (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = Term (*) ComparisonOp Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "!=" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "<" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "<=" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "==" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) ">" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) ">=" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "and" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ComparisonOp = (*) "or" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"or"` we can reduce to a `Comparison` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:125:5: 125:18: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     Factor = Unary (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = Unary (*) MulDivOp Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     MulDivOp = (*) "*" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     MulDivOp = (*) "/" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"*"` we can reduce to a `Factor` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:125:5: 125:18: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     Factor = Unary (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = Unary (*) MulDivOp Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     MulDivOp = (*) "*" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     MulDivOp = (*) "/" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"/"` we can reduce to a `Factor` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:152:5: 152:49: Local ambiguity detected
[INFO] [stderr] 
[INFO] [stderr]     The problem arises after having observed the following symbols in the input:
[INFO] [stderr]       "for" Identifier "in" Expression ".." Identifier
[INFO] [stderr]     At that point, if the next token is a `"("`, then the parser can proceed in two different ways.
[INFO] [stderr] 
[INFO] [stderr]     First, the parser could execute the production at
[INFO] [stderr]     /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:152:5: 152:49, which would consume
[INFO] [stderr]     the top 1 token(s) from the stack and produce a `Primary`. This might then yield a parse tree
[INFO] [stderr]     like
[INFO] [stderr]       "for" Identifier "in" Expression ".." Identifier   ╷ Expression
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, the parser could shift the `"("` token and later use it to construct a
[INFO] [stderr]     `Primary`. This might then yield a parse tree like
[INFO] [stderr]       "-" Identifier "(" ArgumentList ")"
[INFO] [stderr]       │   └─Primary─────────────────────┤
[INFO] [stderr]       └─Unary───────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     See the LALRPOP manual for advice on making your grammar LR(1).
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{" "}" Expression
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "{" "}" ComparisonOp Term
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "{"     "}" ComparisonOp Term
[INFO] [stderr]       ├─Block───┤                 │
[INFO] [stderr]       ├─Primary─┤                 │
[INFO] [stderr]       ├─Unary───┤                 │
[INFO] [stderr]       ├─Factor──┤                 │
[INFO] [stderr]       ├─Term────┘                 │
[INFO] [stderr]       └─Comparison────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "{"     "}" ComparisonOp Term
[INFO] [stderr]       ├─Block───┤                 │
[INFO] [stderr]       ├─Primary─┤                 │
[INFO] [stderr]       ├─Unary───┤                 │
[INFO] [stderr]       ├─Factor──┤                 │
[INFO] [stderr]       ├─Term────┘                 │
[INFO] [stderr]       └─Comparison────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{" "}" Expression
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "(" "{" "}" ")"
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "(" "{"        "}" ")"
[INFO] [stderr]       │   ├─Block──────┤   │
[INFO] [stderr]       │   ├─Primary────┤   │
[INFO] [stderr]       │   ├─Unary──────┤   │
[INFO] [stderr]       │   ├─Factor─────┤   │
[INFO] [stderr]       │   ├─Term───────┤   │
[INFO] [stderr]       │   ├─Comparison─┤   │
[INFO] [stderr]       │   └─Expression─┘   │
[INFO] [stderr]       └─Primary────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "(" "{"        "}" ")"
[INFO] [stderr]       │   ├─Block──────┤   │
[INFO] [stderr]       │   ├─Primary────┤   │
[INFO] [stderr]       │   ├─Unary──────┤   │
[INFO] [stderr]       │   ├─Factor─────┤   │
[INFO] [stderr]       │   ├─Term───────┤   │
[INFO] [stderr]       │   ├─Comparison─┤   │
[INFO] [stderr]       │   └─Expression─┘   │
[INFO] [stderr]       └─Primary────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "{" "}" MulDivOp Unary
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "{"     "}" MulDivOp Unary
[INFO] [stderr]       ├─Block───┤              │
[INFO] [stderr]       ├─Primary─┤              │
[INFO] [stderr]       ├─Unary───┘              │
[INFO] [stderr]       └─Factor─────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "{"     "}" MulDivOp Unary
[INFO] [stderr]       ├─Block───┤              │
[INFO] [stderr]       ├─Primary─┤              │
[INFO] [stderr]       ├─Unary───┘              │
[INFO] [stderr]       └─Factor─────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "{" "}" AddSubOp Factor
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "{"     "}" AddSubOp Factor
[INFO] [stderr]       ├─Block───┤               │
[INFO] [stderr]       ├─Primary─┤               │
[INFO] [stderr]       ├─Unary───┤               │
[INFO] [stderr]       ├─Factor──┘               │
[INFO] [stderr]       └─Term────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "{"     "}" AddSubOp Factor
[INFO] [stderr]       ├─Block───┤               │
[INFO] [stderr]       ├─Primary─┤               │
[INFO] [stderr]       ├─Unary───┤               │
[INFO] [stderr]       ├─Factor──┘               │
[INFO] [stderr]       └─Term────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "{" "}" ("," Expression)+
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "{"        "}" ("," Expression)+
[INFO] [stderr]       ├─Block──────┤                 │
[INFO] [stderr]       ├─Primary────┤                 │
[INFO] [stderr]       ├─Unary──────┤                 │
[INFO] [stderr]       ├─Factor─────┤                 │
[INFO] [stderr]       ├─Term───────┤                 │
[INFO] [stderr]       ├─Comparison─┤                 │
[INFO] [stderr]       ├─Expression─┘                 │
[INFO] [stderr]       └─Comma<Expression>────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "{"        "}" ("," Expression)+
[INFO] [stderr]       ├─Block──────┤                 │
[INFO] [stderr]       ├─Primary────┤                 │
[INFO] [stderr]       ├─Unary──────┤                 │
[INFO] [stderr]       ├─Factor─────┤                 │
[INFO] [stderr]       ├─Term───────┤                 │
[INFO] [stderr]       ├─Comparison─┤                 │
[INFO] [stderr]       ├─Expression─┘                 │
[INFO] [stderr]       └─Comma<Expression>────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "{" "}" AddSubOp Factor
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "{"     "}" AddSubOp Factor
[INFO] [stderr]       ├─Block───┤               │
[INFO] [stderr]       ├─Primary─┤               │
[INFO] [stderr]       ├─Unary───┤               │
[INFO] [stderr]       ├─Factor──┘               │
[INFO] [stderr]       └─Term────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "{"     "}" AddSubOp Factor
[INFO] [stderr]       ├─Block───┤               │
[INFO] [stderr]       ├─Primary─┤               │
[INFO] [stderr]       ├─Unary───┤               │
[INFO] [stderr]       ├─Factor──┘               │
[INFO] [stderr]       └─Term────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     Block = "{" "}" (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = "{" "}" (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"->"` we can reduce to a `Block` but we can also reduce to a `Block`
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "for" Identifier "in" "{" "}" ".." Expression Expression
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" "{"        "}" ".." Expression Expression
[INFO] [stderr]       │                     ├─Block──────┤                          │
[INFO] [stderr]       │                     ├─Primary────┤                          │
[INFO] [stderr]       │                     ├─Unary──────┤                          │
[INFO] [stderr]       │                     ├─Factor─────┤                          │
[INFO] [stderr]       │                     ├─Term───────┤                          │
[INFO] [stderr]       │                     ├─Comparison─┤                          │
[INFO] [stderr]       │                     └─Expression─┘                          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" "{"        "}" ".." Expression Expression
[INFO] [stderr]       │                     ├─Block──────┤                          │
[INFO] [stderr]       │                     ├─Primary────┤                          │
[INFO] [stderr]       │                     ├─Unary──────┤                          │
[INFO] [stderr]       │                     ├─Factor─────┤                          │
[INFO] [stderr]       │                     ├─Term───────┤                          │
[INFO] [stderr]       │                     ├─Comparison─┤                          │
[INFO] [stderr]       │                     └─Expression─┘                          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "{" "}" MulDivOp Unary
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "{"     "}" MulDivOp Unary
[INFO] [stderr]       ├─Block───┤              │
[INFO] [stderr]       ├─Primary─┤              │
[INFO] [stderr]       ├─Unary───┘              │
[INFO] [stderr]       └─Factor─────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "{"     "}" MulDivOp Unary
[INFO] [stderr]       ├─Block───┤              │
[INFO] [stderr]       ├─Primary─┤              │
[INFO] [stderr]       ├─Unary───┘              │
[INFO] [stderr]       └─Factor─────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     Block = "{" "}" (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = "{" "}" (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `":"` we can reduce to a `Block` but we can also reduce to a `Block`
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "{" "}" ";"
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "{"        "}" ";"
[INFO] [stderr]       ├─Block──────┤   │
[INFO] [stderr]       ├─Primary────┤   │
[INFO] [stderr]       ├─Unary──────┤   │
[INFO] [stderr]       ├─Factor─────┤   │
[INFO] [stderr]       ├─Term───────┤   │
[INFO] [stderr]       ├─Comparison─┤   │
[INFO] [stderr]       ├─Expression─┘   │
[INFO] [stderr]       └─Statement──────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "{"        "}" ";"
[INFO] [stderr]       ├─Block──────┤   │
[INFO] [stderr]       ├─Primary────┤   │
[INFO] [stderr]       ├─Unary──────┤   │
[INFO] [stderr]       ├─Factor─────┤   │
[INFO] [stderr]       ├─Term───────┤   │
[INFO] [stderr]       ├─Comparison─┤   │
[INFO] [stderr]       ├─Expression─┘   │
[INFO] [stderr]       └─Statement──────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "{" "}" ComparisonOp Term
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "{"     "}" ComparisonOp Term
[INFO] [stderr]       ├─Block───┤                 │
[INFO] [stderr]       ├─Primary─┤                 │
[INFO] [stderr]       ├─Unary───┤                 │
[INFO] [stderr]       ├─Factor──┤                 │
[INFO] [stderr]       ├─Term────┘                 │
[INFO] [stderr]       └─Comparison────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "{"     "}" ComparisonOp Term
[INFO] [stderr]       ├─Block───┤                 │
[INFO] [stderr]       ├─Primary─┤                 │
[INFO] [stderr]       ├─Unary───┤                 │
[INFO] [stderr]       ├─Factor──┤                 │
[INFO] [stderr]       ├─Term────┘                 │
[INFO] [stderr]       └─Comparison────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "{" "}" ComparisonOp Term
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "{"     "}" ComparisonOp Term
[INFO] [stderr]       ├─Block───┤                 │
[INFO] [stderr]       ├─Primary─┤                 │
[INFO] [stderr]       ├─Unary───┤                 │
[INFO] [stderr]       ├─Factor──┤                 │
[INFO] [stderr]       ├─Term────┘                 │
[INFO] [stderr]       └─Comparison────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "{"     "}" ComparisonOp Term
[INFO] [stderr]       ├─Block───┤                 │
[INFO] [stderr]       ├─Primary─┤                 │
[INFO] [stderr]       ├─Unary───┤                 │
[INFO] [stderr]       ├─Factor──┤                 │
[INFO] [stderr]       ├─Term────┘                 │
[INFO] [stderr]       └─Comparison────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "{" "}" "=" Expression
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "{"        "}" "=" Expression
[INFO] [stderr]       ├─Block──────┤              │
[INFO] [stderr]       ├─Primary────┤              │
[INFO] [stderr]       ├─Unary──────┤              │
[INFO] [stderr]       ├─Factor─────┤              │
[INFO] [stderr]       ├─Term───────┤              │
[INFO] [stderr]       ├─Comparison─┘              │
[INFO] [stderr]       └─Expression────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "{"        "}" "=" Expression
[INFO] [stderr]       ├─Block──────┤              │
[INFO] [stderr]       ├─Primary────┤              │
[INFO] [stderr]       ├─Unary──────┤              │
[INFO] [stderr]       ├─Factor─────┤              │
[INFO] [stderr]       ├─Term───────┤              │
[INFO] [stderr]       ├─Comparison─┘              │
[INFO] [stderr]       └─Expression────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "{" "}" ComparisonOp Term
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "{"     "}" ComparisonOp Term
[INFO] [stderr]       ├─Block───┤                 │
[INFO] [stderr]       ├─Primary─┤                 │
[INFO] [stderr]       ├─Unary───┤                 │
[INFO] [stderr]       ├─Factor──┤                 │
[INFO] [stderr]       ├─Term────┘                 │
[INFO] [stderr]       └─Comparison────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "{"     "}" ComparisonOp Term
[INFO] [stderr]       ├─Block───┤                 │
[INFO] [stderr]       ├─Primary─┤                 │
[INFO] [stderr]       ├─Unary───┤                 │
[INFO] [stderr]       ├─Factor──┤                 │
[INFO] [stderr]       ├─Term────┘                 │
[INFO] [stderr]       └─Comparison────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "{" "}" ComparisonOp Term
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "{"     "}" ComparisonOp Term
[INFO] [stderr]       ├─Block───┤                 │
[INFO] [stderr]       ├─Primary─┤                 │
[INFO] [stderr]       ├─Unary───┤                 │
[INFO] [stderr]       ├─Factor──┤                 │
[INFO] [stderr]       ├─Term────┘                 │
[INFO] [stderr]       └─Comparison────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "{"     "}" ComparisonOp Term
[INFO] [stderr]       ├─Block───┤                 │
[INFO] [stderr]       ├─Primary─┤                 │
[INFO] [stderr]       ├─Unary───┤                 │
[INFO] [stderr]       ├─Factor──┤                 │
[INFO] [stderr]       ├─Term────┘                 │
[INFO] [stderr]       └─Comparison────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "{" "}" ComparisonOp Term
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "{"     "}" ComparisonOp Term
[INFO] [stderr]       ├─Block───┤                 │
[INFO] [stderr]       ├─Primary─┤                 │
[INFO] [stderr]       ├─Unary───┤                 │
[INFO] [stderr]       ├─Factor──┤                 │
[INFO] [stderr]       ├─Term────┘                 │
[INFO] [stderr]       └─Comparison────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "{"     "}" ComparisonOp Term
[INFO] [stderr]       ├─Block───┤                 │
[INFO] [stderr]       ├─Primary─┤                 │
[INFO] [stderr]       ├─Unary───┤                 │
[INFO] [stderr]       ├─Factor──┤                 │
[INFO] [stderr]       ├─Term────┘                 │
[INFO] [stderr]       └─Comparison────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "fn" Identifier "(" FunctionParamList ")" OptionalReturnType "{" "}" Item
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "fn" Identifier "(" FunctionParamList ")" OptionalReturnType "{"        "}" Item
[INFO] [stderr]       │                                                            ├─Block──────┤    │
[INFO] [stderr]       │                                                            ├─Primary────┤    │
[INFO] [stderr]       │                                                            ├─Unary──────┤    │
[INFO] [stderr]       │                                                            ├─Factor─────┤    │
[INFO] [stderr]       │                                                            ├─Term───────┤    │
[INFO] [stderr]       │                                                            ├─Comparison─┤    │
[INFO] [stderr]       │                                                            └─Expression─┤    │
[INFO] [stderr]       ├─Function────────────────────────────────────────────────────────────────┤    │
[INFO] [stderr]       ├─Item────────────────────────────────────────────────────────────────────┤    │
[INFO] [stderr]       ├─(Item)+─────────────────────────────────────────────────────────────────┘    │
[INFO] [stderr]       └─(Item)+──────────────────────────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "fn" Identifier "(" FunctionParamList ")" OptionalReturnType "{"        "}" Item
[INFO] [stderr]       │                                                            ├─Block──────┤    │
[INFO] [stderr]       │                                                            ├─Primary────┤    │
[INFO] [stderr]       │                                                            ├─Unary──────┤    │
[INFO] [stderr]       │                                                            ├─Factor─────┤    │
[INFO] [stderr]       │                                                            ├─Term───────┤    │
[INFO] [stderr]       │                                                            ├─Comparison─┤    │
[INFO] [stderr]       │                                                            └─Expression─┤    │
[INFO] [stderr]       ├─Function────────────────────────────────────────────────────────────────┤    │
[INFO] [stderr]       ├─Item────────────────────────────────────────────────────────────────────┤    │
[INFO] [stderr]       ├─(Item)+─────────────────────────────────────────────────────────────────┘    │
[INFO] [stderr]       └─(Item)+──────────────────────────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     Block = "{" "}" (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = "{" "}" (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"Bool"` we can reduce to a `Block` but we can also reduce to a `Block`
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     Block = "{" "}" (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = "{" "}" (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"Int"` we can reduce to a `Block` but we can also reduce to a `Block`
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     Block = "{" "}" (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = "{" "}" (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"List"` we can reduce to a `Block` but we can also reduce to a `Block`
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     Block = "{" "}" (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = "{" "}" (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"Regex"` we can reduce to a `Block` but we can also reduce to a `Block`
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{" "}" Expression
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     Block = "{" "}" (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = "{" "}" (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"Result"` we can reduce to a `Block` but we can also reduce to a `Block`
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     Block = "{" "}" (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = "{" "}" (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"String"` we can reduce to a `Block` but we can also reduce to a `Block`
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     Block = "{" "}" (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = "{" "}" (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"Unit"` we can reduce to a `Block` but we can also reduce to a `Block`
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "{" "}" ComparisonOp Term
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "{"     "}" ComparisonOp Term
[INFO] [stderr]       ├─Block───┤                 │
[INFO] [stderr]       ├─Primary─┤                 │
[INFO] [stderr]       ├─Unary───┤                 │
[INFO] [stderr]       ├─Factor──┤                 │
[INFO] [stderr]       ├─Term────┘                 │
[INFO] [stderr]       └─Comparison────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "{"     "}" ComparisonOp Term
[INFO] [stderr]       ├─Block───┤                 │
[INFO] [stderr]       ├─Primary─┤                 │
[INFO] [stderr]       ├─Unary───┤                 │
[INFO] [stderr]       ├─Factor──┤                 │
[INFO] [stderr]       ├─Term────┘                 │
[INFO] [stderr]       └─Comparison────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{" "}" Expression
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "if" "(" Expression ")" "{" "}" "else" Block
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "if" "(" Expression ")" "{"   "}" "else" Block
[INFO] [stderr]       │                       └─Block─┘            │
[INFO] [stderr]       └─Expression─────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "if" "(" Expression ")" "{"   "}" "else" Block
[INFO] [stderr]       │                       └─Block─┘            │
[INFO] [stderr]       └─Expression─────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{" "}" Expression
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "fn" Identifier "(" FunctionParamList ")" OptionalReturnType "{" "}" Item
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "fn" Identifier "(" FunctionParamList ")" OptionalReturnType "{"        "}" Item
[INFO] [stderr]       │                                                            ├─Block──────┤    │
[INFO] [stderr]       │                                                            ├─Primary────┤    │
[INFO] [stderr]       │                                                            ├─Unary──────┤    │
[INFO] [stderr]       │                                                            ├─Factor─────┤    │
[INFO] [stderr]       │                                                            ├─Term───────┤    │
[INFO] [stderr]       │                                                            ├─Comparison─┤    │
[INFO] [stderr]       │                                                            └─Expression─┤    │
[INFO] [stderr]       ├─Function────────────────────────────────────────────────────────────────┤    │
[INFO] [stderr]       ├─Item────────────────────────────────────────────────────────────────────┤    │
[INFO] [stderr]       ├─(Item)+─────────────────────────────────────────────────────────────────┘    │
[INFO] [stderr]       └─(Item)+──────────────────────────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "fn" Identifier "(" FunctionParamList ")" OptionalReturnType "{"        "}" Item
[INFO] [stderr]       │                                                            ├─Block──────┤    │
[INFO] [stderr]       │                                                            ├─Primary────┤    │
[INFO] [stderr]       │                                                            ├─Unary──────┤    │
[INFO] [stderr]       │                                                            ├─Factor─────┤    │
[INFO] [stderr]       │                                                            ├─Term───────┤    │
[INFO] [stderr]       │                                                            ├─Comparison─┤    │
[INFO] [stderr]       │                                                            └─Expression─┤    │
[INFO] [stderr]       ├─Function────────────────────────────────────────────────────────────────┤    │
[INFO] [stderr]       ├─Item────────────────────────────────────────────────────────────────────┤    │
[INFO] [stderr]       ├─(Item)+─────────────────────────────────────────────────────────────────┘    │
[INFO] [stderr]       └─(Item)+──────────────────────────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{" "}" Expression
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{" "}" Expression
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     Block = "{" "}" (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = "{" "}" (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"in"` we can reduce to a `Block` but we can also reduce to a `Block`
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     Block = "{" "}" (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = "{" "}" (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"let"` we can reduce to a `Block` but we can also reduce to a `Block`
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "{" "}" ComparisonOp Term
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "{"     "}" ComparisonOp Term
[INFO] [stderr]       ├─Block───┤                 │
[INFO] [stderr]       ├─Primary─┤                 │
[INFO] [stderr]       ├─Unary───┤                 │
[INFO] [stderr]       ├─Factor──┤                 │
[INFO] [stderr]       ├─Term────┘                 │
[INFO] [stderr]       └─Comparison────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "{"     "}" ComparisonOp Term
[INFO] [stderr]       ├─Block───┤                 │
[INFO] [stderr]       ├─Primary─┤                 │
[INFO] [stderr]       ├─Unary───┤                 │
[INFO] [stderr]       ├─Factor──┤                 │
[INFO] [stderr]       ├─Term────┘                 │
[INFO] [stderr]       └─Comparison────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{" "}" Expression
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{" "}" Expression
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "fn" Identifier "(" FunctionParamList ")" OptionalReturnType "{" "}" Item
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "fn" Identifier "(" FunctionParamList ")" OptionalReturnType "{"        "}" Item
[INFO] [stderr]       │                                                            ├─Block──────┤    │
[INFO] [stderr]       │                                                            ├─Primary────┤    │
[INFO] [stderr]       │                                                            ├─Unary──────┤    │
[INFO] [stderr]       │                                                            ├─Factor─────┤    │
[INFO] [stderr]       │                                                            ├─Term───────┤    │
[INFO] [stderr]       │                                                            ├─Comparison─┤    │
[INFO] [stderr]       │                                                            └─Expression─┤    │
[INFO] [stderr]       ├─Function────────────────────────────────────────────────────────────────┤    │
[INFO] [stderr]       ├─Item────────────────────────────────────────────────────────────────────┤    │
[INFO] [stderr]       ├─(Item)+─────────────────────────────────────────────────────────────────┘    │
[INFO] [stderr]       └─(Item)+──────────────────────────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "fn" Identifier "(" FunctionParamList ")" OptionalReturnType "{"        "}" Item
[INFO] [stderr]       │                                                            ├─Block──────┤    │
[INFO] [stderr]       │                                                            ├─Primary────┤    │
[INFO] [stderr]       │                                                            ├─Unary──────┤    │
[INFO] [stderr]       │                                                            ├─Factor─────┤    │
[INFO] [stderr]       │                                                            ├─Term───────┤    │
[INFO] [stderr]       │                                                            ├─Comparison─┤    │
[INFO] [stderr]       │                                                            └─Expression─┤    │
[INFO] [stderr]       ├─Function────────────────────────────────────────────────────────────────┤    │
[INFO] [stderr]       ├─Item────────────────────────────────────────────────────────────────────┤    │
[INFO] [stderr]       ├─(Item)+─────────────────────────────────────────────────────────────────┘    │
[INFO] [stderr]       └─(Item)+──────────────────────────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{" "}" Expression
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{" "}" Expression
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{" "}" Expression
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "{" "{" "}" "}"
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "{" "{"        "}" "}"
[INFO] [stderr]       │   ├─Block──────┤   │
[INFO] [stderr]       │   ├─Primary────┤   │
[INFO] [stderr]       │   ├─Unary──────┤   │
[INFO] [stderr]       │   ├─Factor─────┤   │
[INFO] [stderr]       │   ├─Term───────┤   │
[INFO] [stderr]       │   ├─Comparison─┤   │
[INFO] [stderr]       │   └─Expression─┘   │
[INFO] [stderr]       └─Block──────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "{" "{"        "}" "}"
[INFO] [stderr]       │   ├─Block──────┤   │
[INFO] [stderr]       │   ├─Primary────┤   │
[INFO] [stderr]       │   ├─Unary──────┤   │
[INFO] [stderr]       │   ├─Factor─────┤   │
[INFO] [stderr]       │   ├─Term───────┤   │
[INFO] [stderr]       │   ├─Comparison─┤   │
[INFO] [stderr]       │   └─Expression─┘   │
[INFO] [stderr]       └─Block──────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{" "}" Expression
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{" "}" Expression
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Ambiguous grammar detected
[INFO] [stderr] 
[INFO] [stderr]     The following symbols can be reduced in two ways:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{" "}" Expression
[INFO] [stderr] 
[INFO] [stderr]     They could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, they could be reduced like so:
[INFO] [stderr]       "for" Identifier "in" Expression ".." "{"        "}" Expression
[INFO] [stderr]       │                                     ├─Block──────┤          │
[INFO] [stderr]       │                                     ├─Primary────┤          │
[INFO] [stderr]       │                                     ├─Unary──────┤          │
[INFO] [stderr]       │                                     ├─Factor─────┤          │
[INFO] [stderr]       │                                     ├─Term───────┤          │
[INFO] [stderr]       │                                     ├─Comparison─┤          │
[INFO] [stderr]       │                                     └─Expression─┘          │
[INFO] [stderr]       └─Expression──────────────────────────────────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     LALRPOP does not yet support ambiguous grammars. See the LALRPOP manual for advice on making your
[INFO] [stderr]     grammar unambiguous.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:148:5: 148:55: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     Block = "{" "}" (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = "{" "}" (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `Eof` we can reduce to a `Block` but we can also reduce to a `Block`
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:174:5: 175:0: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     ArgumentList = (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> "," ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ("," Expression)+ ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ComparisonOp Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison "=" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "for" Identifier "in" Expression ".." Expression Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block "else" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "return" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "while" "(" Expression ")" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary MulDivOp Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "(" Expression ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "Regex::compile" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "checkpoint" "(" Identifier ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "false" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "saga_step_start" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "true" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier "(" ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = Identifier "(" (*) ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Int ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) String ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor AddSubOp Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "!" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "-" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"!"` we can reduce to a `ArgumentList` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:174:5: 175:0: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     ArgumentList = (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> "," ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ("," Expression)+ ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ComparisonOp Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison "=" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "for" Identifier "in" Expression ".." Expression Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block "else" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "return" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "while" "(" Expression ")" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary MulDivOp Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "(" Expression ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "Regex::compile" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "checkpoint" "(" Identifier ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "false" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "saga_step_start" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "true" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier "(" ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = Identifier "(" (*) ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Int ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) String ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor AddSubOp Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "!" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "-" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"("` we can reduce to a `ArgumentList` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:174:5: 175:0: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     ArgumentList = (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> "," ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ("," Expression)+ ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ComparisonOp Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison "=" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "for" Identifier "in" Expression ".." Expression Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block "else" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "return" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "while" "(" Expression ")" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary MulDivOp Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "(" Expression ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "Regex::compile" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "checkpoint" "(" Identifier ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "false" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "saga_step_start" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "true" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier "(" ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = Identifier "(" (*) ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Int ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) String ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor AddSubOp Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "!" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "-" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"-"` we can reduce to a `ArgumentList` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:174:5: 175:0: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     ArgumentList = (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> "," ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ("," Expression)+ ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ComparisonOp Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison "=" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "for" Identifier "in" Expression ".." Expression Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block "else" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "return" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "while" "(" Expression ")" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary MulDivOp Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "(" Expression ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "Regex::compile" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "checkpoint" "(" Identifier ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "false" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "saga_step_start" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "true" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier "(" ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = Identifier "(" (*) ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Int ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) String ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor AddSubOp Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "!" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "-" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"Regex::compile"` we can reduce to a `ArgumentList` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:174:5: 175:0: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     ArgumentList = (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> "," ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ("," Expression)+ ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ComparisonOp Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison "=" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "for" Identifier "in" Expression ".." Expression Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block "else" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "return" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "while" "(" Expression ")" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary MulDivOp Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "(" Expression ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "Regex::compile" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "checkpoint" "(" Identifier ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "false" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "saga_step_start" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "true" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier "(" ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = Identifier "(" (*) ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Int ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) String ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor AddSubOp Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "!" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "-" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"checkpoint"` we can reduce to a `ArgumentList` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:174:5: 175:0: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     ArgumentList = (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> "," ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ("," Expression)+ ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ComparisonOp Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison "=" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "for" Identifier "in" Expression ".." Expression Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block "else" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "return" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "while" "(" Expression ")" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary MulDivOp Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "(" Expression ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "Regex::compile" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "checkpoint" "(" Identifier ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "false" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "saga_step_start" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "true" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier "(" ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = Identifier "(" (*) ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Int ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) String ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor AddSubOp Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "!" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "-" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"false"` we can reduce to a `ArgumentList` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:174:5: 175:0: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     ArgumentList = (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> "," ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ("," Expression)+ ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ComparisonOp Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison "=" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "for" Identifier "in" Expression ".." Expression Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block "else" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "return" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "while" "(" Expression ")" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary MulDivOp Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "(" Expression ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "Regex::compile" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "checkpoint" "(" Identifier ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "false" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "saga_step_start" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "true" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier "(" ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = Identifier "(" (*) ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Int ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) String ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor AddSubOp Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "!" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "-" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"for"` we can reduce to a `ArgumentList` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:174:5: 175:0: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     ArgumentList = (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> "," ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ("," Expression)+ ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ComparisonOp Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison "=" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "for" Identifier "in" Expression ".." Expression Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block "else" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "return" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "while" "(" Expression ")" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary MulDivOp Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "(" Expression ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "Regex::compile" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "checkpoint" "(" Identifier ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "false" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "saga_step_start" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "true" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier "(" ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = Identifier "(" (*) ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Int ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) String ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor AddSubOp Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "!" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "-" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"if"` we can reduce to a `ArgumentList` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:174:5: 175:0: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     ArgumentList = (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> "," ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ("," Expression)+ ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ComparisonOp Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison "=" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "for" Identifier "in" Expression ".." Expression Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block "else" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "return" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "while" "(" Expression ")" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary MulDivOp Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "(" Expression ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "Regex::compile" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "checkpoint" "(" Identifier ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "false" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "saga_step_start" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "true" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier "(" ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = Identifier "(" (*) ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Int ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) String ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor AddSubOp Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "!" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "-" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"return"` we can reduce to a `ArgumentList` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:174:5: 175:0: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     ArgumentList = (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> "," ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ("," Expression)+ ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ComparisonOp Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison "=" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "for" Identifier "in" Expression ".." Expression Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block "else" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "return" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "while" "(" Expression ")" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary MulDivOp Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "(" Expression ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "Regex::compile" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "checkpoint" "(" Identifier ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "false" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "saga_step_start" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "true" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier "(" ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = Identifier "(" (*) ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Int ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) String ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor AddSubOp Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "!" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "-" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"saga_step_start"` we can reduce to a `ArgumentList` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:174:5: 175:0: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     ArgumentList = (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> "," ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ("," Expression)+ ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ComparisonOp Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison "=" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "for" Identifier "in" Expression ".." Expression Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block "else" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "return" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "while" "(" Expression ")" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary MulDivOp Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "(" Expression ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "Regex::compile" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "checkpoint" "(" Identifier ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "false" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "saga_step_start" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "true" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier "(" ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = Identifier "(" (*) ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Int ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) String ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor AddSubOp Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "!" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "-" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"true"` we can reduce to a `ArgumentList` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:174:5: 175:0: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     ArgumentList = (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> "," ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ("," Expression)+ ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ComparisonOp Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison "=" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "for" Identifier "in" Expression ".." Expression Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block "else" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "return" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "while" "(" Expression ")" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary MulDivOp Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "(" Expression ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "Regex::compile" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "checkpoint" "(" Identifier ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "false" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "saga_step_start" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "true" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier "(" ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = Identifier "(" (*) ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Int ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) String ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor AddSubOp Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "!" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "-" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"while"` we can reduce to a `ArgumentList` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:174:5: 175:0: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     ArgumentList = (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> "," ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ("," Expression)+ ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ComparisonOp Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison "=" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "for" Identifier "in" Expression ".." Expression Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block "else" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "return" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "while" "(" Expression ")" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary MulDivOp Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "(" Expression ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "Regex::compile" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "checkpoint" "(" Identifier ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "false" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "saga_step_start" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "true" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier "(" ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = Identifier "(" (*) ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Int ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) String ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor AddSubOp Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "!" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "-" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"{"` we can reduce to a `ArgumentList` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:174:5: 175:0: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     ArgumentList = (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> "," ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ("," Expression)+ ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ComparisonOp Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison "=" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "for" Identifier "in" Expression ".." Expression Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block "else" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "return" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "while" "(" Expression ")" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary MulDivOp Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "(" Expression ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "Regex::compile" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "checkpoint" "(" Identifier ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "false" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "saga_step_start" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "true" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier "(" ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = Identifier "(" (*) ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Int ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) String ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor AddSubOp Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "!" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "-" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `Identifier` we can reduce to a `ArgumentList` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:174:5: 175:0: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     ArgumentList = (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> "," ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ("," Expression)+ ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ComparisonOp Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison "=" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "for" Identifier "in" Expression ".." Expression Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block "else" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "return" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "while" "(" Expression ")" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary MulDivOp Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "(" Expression ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "Regex::compile" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "checkpoint" "(" Identifier ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "false" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "saga_step_start" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "true" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier "(" ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = Identifier "(" (*) ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Int ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) String ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor AddSubOp Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "!" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "-" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `Int` we can reduce to a `ArgumentList` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:174:5: 175:0: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     ArgumentList = (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = (*) Comma<Expression> "," ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ Expression "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" Statement+ "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Block = (*) "{" "}" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comma<Expression> = (*) Expression ("," Expression)+ ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Comparison = (*) Term ComparisonOp Term ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) Comparison "=" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "for" Identifier "in" Expression ".." Expression Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "if" "(" Expression ")" Block "else" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "return" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = (*) "while" "(" Expression ")" Expression ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Factor = (*) Unary MulDivOp Unary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "(" Expression ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "Regex::compile" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "checkpoint" "(" Identifier ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "false" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "saga_step_start" "(" String ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) "true" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Identifier "(" ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = Identifier "(" (*) ArgumentList ")" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) Int ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Primary = (*) String ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Term = (*) Factor AddSubOp Factor ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "!" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Unary = (*) "-" Primary ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `String` we can reduce to a `ArgumentList` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:194:5: 195:0: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     OptionalType = (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     OptionalType = (*) ":" Type ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Statement = "let" Identifier (*) OptionalType "=" Expression ";" ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `":"` we can reduce to a `OptionalType` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:172:5: 172:41: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     ArgumentList = Comma<Expression> (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     ArgumentList = Comma<Expression> (*) "," ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `","` we can reduce to a `ArgumentList` but we can also shift
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:172:11: 172:27: Local ambiguity detected
[INFO] [stderr] 
[INFO] [stderr]     The problem arises after having observed the following symbols in the input:
[INFO] [stderr]       Expression
[INFO] [stderr]     At that point, if the next token is a `","`, then the parser can proceed in two different ways.
[INFO] [stderr] 
[INFO] [stderr]     First, the parser could execute the production at
[INFO] [stderr]     /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:172:11: 172:27, which would consume
[INFO] [stderr]     the top 1 token(s) from the stack and produce a `Comma<Expression>`. This might then yield a
[INFO] [stderr]     parse tree like
[INFO] [stderr]       Expression          ╷ ","
[INFO] [stderr]       ├─Comma<Expression>─┘   │
[INFO] [stderr]       └─ArgumentList──────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, the parser could shift the `","` token and later use it to construct a
[INFO] [stderr]     `("," Expression)+`. This might then yield a parse tree like
[INFO] [stderr]       Expression ","        Expression
[INFO] [stderr]       │          └─("," Expression)+─┤
[INFO] [stderr]       └─Comma<Expression>────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Hint: It appears you could resolve this problem by adding the annotation `#[inline]` to the
[INFO] [stderr]     definition of `Comma<Expression>`. For more information, see the section on inlining in the
[INFO] [stderr]     LALRPOP manual.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:172:11: 172:27: Local ambiguity detected
[INFO] [stderr] 
[INFO] [stderr]     The problem arises after having observed the following symbols in the input:
[INFO] [stderr]       Expression ("," Expression)+
[INFO] [stderr]     At that point, if the next token is a `","`, then the parser can proceed in two different ways.
[INFO] [stderr] 
[INFO] [stderr]     First, the parser could execute the production at
[INFO] [stderr]     /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:172:11: 172:27, which would consume
[INFO] [stderr]     the top 2 token(s) from the stack and produce a `Comma<Expression>`. This might then yield a
[INFO] [stderr]     parse tree like
[INFO] [stderr]       Expression ("," Expression)+ ","
[INFO] [stderr]       ├─Comma<Expression>────────┘   │
[INFO] [stderr]       └─ArgumentList─────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Alternatively, the parser could shift the `","` token and later use it to construct a
[INFO] [stderr]     `("," Expression)+`. This might then yield a parse tree like
[INFO] [stderr]       Expression ("," Expression)+ "," Expression
[INFO] [stderr]       │          └─("," Expression)+────────────┤
[INFO] [stderr]       └─Comma<Expression>───────────────────────┘
[INFO] [stderr] 
[INFO] [stderr]     Hint: It appears you could resolve this problem by adding the annotation `#[inline]` to the
[INFO] [stderr]     definition of `Comma<Expression>`. For more information, see the section on inlining in the
[INFO] [stderr]     LALRPOP manual.
[INFO] [stderr] 
[INFO] [stderr]   /opt/rustwide/workdir/veritas_compiler/src/veritas.lalrpop:90:5: 90:129: Conflict detected
[INFO] [stderr] 
[INFO] [stderr]       when in this state:
[INFO] [stderr]     Expression = "if" "(" Expression ")" Block (*) ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr]     Expression = "if" "(" Expression ")" Block (*) "else" Block ["!", "!=", "(", ")", "*", "+", ",", "-", "->", "..", "/", ":", ";", "<", "<=", "=", "==", ">", ">=", "@checkpointable", "Bool", "Int", "List", "Regex", "Regex::compile", "Result", "String", "Unit", "and", "checkpoint", "else", "false", "fn", "for", "if", "in", "let", "or", "return", "saga_step_start", "struct", "true", "while", "{", "}", Identifier, Int, String, Eof]
[INFO] [stderr] 
[INFO] [stderr]     and looking at a token `"else"` we can reduce to a `Expression` but we can also shift
[INFO] [stderr] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "b32165ab88a3d9e3ee1fefbc46d36c7fe85c7df025ca9f181e834d3f2fba7c73", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b32165ab88a3d9e3ee1fefbc46d36c7fe85c7df025ca9f181e834d3f2fba7c73", kill_on_drop: false }`
[INFO] [stdout] b32165ab88a3d9e3ee1fefbc46d36c7fe85c7df025ca9f181e834d3f2fba7c73
