diff --git a/Makefile b/Makefile index bd44e23..7accdf2 100644 --- a/Makefile +++ b/Makefile @@ -45,6 +45,7 @@ SERIAL_SOURCES := \ src/crosscheck/yang_zhang_witness.c \ src/solver/byte_support_table.c \ src/solver/failed_leaf_trace.c \ + src/solver/solver_event_trace.c \ src/solver/solver_serial.c \ src/verify/verify_tiling.c \ src/io/json.c \ diff --git a/README.md b/README.md index 2657bf2..e3c0989 100644 --- a/README.md +++ b/README.md @@ -74,6 +74,8 @@ solving remains future work. | Square-to-hex presentation port | Implemented as a pure in-memory Basire/Culik mapping with a raster-independent checker; no hex solver, schema, or core model | | Static explainability snapshots | Implemented for parsed formula, canonical tile sheet, and unassigned region, with hash-bound JSON contracts and square/hex diagnostic views | | Reduction construction provenance | Implemented as a separate opt-in native-owned result with exact signal orders, swap-bound gadget spans, manifest v2, and a square overlay view; the compact standard ABI does not allocate it | +| Native solver event trace | Implemented as separate opt-in reference/optimized entry points with bounded observed events, full initial state, checkpoints, manifest v3, independent offline replay, and deterministic PNG/GIF views | +| Reproducible Z3 summaries | Implemented for fixed seed/thread settings and explicit Boolean/Wang encoding order, result/model, and stable project-owned counts; no internal Z3 trace claim | | Native C JSON layer | Not implemented; `src/io/json.c` is a placeholder | | `TaskPlan` and native OpenMP solver | Not implemented; only the build scaffold exists | @@ -107,17 +109,19 @@ The implemented paths are: | | | v native reference/ Wang Z3 - optimized solver | - | v - v Python tiling checker - native verifier - | - copied tiling + Python checker - | - v - wang-solution-v1 --> square PNG (default/explain) - \ - +--> pure hex port/check --> hex PNG (--hex) + optimized solver | \ + | | | +--> encoding-order summary + | +--> observed trace +--> PNG/GIF + | | v + v | Python tiling checker + native verifier v + | offline replay --> PNG/GIF + copied tiling + Python checker + | + v + wang-solution-v1 --> square PNG (default/explain) + \ + +--> pure hex port/check --> hex PNG (--hex) ``` The witness bridge relates exact Boolean assignments to the variable cells of @@ -153,11 +157,11 @@ diagram. Planned work remains separated into independently reviewed changes. The new priority is explainability across the deterministic pipeline: -1. define bounded, deterministic event traces for native DFS and explicit - encoding summaries for Z3, then render partial states by replay; -2. publish a compact formula-to-final-image gallery and optional technical +1. publish a compact formula-to-final-image gallery and optional technical report from versioned examples; -3. resume serial MRV and hard-UNSAT evidence before `TaskPlan` and OpenMP work. +2. resume serial MRV and hard-UNSAT evidence; +3. define `TaskPlan` only after the serial evidence, then implement and measure + real OpenMP execution. The implementation follows a deliberately small design rule: each datum has one owner, derived state is computed when needed, and future metadata is not added to @@ -180,7 +184,7 @@ make check The imported renderer remains a separate locked Python project. Its Pillow and NumPy dependencies are not installed by the root project or exercised by -`make check`. Run its 238-test combined suite independently: +`make check`. Run its 253-test combined suite independently: ```sh cd renderer @@ -220,6 +224,28 @@ opt-in final explainability views. The [reduction explanation contract](docs/wang_reduction_explanation.md) defines native signal/gadget provenance, manifest v2, ownership, replay invariants, and the square-only construction overlay. +The [solver event trace contract](docs/wang_solver_trace.md) defines bounded +native capture, manifest v3, semantic replay, checkpoints, truncation, and the +presentation-only animation boundary. + +To export one observed reference run and render selected replay states: + +```sh +make shared +uv run python tools/export_solver_trace.py \ + tests/instances/pipeline_sat.cm13 build/solver-trace/manifest.json \ + --event-capacity 4096 --checkpoint-interval 128 --checkpoint-capacity 32 +cd renderer +uv run --locked python wang_trace_render.py \ + ../build/solver-trace/manifest.json ../build/solver-trace/rendered +``` + +The fixed-configuration Boolean and Wang Z3 summaries are exported separately: + +```sh +uv run python tools/export_z3_encoding_summaries.py \ + tests/instances/pipeline_sat.cm13 build/z3-summaries +``` Useful individual targets: diff --git a/docs/assets/images/builder-routing/contact-sheet.png b/docs/assets/images/builder-routing/contact-sheet.png new file mode 100644 index 0000000..9d94383 Binary files /dev/null and b/docs/assets/images/builder-routing/contact-sheet.png differ diff --git a/docs/assets/images/builder-routing/frame-00.png b/docs/assets/images/builder-routing/frame-00.png new file mode 100644 index 0000000..03af137 Binary files /dev/null and b/docs/assets/images/builder-routing/frame-00.png differ diff --git a/docs/assets/images/builder-routing/frame-01.png b/docs/assets/images/builder-routing/frame-01.png new file mode 100644 index 0000000..a220f8c Binary files /dev/null and b/docs/assets/images/builder-routing/frame-01.png differ diff --git a/docs/assets/images/builder-routing/frame-02.png b/docs/assets/images/builder-routing/frame-02.png new file mode 100644 index 0000000..3b599b7 Binary files /dev/null and b/docs/assets/images/builder-routing/frame-02.png differ diff --git a/docs/assets/images/builder-routing/frame-03.png b/docs/assets/images/builder-routing/frame-03.png new file mode 100644 index 0000000..b0e1ba5 Binary files /dev/null and b/docs/assets/images/builder-routing/frame-03.png differ diff --git a/docs/assets/images/builder-routing/frame-04.png b/docs/assets/images/builder-routing/frame-04.png new file mode 100644 index 0000000..87a6656 Binary files /dev/null and b/docs/assets/images/builder-routing/frame-04.png differ diff --git a/docs/assets/images/builder-routing/frame-05.png b/docs/assets/images/builder-routing/frame-05.png new file mode 100644 index 0000000..ddd6eed Binary files /dev/null and b/docs/assets/images/builder-routing/frame-05.png differ diff --git a/docs/assets/images/builder-routing/trace.gif b/docs/assets/images/builder-routing/trace.gif new file mode 100644 index 0000000..5f3067a Binary files /dev/null and b/docs/assets/images/builder-routing/trace.gif differ diff --git a/docs/assets/images/optimized-mechanisms/contact-sheet.png b/docs/assets/images/optimized-mechanisms/contact-sheet.png new file mode 100644 index 0000000..9bf0212 Binary files /dev/null and b/docs/assets/images/optimized-mechanisms/contact-sheet.png differ diff --git a/docs/assets/images/optimized-mechanisms/frame-00.png b/docs/assets/images/optimized-mechanisms/frame-00.png new file mode 100644 index 0000000..016ce02 Binary files /dev/null and b/docs/assets/images/optimized-mechanisms/frame-00.png differ diff --git a/docs/assets/images/optimized-mechanisms/frame-01.png b/docs/assets/images/optimized-mechanisms/frame-01.png new file mode 100644 index 0000000..c651553 Binary files /dev/null and b/docs/assets/images/optimized-mechanisms/frame-01.png differ diff --git a/docs/assets/images/optimized-mechanisms/frame-02.png b/docs/assets/images/optimized-mechanisms/frame-02.png new file mode 100644 index 0000000..6aa6b84 Binary files /dev/null and b/docs/assets/images/optimized-mechanisms/frame-02.png differ diff --git a/docs/assets/images/optimized-mechanisms/frame-03.png b/docs/assets/images/optimized-mechanisms/frame-03.png new file mode 100644 index 0000000..b5d66f8 Binary files /dev/null and b/docs/assets/images/optimized-mechanisms/frame-03.png differ diff --git a/docs/assets/images/optimized-mechanisms/frame-04.png b/docs/assets/images/optimized-mechanisms/frame-04.png new file mode 100644 index 0000000..325bd02 Binary files /dev/null and b/docs/assets/images/optimized-mechanisms/frame-04.png differ diff --git a/docs/assets/images/optimized-mechanisms/frame-05.png b/docs/assets/images/optimized-mechanisms/frame-05.png new file mode 100644 index 0000000..32bb622 Binary files /dev/null and b/docs/assets/images/optimized-mechanisms/frame-05.png differ diff --git a/docs/assets/images/optimized-mechanisms/trace.gif b/docs/assets/images/optimized-mechanisms/trace.gif new file mode 100644 index 0000000..18f0064 Binary files /dev/null and b/docs/assets/images/optimized-mechanisms/trace.gif differ diff --git a/docs/assets/images/solver-trace/contact-sheet.png b/docs/assets/images/solver-trace/contact-sheet.png new file mode 100644 index 0000000..ba28522 Binary files /dev/null and b/docs/assets/images/solver-trace/contact-sheet.png differ diff --git a/docs/assets/images/solver-trace/frame-000000.png b/docs/assets/images/solver-trace/frame-000000.png new file mode 100644 index 0000000..168a769 Binary files /dev/null and b/docs/assets/images/solver-trace/frame-000000.png differ diff --git a/docs/assets/images/solver-trace/frame-000413.png b/docs/assets/images/solver-trace/frame-000413.png new file mode 100644 index 0000000..f3158e3 Binary files /dev/null and b/docs/assets/images/solver-trace/frame-000413.png differ diff --git a/docs/assets/images/solver-trace/frame-000827.png b/docs/assets/images/solver-trace/frame-000827.png new file mode 100644 index 0000000..6e359e2 Binary files /dev/null and b/docs/assets/images/solver-trace/frame-000827.png differ diff --git a/docs/assets/images/solver-trace/frame-001240.png b/docs/assets/images/solver-trace/frame-001240.png new file mode 100644 index 0000000..26fb825 Binary files /dev/null and b/docs/assets/images/solver-trace/frame-001240.png differ diff --git a/docs/assets/images/solver-trace/frame-001654.png b/docs/assets/images/solver-trace/frame-001654.png new file mode 100644 index 0000000..9322ced Binary files /dev/null and b/docs/assets/images/solver-trace/frame-001654.png differ diff --git a/docs/assets/images/solver-trace/frame-002516.png b/docs/assets/images/solver-trace/frame-002516.png new file mode 100644 index 0000000..2332a77 Binary files /dev/null and b/docs/assets/images/solver-trace/frame-002516.png differ diff --git a/docs/assets/images/solver-trace/frame-002517.png b/docs/assets/images/solver-trace/frame-002517.png new file mode 100644 index 0000000..390d885 Binary files /dev/null and b/docs/assets/images/solver-trace/frame-002517.png differ diff --git a/docs/assets/images/solver-trace/frame-002895.png b/docs/assets/images/solver-trace/frame-002895.png new file mode 100644 index 0000000..5e1adb3 Binary files /dev/null and b/docs/assets/images/solver-trace/frame-002895.png differ diff --git a/docs/assets/images/solver-trace/trace.gif b/docs/assets/images/solver-trace/trace.gif new file mode 100644 index 0000000..e48e51d Binary files /dev/null and b/docs/assets/images/solver-trace/trace.gif differ diff --git a/docs/assets/images/square-to-hex/contact-sheet.png b/docs/assets/images/square-to-hex/contact-sheet.png new file mode 100644 index 0000000..9d37d82 Binary files /dev/null and b/docs/assets/images/square-to-hex/contact-sheet.png differ diff --git a/docs/assets/images/square-to-hex/frame-00.png b/docs/assets/images/square-to-hex/frame-00.png new file mode 100644 index 0000000..e211ed0 Binary files /dev/null and b/docs/assets/images/square-to-hex/frame-00.png differ diff --git a/docs/assets/images/square-to-hex/frame-01.png b/docs/assets/images/square-to-hex/frame-01.png new file mode 100644 index 0000000..41d7ef9 Binary files /dev/null and b/docs/assets/images/square-to-hex/frame-01.png differ diff --git a/docs/assets/images/square-to-hex/frame-02.png b/docs/assets/images/square-to-hex/frame-02.png new file mode 100644 index 0000000..b544431 Binary files /dev/null and b/docs/assets/images/square-to-hex/frame-02.png differ diff --git a/docs/assets/images/square-to-hex/frame-03.png b/docs/assets/images/square-to-hex/frame-03.png new file mode 100644 index 0000000..a0df31b Binary files /dev/null and b/docs/assets/images/square-to-hex/frame-03.png differ diff --git a/docs/assets/images/square-to-hex/trace.gif b/docs/assets/images/square-to-hex/trace.gif new file mode 100644 index 0000000..f8f054d Binary files /dev/null and b/docs/assets/images/square-to-hex/trace.gif differ diff --git a/docs/assets/images/z3-encoding/contact-sheet.png b/docs/assets/images/z3-encoding/contact-sheet.png new file mode 100644 index 0000000..6120144 Binary files /dev/null and b/docs/assets/images/z3-encoding/contact-sheet.png differ diff --git a/docs/assets/images/z3-encoding/frame-00.png b/docs/assets/images/z3-encoding/frame-00.png new file mode 100644 index 0000000..4b29829 Binary files /dev/null and b/docs/assets/images/z3-encoding/frame-00.png differ diff --git a/docs/assets/images/z3-encoding/frame-01.png b/docs/assets/images/z3-encoding/frame-01.png new file mode 100644 index 0000000..4c0bfff Binary files /dev/null and b/docs/assets/images/z3-encoding/frame-01.png differ diff --git a/docs/assets/images/z3-encoding/frame-02.png b/docs/assets/images/z3-encoding/frame-02.png new file mode 100644 index 0000000..f40853a Binary files /dev/null and b/docs/assets/images/z3-encoding/frame-02.png differ diff --git a/docs/assets/images/z3-encoding/frame-03.png b/docs/assets/images/z3-encoding/frame-03.png new file mode 100644 index 0000000..4767769 Binary files /dev/null and b/docs/assets/images/z3-encoding/frame-03.png differ diff --git a/docs/assets/images/z3-encoding/frame-04.png b/docs/assets/images/z3-encoding/frame-04.png new file mode 100644 index 0000000..6f5b4e8 Binary files /dev/null and b/docs/assets/images/z3-encoding/frame-04.png differ diff --git a/docs/assets/images/z3-encoding/trace.gif b/docs/assets/images/z3-encoding/trace.gif new file mode 100644 index 0000000..636449a Binary files /dev/null and b/docs/assets/images/z3-encoding/trace.gif differ diff --git a/docs/development_principles.md b/docs/development_principles.md index 5b6d419..ada185e 100644 --- a/docs/development_principles.md +++ b/docs/development_principles.md @@ -6,7 +6,7 @@ description: How Tiling Foundry separates source data, derived state, native lif section: Architecture and correctness document_kind: Architecture reference status: Current implementation -updated: 2026-08-25 +updated: 2026-08-27 nav_order: 10 --- @@ -88,16 +88,19 @@ A module is implemented when it has: | `region` | Active cells and exposed boundary constraints | Solver domains and scheduling | | `yang_zhang` | Reduction construction, transferred swap trace, and immutable signal/gadget provenance | Solver state and presentation metadata | | `solver` | Domains, trail, assignments, and search state | Formula and reduction semantics | +| `solver_trace` | Opt-in bounded semantic events, full initial state, checkpoints, and their owned lifetime | Solving policy, raster composition, and Z3 internals | | `verify` | Stateless validation of a candidate tiling | Search logic and solver caches | | `crosscheck` | Stateless Boolean/Wang witness translation over a live reduction | Generic solver internals, clause validity, and copied swap data | | `task_plan` | Future derived scheduling data | `Region` or serial-solver ownership | -| `python/model` | Pure immutable formula, region, tiling, and reduction-explanation contracts | I/O, ctypes, Z3, and native ownership | -| `python/native` | C ABI adaptation, scoped native lifetimes, and complete copy-out | Solver logic and escaping native pointers | +| `python/model` | Pure immutable formula, region, tiling, reduction-explanation, and solver-trace contracts | I/O, ctypes, Z3, and native ownership | +| `python/native` | C ABI adaptation, scoped native lifetimes, and complete result/trace copy-out | Solver logic and escaping native pointers | | `python/crosscheck` | Scoped composition of adapters, Z3, and independent checkers | Persistent native state and duplicated reduction semantics | | `python/oracles` | Independent solvers and checkers over pure models | Parsing, filesystem I/O, and reduction construction | -| `python/formats` | Solution, static-stage, and reduction-provenance validation and deterministic export | Native lifetimes, solving, and presentation | +| `python/formats` | Solution, static-stage, reduction-provenance, observed-trace, and Z3 encoding-summary validation/export | Native lifetimes, solving, and presentation | | `renderer/wang_hex_port.py` | Pure square-to-hex mapping, inverse checks, and matching-equivalence checks | Raster geometry, semantic verification, and solver access | | `renderer/wang_snapshot.py` | Strict hash-bound formula, tile-sheet, region, and recorded reduction-provenance views | Native access, solving, and geometry reconstruction | +| `renderer/wang_trace.py` | Strict hash-bound trace loading and independent ordered-delta replay | Native access, frame composition, and solving | +| `renderer/wang_animation.py` | Deterministic atomic PNG, contact-sheet, and GIF encoding from already composed frames | State reconstruction and correctness claims | | `renderer/wang_square.py` | One CLI for solution and static views, with square/default or hex/explicit rasterization | Semantic verification and solver access | `include/wang/task_plan.h`, `src/parallel/solver_openmp.c`, and the two modules @@ -107,10 +110,10 @@ the implemented solution contract and exporter are Python modules under ### Native and Python ownership flow -The C parser and Yang–Zhang builder own native allocations. The adapters copy -complete values into immutable Python `Formula`, `Region`, -`ReductionExplanation`, tileset, and tiling models. No ctypes pointer reaches -those models or their consumers. +The C parser, Yang–Zhang builder, and opt-in traced solver calls own native +allocations. The adapters copy complete values into immutable Python `Formula`, +`Region`, `ReductionExplanation`, solver trace, tileset, and tiling models. No +ctypes pointer reaches those models or their consumers. ```text C parser + Yang–Zhang builder @@ -129,9 +132,9 @@ those models or their consumers. v v Python oracles checkers / exporter --> Wang renderer | \ - | +--> pure hex port/check + trace replay -+ +--> pure hex port/check v | - square PNG v + PNG/GIF views v hex PNG ``` @@ -154,6 +157,13 @@ reverse-marshalled into `Cm13Formula` or `Region`. and `native/solve_pipeline.py` supplies copied, independently checked native tilings to producers without importing Z3. +The trace coordinator similarly parses and reduces once, copies the ordinary +result plus every semantic event and checkpoint before native destruction, and +checks any SAT tiling independently. Its JSON producer reuses the existing +formula, tileset, region, reduction, and solution formats. The renderer performs +one offline replay and passes already composed frames to the shared image +encoder; it never reconstructs solver state from pixels. + ### Oracle and verifier contracts | Component | Input | Result | Independence boundary | @@ -168,6 +178,11 @@ For generic tilesets with duplicate edge tuples, Wang Z3 returns a valid positional ID from the constraint-equivalent entries. Its public contract does not choose one duplicate over another. +Both Z3 encoders fix `random_seed=0`, `threads=1`, and their explicit constraint +order. A closed summary records the locked Z3 version, result/model, and stable +project-owned encoding counts. Raw Z3 statistics and internal debug/search +order are deliberately outside the stable contract. + ### Witness correspondence boundary The witness bridge adds exact assignment extension and tiling extraction above diff --git a/docs/serial_solver_implementation_guide.md b/docs/serial_solver_implementation_guide.md index a645fcb..4c65724 100644 --- a/docs/serial_solver_implementation_guide.md +++ b/docs/serial_solver_implementation_guide.md @@ -6,7 +6,7 @@ description: Domain propagation, deterministic search, ownership, diagnostics, a section: Architecture and correctness document_kind: Technical reference status: Current implementation -updated: 2026-08-25 +updated: 2026-08-27 nav_order: 20 --- @@ -15,8 +15,17 @@ nav_order: 20 The native reference and optimized entry points share one Wang-search core and the same public status, ownership, diagnostic, and initial-domain contracts. This page describes that core, the independent verifier applied to every SAT -result, and the optional failed-leaf diagnostics. Public headers and regression -tests remain authoritative for exact ABI behavior. +result, the optional semantic event trace, and the optional failed-leaf +diagnostics. Public headers and regression tests remain authoritative for +exact ABI behavior. + +
+ + + Observed reference solver domains narrowing across root initialization, propagation, decisions, and the final SAT result. + +
Observed state. An offline consumer replays selected events from one complete 2,896-event reference run; skipped visual frames do not imply skipped solver events. The static contact sheet shows every rendered frame.
+
## 1. Scope and dependency boundary @@ -55,10 +64,12 @@ The relevant public boundaries are: | `wang/region.h` | Validated dense row-major geometry and exposed boundary colors | | `wang/verify.h` | Independent validation of a complete dense tiling | | `wang/solver.h` | Domains, options, statuses, result ownership, metrics, and both solve entry points | +| `wang/solver_trace.h` | Opt-in bounded semantic events, checkpoints, traced entry points, and trace ownership | The implementation lives primarily in `src/verify/verify_tiling.c`, `src/solver/solver_serial.c`, `src/solver/byte_support_table.c`, and -`src/solver/failed_leaf_trace.c`. It has no mutable global search state. +`src/solver/failed_leaf_trace.c`, and `src/solver/solver_event_trace.c`. It has +no mutable global search state. ## 2. Independent tiling verifier @@ -321,11 +332,12 @@ Only a `WANG_VERIFY_VALID` candidate is published. Rejection converts the internal result to `WANG_SOLVE_ERROR` because it exposes a solver defect rather than a valid UNSAT decision. -Trace finalization is the last fallible operation before publication. After it -succeeds, the reference path copies verified domains into a caller-owned -snapshot. The optimized path transfers its verified private domain buffer and -detaches it from private state. Any diagnostic best-leaf buffer accumulated -during a satisfiable run remains private and is freed. +Failed-leaf file finalization is the last fallible operation before ordinary +result publication. After it succeeds, the reference path copies verified +domains into a caller-owned snapshot. The optimized path transfers its +verified private domain buffer and detaches it from private state. Any +diagnostic best-leaf buffer accumulated during a satisfiable run remains +private and is freed. ## 8. UNSAT selection and snapshot policy @@ -366,9 +378,49 @@ Metrics-enabled runs are diagnostic work measurements, not timing samples. Elapsed time and process peak RSS are measured by the benchmark harness outside the solver result. -## 10. Binary failed-leaf trace - -### 10.1 Semantics and format +## 10. Opt-in semantic event trace + +`wang/solver_trace.h` adds traced reference and optimized entry points without +changing `WangSolverOptions`, `WangSolveResult`, or either ordinary entry +point. A caller supplies an event capacity of at least two and may additionally +request bounded full-state checkpoints. Every allocation is performed before +search begins. Disabled ordinary solving allocates no event or checkpoint +storage and publishes the same status, witness, metrics, and ownership as +before. + +The trace begins with the full dense domain state after root restriction and +then records stable semantic events in observed order: + +1. `root` publishes the initial replay base; +2. `domain_reduction` carries one exact old/new domain delta and its decision + or propagation reason; +3. `propagation` marks the end of an initial or search propagation interval; +4. `decision`, `conflict`, and `backtrack` expose DFS control points with depth + and trail change marks; +5. `result` terminates the run with `SAT` or `UNSAT`. + +The recorder preserves a prefix and always reserves the final slot for +`result`. If the prefix fills, `truncated` becomes true and the terminal +sequence number exposes the number of omitted observed events; missing deltas +are never invented. Checkpoints contain a full dense domain row after every +configured interval while their independent capacity lasts. The replay model +validates event shapes, monotone domain reductions, exact rollback marks, +checkpoint equality, terminal status, and the complete SAT state when the +trace is not truncated. + +`WangTracedSolveResult` jointly owns the ordinary result and trace storage. +Publication is transactional: invalid options, allocation failure, internal +recording failure, or rejected SAT verification leave a conforming output +destroyed. The combined destructor is null-safe and idempotent. The JSON and +raster consumers live downstream in Python and `renderer/`; neither is part of +the solver, and the GIF is presentation rather than a correctness check. + +The closed transport is documented in the +[solver event trace contract]({{ '/wang-solver-trace/' | relative_url }}). + +## 11. Binary failed-leaf trace + +### 11.1 Semantics and format `WANG_SOLVE_TRACE_FAILED_LEAVES` writes every observed failed leaf up to `failed_leaf_capacity`. The trace may contain records even when the final @@ -404,7 +456,7 @@ record_size = align_up(raw_record_size, 8) The writer uses explicit offsets and byte helpers, so the file format does not depend on C struct padding or host `sizeof` results. -### 10.2 Writer lifecycle and failure cleanup +### 11.2 Writer lifecycle and failure cleanup Checked arithmetic establishes the maximum mapping size before file creation. The writer opens the path with `O_RDWR | O_CREAT | O_TRUNC`, expands it with @@ -427,7 +479,7 @@ impossible record bound marks the writer failed, returns an internal The writer is private to the serial solver module. It is not a general serialization API and has no shared-writer or multithreaded contract. -## 11. Error handling and lifetimes +## 12. Error handling and lifetimes Allocation sizes and dense products use checked arithmetic. Private state owns domains, neighbor masks, byte-support tables, trail storage, queue storage, @@ -441,7 +493,7 @@ keeps a conforming output destroyed on every error. Ownership transfer in the optimized SAT path occurs immediately before private cleanup, preventing both double frees and leaks on late failures. -## 12. Verification evidence +## 13. Verification evidence The verifier regressions cover null and length errors, invalid or incomplete tile IDs, inactive assignments, boundary mismatches in every direction, @@ -465,12 +517,19 @@ magic and version fields, record geometry, exact final size, truncation at capacity, readability after unmap/close, and unlinking after post-creation setup or finalization failure. +Semantic event-trace tests run the same SAT backtracking region through both +ordinary and traced reference/optimized calls. They require identical statuses, +witness bytes, and public metrics; deterministic event equality; independent +replay of all seven event kinds; bounded-prefix terminal publication; +checkpoint validation; root-conflict UNSAT; invalid-option rejection; and +idempotent cleanup. + Yang–Zhang integration includes shared SAT and UNSAT fixtures, the documented three-variable satisfying instance, a clause-row regression, and all 1,701 canonical formulas through three variables checked against the independent Boolean oracle. -## 13. Reproduction and profiling +## 14. Reproduction and profiling The standard local gates are: @@ -488,7 +547,7 @@ attribution. Dated reports in the [solver optimization section]({{ '/#solver-optimization' | relative_url }}) record the evidence for each retained optimized mechanism. -## 14. Current guarantees and limits +## 15. Current guarantees and limits The implementation returns distinct SAT, UNSAT, and ERROR statuses; verifies every SAT witness independently; returns dense domains for SAT and only for @@ -497,7 +556,7 @@ without that allocation; and removes trace output after post-creation setup or finalization failure. Private caches and optimized storage remain derived from domains, geometry, and `TILESET` rather than becoming new constraint sources. -The failed-leaf snapshot and trace are diagnostics, not formal UNSAT -certificates. The implemented paths are serial. `TaskPlan`, OpenMP execution, -clause learning, backjumping, persistent memoization, rendering, and JSON -export remain outside this solver contract. +The failed-leaf snapshot and both trace forms are diagnostics, not formal +UNSAT certificates. The implemented paths are serial. `TaskPlan`, OpenMP +execution, clause learning, backjumping, persistent memoization, rendering, +and JSON export remain outside this solver contract. diff --git a/docs/solver_byte_support_2026-08-20.md b/docs/solver_byte_support_2026-08-20.md index 75ee9c1..00f958e 100644 --- a/docs/solver_byte_support_2026-08-20.md +++ b/docs/solver_byte_support_2026-08-20.md @@ -6,12 +6,20 @@ description: Evidence for aggregating Wang propagation support by domain byte. section: Solver optimization document_kind: Benchmark report status: Accepted mechanism -updated: 2026-08-20 +updated: 2026-08-27 nav_order: 60 --- # Optimized solver byte-wise support tables — 20 August 2026 +
+ + + Didactic comparison of the reference solver baseline and the five retained optimized serial mechanisms. + +
Didactic replay. This shared animation locates byte-wise support aggregation among the five isolated mechanisms; the measurements below, not the animation, establish its effect. The static contact sheet shows all stages.
+
+ This report evaluates only the union of compatible neighbor tiles during propagation. The reference path retains the baseline loop over every set tile in the source domain. The optimized path splits the 23-bit domain into three diff --git a/docs/solver_dynamic_stack_2026-08-17.md b/docs/solver_dynamic_stack_2026-08-17.md index 807d49a..f033135 100644 --- a/docs/solver_dynamic_stack_2026-08-17.md +++ b/docs/solver_dynamic_stack_2026-08-17.md @@ -6,12 +6,20 @@ description: Evidence for the optimized solver's geometrically growing DFS stack section: Solver optimization document_kind: Benchmark report status: Accepted mechanism -updated: 2026-08-17 +updated: 2026-08-27 nav_order: 30 --- # Optimized solver dynamic DFS stack — 17 August 2026 +
+ + + Didactic comparison of the reference solver baseline and the five retained optimized serial mechanisms. + +
Didactic replay. This shared animation locates the dynamic stack among the five isolated mechanisms; the measurements below, not the animation, establish its effect. The static contact sheet shows all stages.
+
+ This report evaluates only DFS stack storage. The reference path still allocates one `SearchFrame` per active cell. The optimized path starts with at most 16 frames, doubles geometrically, and clamps its final growth to the diff --git a/docs/solver_initial_trail_2026-08-17.md b/docs/solver_initial_trail_2026-08-17.md index d228c03..558b806 100644 --- a/docs/solver_initial_trail_2026-08-17.md +++ b/docs/solver_initial_trail_2026-08-17.md @@ -6,12 +6,20 @@ description: Evidence for omitting rollback entries during non-rollbackable init section: Solver optimization document_kind: Benchmark report status: Accepted mechanism -updated: 2026-08-17 +updated: 2026-08-27 nav_order: 40 --- # Optimized solver initial-trail removal — 17 August 2026 +
+ + + Didactic comparison of the reference solver baseline and the five retained optimized serial mechanisms. + +
Didactic replay. This shared animation locates initial-trail omission among the five isolated mechanisms; the measurements below, not the animation, establish its effect. The static contact sheet shows all stages.
+
+ This report evaluates undo-trail recording during initial propagation. The reference path keeps the baseline behavior. The optimized path applies the same domain reductions but does not store their old values, because no diff --git a/docs/solver_queue_dedup_2026-08-20.md b/docs/solver_queue_dedup_2026-08-20.md index cbcde6b..13c9a90 100644 --- a/docs/solver_queue_dedup_2026-08-20.md +++ b/docs/solver_queue_dedup_2026-08-20.md @@ -6,12 +6,20 @@ description: Evidence for the optimized solver's packed pending-cell index. section: Solver optimization document_kind: Benchmark report status: Accepted mechanism -updated: 2026-08-20 +updated: 2026-08-27 nav_order: 80 --- # Optimized solver queue deduplication — 20 August 2026 +
+ + + Didactic comparison of the reference solver baseline and the five retained optimized serial mechanisms. + +
Didactic replay. This shared animation locates queue deduplication among the five isolated mechanisms; the measurements below, not the animation, establish its effect. The static contact sheet shows all stages.
+
+ This accepted mechanism changes only the optimized propagation queue. An enqueue request for a cell that already has an unconsumed FIFO occurrence is counted but no longer appended. The reference path retains the original duplicate-accepting diff --git a/docs/solver_sat_ownership_2026-08-20.md b/docs/solver_sat_ownership_2026-08-20.md index b4d9bdc..cb84837 100644 --- a/docs/solver_sat_ownership_2026-08-20.md +++ b/docs/solver_sat_ownership_2026-08-20.md @@ -6,12 +6,20 @@ description: Evidence for transferring the verified SAT domain buffer without a section: Solver optimization document_kind: Benchmark report status: Accepted mechanism -updated: 2026-08-20 +updated: 2026-08-27 nav_order: 50 --- # Optimized solver SAT ownership transfer — 20 August 2026 +
+ + + Didactic comparison of the reference solver baseline and the five retained optimized serial mechanisms. + +
Didactic replay. This shared animation locates SAT ownership transfer among the five isolated mechanisms; the measurements below, not the animation, establish its effect. The static contact sheet shows all stages.
+
+ This report evaluates only construction of a successful solver result. The reference path retains the baseline behavior: after independent SAT verification it ensures that a separate dense snapshot exists, allocating it diff --git a/docs/wang_solver_trace.md b/docs/wang_solver_trace.md new file mode 100644 index 0000000..5d9fd7c --- /dev/null +++ b/docs/wang_solver_trace.md @@ -0,0 +1,163 @@ +--- +layout: page +title: Native solver event trace and offline replay +permalink: /wang-solver-trace/ +description: Bounded semantic events, full-state checkpoints, hash-bound transport, and presentation-only replay for native Wang solves. +section: Architecture and correctness +document_kind: Data and rendering contract +status: Current implementation +updated: 2026-08-27 +nav_order: 34 +--- + +# Native solver event trace and offline replay + +The reference and optimized native solvers can emit an opt-in sequence of +semantic search events. The sequence records what the selected solver path +actually observed; it is not a reconstructed lesson, a profiler sample, or a +claim about a different engine. Ordinary solve calls retain their original ABI +and allocate no provenance storage. + +
+ + + Observed reference solver domains narrowing from the initial state through propagation and decisions to a verified SAT result. + +
Observed state. These frames are selected from one complete 2,896-event reference trace. The renderer replays the versioned deltas once; frame selection does not change their order. The static contact sheet shows all selected states.
+
+ +## Native boundary and ownership + +`wang/solver_trace.h` defines separate +`wang_solve_serial_traced()` and `wang_solve_optimized_traced()` entry points. +They call the same exact solver core and mechanism policies as the ordinary +entry points. The caller supplies `WangSolveTraceOptions` and a destroyed +`WangTracedSolveResult`; the combined result owns both the ordinary solve +result and the trace allocations. + +The recorder allocates the initial dense state, bounded event array, and any +bounded checkpoint rows before search. An event capacity of at least two +reserves both the root and terminal result. Checkpoints are disabled as +`0/0`; otherwise interval and capacity must both be positive. Validation or +allocation failure transfers nothing. The combined destructor releases every +owned array, resets the structure, accepts null, and is idempotent. + +No trace option or field is added to `WangSolverOptions` or `WangSolveResult`. +The ordinary reference and optimized calls therefore preserve their status, +dense witness, metrics, and ownership contracts without allocating trace +state. + +### Disabled-path profile control + +A deterministic Cachegrind control compared the same metrics-enabled 4-by-4 +backtracking smoke against merge base `8616e31`, using GCC 14.2, portable +`-O2`, and trace-disabled ordinary entry points. Search work and every public +metric are exactly equal. The reference executable moved from 487,161 to +490,563 instructions (+0.70%) and from 101,091 to 101,706 data references +(+0.61%); optimized moved from 388,660 to 390,553 instructions (+0.49%) and +from 116,401 to 116,766 data references (+0.31%). Cache-miss rates and hotspot +order remain unchanged. The small dispatch cost is below one percent on this +control and creates no allocation or new search work; it is recorded rather +than presented as an exact zero-overhead claim. + +This is one instruction-profile control, not a timing benchmark or a universal +performance bound. The full Cachegrind gate also covers the traced entry points +and the complete native test suite. + +## Event semantics + +The immutable root state is the dense domain array after root restrictions and +before arc propagation. Ordered events then carry only stable semantic facts: + +| Kind | Meaning | +| --- | --- | +| `root` | Establish the full replay base in the initial phase | +| `domain_reduction` | Replace one exact old domain with a strict subset, caused by decision or propagation | +| `propagation` | Mark the end of an initial or search propagation interval | +| `decision` | Record the chosen cell and singleton candidate before its delta | +| `conflict` | Identify an observed empty active-cell domain | +| `backtrack` | Restore the ordered delta stack to an exact change mark | +| `result` | Publish the terminal `sat` or `unsat` status | + +Every event has a complete-run sequence number, DFS depth, and change mark; +fields that do not apply are null in JSON. Domains remain canonical 23-bit +tile masks. The event order is deterministic for a fixed solver path and +input, but reference and optimized traces are not required to be byte-equal to +one another. + +When capacity is exhausted, the recorder freezes the contiguous prefix and +retains the reserved terminal result. Its sequence number reveals the omitted +event count and `truncated` is true. The state after the gap is intentionally +unknown: replay returns the last reconstructable prefix state for the terminal +frame and never invents the missing deltas. + +## Checkpoints and independent replay + +Each checkpoint contains the full dense state and change mark immediately +after its configured event interval. Checkpoint capacity is independent from +event capacity; `checkpoints_truncated` reports exhaustion. They provide +bounded random-access anchors and, more importantly, independent replay +assertions. + +The immutable Python model and the isolated renderer each validate the event +grammar and replay the same semantic deltas without calling either solver. +They reject widening or no-op reductions, an incorrect old domain, invalid +cell indices, impossible rollback marks, mismatched checkpoint state, a +misplaced terminal event, and a complete SAT state that disagrees with the +hash-bound solution. This is validation of recorded consistency, not a second +proof that the source decision is correct; native and Python tiling checkers +retain that responsibility. + +## Closed transport and identity + +`wang-solver-trace-v1` is a closed square, row-major document with +`semantics: observed`. It records the solver name, terminal status, formula, +region and optional solution digests, layout, capacity metadata, full initial +domains, events, and checkpoints. + +`wang-explain-manifest-v3` binds that trace to the existing versioned formula, +tileset, region, reduction-provenance, and optional solution artifacts through +their exact schemas, basenames, and SHA-256 digests. The manifest is installed +atomically only after all content-addressed artifacts. A SAT trace requires a +solution reference; an UNSAT trace forbids one. + +The committed example under `tests/fixtures/pipeline_sat_solver_trace/` comes +from the reference solver on `tests/instances/pipeline_sat.cm13`. It is a +complete 2,896-event run with an event capacity of 4,096 and 22 checkpoints at +interval 128. It records 451 dense positions, 444 of them active. + +## Reproduction and presentation + +Build the shared library and export one observed run: + +```sh +make shared +uv run python tools/export_solver_trace.py \ + tests/instances/pipeline_sat.cm13 \ + build/solver-trace/manifest.json \ + --solver reference \ + --event-capacity 4096 \ + --checkpoint-interval 128 \ + --checkpoint-capacity 32 +``` + +The isolated renderer consumes only the manifest and its JSON artifacts: + +```sh +cd renderer +uv run --locked python wang_trace_render.py \ + ../build/solver-trace/manifest.json \ + ../build/solver-trace/rendered +``` + +`wang_trace.py` owns strict loading and one semantic replay. +`wang_trace_render.py` selects events and composes RGB frames. +`wang_animation.py` writes those same frames as deterministic atomic PNGs, one +contact sheet, and a presentation-only GIF. The renderer imports neither Z3 +nor native code, and successful raster output is never treated as correctness +evidence. + +Z3 uses a different boundary. Its versioned summaries are explicitly labeled +`encoding-order`, fix version, seed and thread count, and record the +project-defined constraint order, returned result/model, and stable +project-owned counts. They do not expose or infer Z3's internal search order. diff --git a/docs/wang_square_to_hex.md b/docs/wang_square_to_hex.md index e9e80d9..3e1c09e 100644 --- a/docs/wang_square_to_hex.md +++ b/docs/wang_square_to_hex.md @@ -6,7 +6,7 @@ description: Algebra, coordinate convention, inverse proof, and raster boundary section: Architecture and correctness document_kind: Technical reference status: Current specification -updated: 2026-08-26 +updated: 2026-08-27 nav_order: 32 --- @@ -34,6 +34,14 @@ The exact edge tuple, coordinate convention, deterministic fresh-color rule, and finite-region bijection below are Tiling Foundry's formalization of that construction. They are not attributed to either source's diagram notation. +
+ + + Canonical square Wang tile mapped to a pointy-top hex tile while preserving four source edges and adding the fresh kappa color. + +
Canonical example. The pure renderer-side port and its raster-independent checker produce this mapping; the animation itself is not a proof. The static contact sheet shows all four stages.
+
+ ## Project convention The source stores square edges as `(N,E,S,W)`. Its dense row-major coordinates diff --git a/docs/wang_z3_edge_table_2026-08-24.md b/docs/wang_z3_edge_table_2026-08-24.md index 75fb933..b66fab6 100644 --- a/docs/wang_z3_edge_table_2026-08-24.md +++ b/docs/wang_z3_edge_table_2026-08-24.md @@ -6,7 +6,7 @@ description: Constraint model, correctness evidence, and before/after smoke meas section: Cross-engine benchmarks document_kind: Oracle model report status: Current implementation -updated: 2026-08-24 +updated: 2026-08-27 nav_order: 30 --- @@ -25,6 +25,29 @@ public `solve_tiling()` result contract. `SAT`, `UNSAT`, `UNKNOWN`, dense row-major witnesses, inactive cells, boundary colors, and generic tilesets are preserved. +
+ + + Canonical Wang Z3 example progressing through the project-defined row-major encoding order to the returned model. + +
Encoding order. The frames replay the project-owned constraint construction and returned result; they do not claim to expose Z3's internal search or debug order. The static contact sheet shows all five stages.
+
+ +## Reproducible summary boundary + +Both project oracles construct their solver through one fixed configuration: +Z3 version `5.1.0` in the committed example, `random_seed=0`, and `threads=1`. +The closed `z3-encoding-summary-v1` documents label their semantics +`encoding-order` and preserve source hashes, the result status, the returned +assignment or dense Wang model, exact assertion order, and deterministic +project-owned counts. The Wang example records 444 active cells, 944 edge +terms, 832 shared internal edges, 23 unique tile tuples, and 556 assertions. + +Internal Z3 statistics are deliberately excluded because their values are not +a stable replay contract, even across repeated solves in one process. No +solver debug trace, branching order, propagation order, or proof trace is +exported or inferred by the renderer. + ## Constraint model The preceding encoding created one integer tile-ID variable per active cell. diff --git a/docs/yang_zhang_builder_design.md b/docs/yang_zhang_builder_design.md index c9fde4d..8309720 100644 --- a/docs/yang_zhang_builder_design.md +++ b/docs/yang_zhang_builder_design.md @@ -44,6 +44,14 @@ Primary source: Text parsing, solving, independent verification, scheduling, oracles, solution transport, and rendering have separate contracts. +
+ + + Canonical Yang–Zhang region with native variable, forwarder, crossover, and clause gadget spans appearing in construction order. + +
Canonical example. The frames reveal spans from the versioned native construction sidecar; they are not timestamps from an instrumented builder. The static contact sheet shows all six stages.
+
+ ## 1. Module boundary `yang_zhang` is a deterministic reduction builder: diff --git a/include/wang/solver_trace.h b/include/wang/solver_trace.h new file mode 100644 index 0000000..0a778a7 --- /dev/null +++ b/include/wang/solver_trace.h @@ -0,0 +1,122 @@ +#ifndef WANG_SOLVER_TRACE_H +#define WANG_SOLVER_TRACE_H + +#include +#include +#include + +#include "wang/solver.h" + +/* Stable semantic events emitted by the opt-in native solver trace. */ +typedef enum { + WANG_TRACE_EVENT_ROOT, + WANG_TRACE_EVENT_PROPAGATION, + WANG_TRACE_EVENT_DECISION, + WANG_TRACE_EVENT_DOMAIN_REDUCTION, + WANG_TRACE_EVENT_CONFLICT, + WANG_TRACE_EVENT_BACKTRACK, + WANG_TRACE_EVENT_RESULT +} WangSolveTraceEventKind; + +typedef enum { + WANG_TRACE_PHASE_NONE, + WANG_TRACE_PHASE_INITIAL, + WANG_TRACE_PHASE_SEARCH +} WangSolveTracePhase; + +typedef enum { + WANG_TRACE_REASON_NONE, + WANG_TRACE_REASON_DECISION, + WANG_TRACE_REASON_PROPAGATION +} WangSolveTraceReason; + +/* + * One observed solver event. sequence is the event's ordinal in the complete + * run, so the final result may follow a gap when the bounded prefix truncated. + * Non-applicable scalar fields use zero, SIZE_MAX, or WANG_SOLVE_ERROR as + * described by the event kind. Domains are canonical TILESET bitmasks. + */ +typedef struct { + uint64_t sequence; + WangSolveTraceEventKind kind; + WangSolveTracePhase phase; + WangSolveTraceReason reason; + size_t depth; + size_t cell_index; + size_t change_mark; + uint32_t old_domain; + uint32_t new_domain; + WangSolveStatus status; +} WangSolveTraceEvent; + +/* Full state captured after one recorded event for bounded random access. */ +typedef struct { + uint64_t event_sequence; + size_t change_mark; +} WangSolveTraceCheckpoint; + +typedef struct { + /* At least two slots: the root event and the reserved terminal result. */ + size_t event_capacity; + + /* Both zero disables checkpoints; otherwise both values must be positive. */ + size_t checkpoint_interval; + size_t checkpoint_capacity; +} WangSolveTraceOptions; + +/* + * Caller-owned immutable trace published only after a successful solve call. + * initial_domains is the full state after root-domain initialization and before + * arc propagation. Each checkpoint owns one dense domain_count-sized row in + * checkpoint_domains, parallel to checkpoints. + */ +typedef struct { + uint32_t *initial_domains; + size_t domain_count; + + WangSolveTraceEvent *events; + size_t event_count; + uint64_t observed_event_count; + size_t event_capacity; + bool truncated; + + WangSolveTraceCheckpoint *checkpoints; + uint32_t *checkpoint_domains; + size_t checkpoint_count; + size_t checkpoint_interval; + size_t checkpoint_capacity; + bool checkpoints_truncated; +} WangSolveTrace; + +/* One joint lifetime for the ordinary solve result and its opt-in trace. */ +typedef struct { + WangSolveResult solve; + WangSolveTrace trace; +} WangTracedSolveResult; + +/* + * Traced entry points share the exact solver implementations used by the + * standard functions. solver_options may be NULL. trace_options is required. + * out_result must be zero-initialized or destroyed. ERROR is transactional. + */ +WangSolveStatus wang_solve_serial_traced( + const Region *region, + const WangSolverOptions *solver_options, + const WangSolveTraceOptions *trace_options, + WangTracedSolveResult *out_result +); + +WangSolveStatus wang_solve_optimized_traced( + const Region *region, + const WangSolverOptions *solver_options, + const WangSolveTraceOptions *trace_options, + WangTracedSolveResult *out_result +); + +/* Release every owned trace allocation and reset all fields. Accepts NULL. */ +void wang_solve_trace_destroy(WangSolveTrace *trace); + +/* Release solve and trace storage and reset all fields. Accepts NULL. */ +void wang_traced_solve_result_destroy(WangTracedSolveResult *result); + +#endif /* WANG_SOLVER_TRACE_H */ diff --git a/python/formats/solver_trace_snapshot.py b/python/formats/solver_trace_snapshot.py new file mode 100644 index 0000000..80cf0d0 --- /dev/null +++ b/python/formats/solver_trace_snapshot.py @@ -0,0 +1,721 @@ +"""Closed, hash-bound snapshots for one observed native solver run. + +This producer owns the v1 semantic trace document and the v3 explainability +manifest. It deliberately reuses the existing formula, tileset, region, +reduction, and SAT-solution emitters instead of creating parallel formats. +""" + +from __future__ import annotations + +import hashlib +from pathlib import Path +from typing import Final + +from formats.pipeline_snapshot import ( + FORMULA_SCHEMA, + REDUCTION_SCHEMA, + REGION_SCHEMA, + TILESET_SCHEMA, + PipelineSnapshotError, + _encode_document, + _load_json_bytes, + _require_artifact_name, + _require_array, + _require_exact_fields, + _require_integer, + _require_literal, + _require_object, + _require_sha256, + _require_string, + _validate_base_bundle_identity, + _validate_reduction_bundle_identity, + _validate_reference, + _write_atomic, + build_formula_snapshot, + build_reduction_explanation_snapshot, + build_region_snapshot, + build_tileset_snapshot, + validate_formula_snapshot, + validate_reduction_explanation_snapshot, + validate_region_snapshot, + validate_tileset_snapshot, +) +from formats.wang_solution import SCHEMA_NAME as SOLUTION_SCHEMA +from formats.wang_solution import validate_wang_solution +from formats.wang_solution_export import build_wang_solution +from model.formula import Formula +from model.reduction_explanation import ReductionExplanation +from model.region import Region +from model.solver_trace import ( + SOLVERS, + TRACE_KINDS, + TRACE_PHASES, + TRACE_REASONS, + SolverTrace, + SolverTraceCheckpoint, + SolverTraceEvent, + replay_solver_trace, +) +from model.tiling import TilingSolveResult, TilingSolveStatus + + +TRACE_SCHEMA: Final = "wang-solver-trace-v1" +TRACE_MANIFEST_SCHEMA: Final = "wang-explain-manifest-v3" +TRACE_STAGE: Final = "solver-trace" +TRACE_SEMANTICS: Final = "observed" +GEOMETRY: Final = "square" +INDEXING: Final = "row-major" +TILE_COUNT: Final = 23 +_STATUSES: Final = frozenset({"sat", "unsat"}) +_EVENT_FIELDS: Final = frozenset( + { + "sequence", + "kind", + "phase", + "reason", + "depth", + "cell", + "change_mark", + "old_domain", + "new_domain", + "status", + } +) + + +def _require_optional_string(value: object, path: str) -> str | None: + if value is None: + return None + return _require_string(value, path) + + +def _require_optional_integer(value: object, path: str) -> int | None: + if value is None: + return None + return _require_integer(value, path, nonnegative=True) + + +def _require_boolean(value: object, path: str) -> bool: + if type(value) is not bool: + raise PipelineSnapshotError(f"{path}: must be a boolean") + return value + + +def _require_status(value: object, path: str) -> str: + status = _require_string(value, path) + if status not in _STATUSES: + raise PipelineSnapshotError(f"{path}: must equal 'sat' or 'unsat'") + return status + + +def _status_model(value: str) -> TilingSolveStatus: + return ( + TilingSolveStatus.SAT + if value == "sat" + else TilingSolveStatus.UNSAT + ) + + +def _event_from_document(value: object, path: str) -> SolverTraceEvent: + event = _require_object(value, path) + _require_exact_fields(event, _EVENT_FIELDS, path) + kind = _require_string(event["kind"], f"{path}.kind") + if kind not in TRACE_KINDS: + raise PipelineSnapshotError(f"{path}.kind: is not a trace event kind") + phase = _require_optional_string(event["phase"], f"{path}.phase") + if phase is not None and phase not in TRACE_PHASES: + raise PipelineSnapshotError(f"{path}.phase: is not a trace phase") + reason = _require_optional_string(event["reason"], f"{path}.reason") + if reason is not None and reason not in TRACE_REASONS: + raise PipelineSnapshotError(f"{path}.reason: is not a trace reason") + status_value = _require_optional_string(event["status"], f"{path}.status") + if status_value is not None: + status_value = _require_status(status_value, f"{path}.status") + try: + return SolverTraceEvent( + sequence=_require_integer( + event["sequence"], f"{path}.sequence", nonnegative=True + ), + kind=kind, + phase=phase, + reason=reason, + depth=_require_integer( + event["depth"], f"{path}.depth", nonnegative=True + ), + cell=_require_optional_integer(event["cell"], f"{path}.cell"), + change_mark=_require_integer( + event["change_mark"], + f"{path}.change_mark", + nonnegative=True, + ), + old_domain=_require_optional_integer( + event["old_domain"], f"{path}.old_domain" + ), + new_domain=_require_optional_integer( + event["new_domain"], f"{path}.new_domain" + ), + status=( + None if status_value is None else _status_model(status_value) + ), + ) + except (TypeError, ValueError) as error: + raise PipelineSnapshotError(f"{path}: {error}") from error + + +def trace_from_document(document: object) -> SolverTrace: + """Validate and project a trace JSON document to its immutable model.""" + root = _require_object(document, "$") + _require_exact_fields( + root, + frozenset( + { + "schema", + "semantics", + "solver", + "status", + "geometry", + "source_formula_sha256", + "region_sha256", + "solution_sha256", + "layout", + "capacity", + "initial_domains", + "events", + "checkpoints", + } + ), + "$", + ) + _require_literal(root["schema"], TRACE_SCHEMA, "$.schema") + _require_literal(root["semantics"], TRACE_SEMANTICS, "$.semantics") + _require_literal(root["geometry"], GEOMETRY, "$.geometry") + _require_sha256(root["source_formula_sha256"], "$.source_formula_sha256") + _require_sha256(root["region_sha256"], "$.region_sha256") + if root["solution_sha256"] is not None: + _require_sha256(root["solution_sha256"], "$.solution_sha256") + solver = _require_string(root["solver"], "$.solver") + if solver not in SOLVERS: + raise PipelineSnapshotError("$.solver: is not a supported native solver") + status_value = _require_status(root["status"], "$.status") + + layout = _require_object(root["layout"], "$.layout") + _require_exact_fields( + layout, + frozenset({"width", "height", "tile_count", "indexing"}), + "$.layout", + ) + width = _require_integer(layout["width"], "$.layout.width", nonnegative=True) + height = _require_integer( + layout["height"], "$.layout.height", nonnegative=True + ) + if width == 0 or height == 0: + raise PipelineSnapshotError("$.layout: dimensions must be positive") + if _require_integer( + layout["tile_count"], "$.layout.tile_count", nonnegative=True + ) != TILE_COUNT: + raise PipelineSnapshotError( + f"$.layout.tile_count: must equal {TILE_COUNT}" + ) + _require_literal(layout["indexing"], INDEXING, "$.layout.indexing") + + capacity = _require_object(root["capacity"], "$.capacity") + _require_exact_fields( + capacity, + frozenset( + { + "event_capacity", + "observed_event_count", + "truncated", + "checkpoint_interval", + "checkpoint_capacity", + "checkpoints_truncated", + } + ), + "$.capacity", + ) + initial = tuple( + _require_integer(item, f"$.initial_domains[{index}]", nonnegative=True) + for index, item in enumerate( + _require_array(root["initial_domains"], "$.initial_domains") + ) + ) + events = tuple( + _event_from_document(item, f"$.events[{index}]") + for index, item in enumerate(_require_array(root["events"], "$.events")) + ) + checkpoints: list[SolverTraceCheckpoint] = [] + for index, raw_checkpoint in enumerate( + _require_array(root["checkpoints"], "$.checkpoints") + ): + path = f"$.checkpoints[{index}]" + checkpoint = _require_object(raw_checkpoint, path) + _require_exact_fields( + checkpoint, + frozenset({"event_sequence", "change_mark", "domains"}), + path, + ) + try: + checkpoints.append( + SolverTraceCheckpoint( + event_sequence=_require_integer( + checkpoint["event_sequence"], + f"{path}.event_sequence", + nonnegative=True, + ), + change_mark=_require_integer( + checkpoint["change_mark"], + f"{path}.change_mark", + nonnegative=True, + ), + domains=tuple( + _require_integer( + item, + f"{path}.domains[{domain_index}]", + nonnegative=True, + ) + for domain_index, item in enumerate( + _require_array(checkpoint["domains"], f"{path}.domains") + ) + ), + ) + ) + except (TypeError, ValueError) as error: + raise PipelineSnapshotError(f"{path}: {error}") from error + + try: + trace = SolverTrace( + solver=solver, + status=_status_model(status_value), + width=width, + height=height, + initial_domains=initial, + events=events, + observed_event_count=_require_integer( + capacity["observed_event_count"], + "$.capacity.observed_event_count", + nonnegative=True, + ), + event_capacity=_require_integer( + capacity["event_capacity"], + "$.capacity.event_capacity", + nonnegative=True, + ), + truncated=_require_boolean( + capacity["truncated"], "$.capacity.truncated" + ), + checkpoints=tuple(checkpoints), + checkpoint_interval=_require_integer( + capacity["checkpoint_interval"], + "$.capacity.checkpoint_interval", + nonnegative=True, + ), + checkpoint_capacity=_require_integer( + capacity["checkpoint_capacity"], + "$.capacity.checkpoint_capacity", + nonnegative=True, + ), + checkpoints_truncated=_require_boolean( + capacity["checkpoints_truncated"], + "$.capacity.checkpoints_truncated", + ), + ) + except (TypeError, ValueError) as error: + raise PipelineSnapshotError(f"$: {error}") from error + + expected_sequences = tuple( + trace.checkpoint_interval * (index + 1) - 1 + for index in range(len(trace.checkpoints)) + ) + if tuple(item.event_sequence for item in trace.checkpoints) != expected_sequences: + raise PipelineSnapshotError( + "$.checkpoints: event sequences do not follow checkpoint_interval" + ) + return trace + + +def validate_solver_trace_snapshot(document: object) -> None: + """Validate the closed v1 trace syntax and replay semantics.""" + trace_from_document(document) + + +def build_solver_trace_snapshot( + trace: SolverTrace, + *, + source_formula_sha256: str, + region_sha256: str, + solution_sha256: str | None, +) -> dict[str, object]: + """Build one presentation-neutral observed trace document.""" + if not isinstance(trace, SolverTrace): + raise TypeError("trace must be a SolverTrace") + _require_sha256(source_formula_sha256, "source_formula_sha256") + _require_sha256(region_sha256, "region_sha256") + if solution_sha256 is not None: + _require_sha256(solution_sha256, "solution_sha256") + if (trace.status is TilingSolveStatus.SAT) != (solution_sha256 is not None): + raise PipelineSnapshotError( + "SAT traces require a solution digest and UNSAT traces forbid one" + ) + + document: dict[str, object] = { + "schema": TRACE_SCHEMA, + "semantics": TRACE_SEMANTICS, + "solver": trace.solver, + "status": trace.status.value, + "geometry": GEOMETRY, + "source_formula_sha256": source_formula_sha256, + "region_sha256": region_sha256, + "solution_sha256": solution_sha256, + "layout": { + "width": trace.width, + "height": trace.height, + "tile_count": TILE_COUNT, + "indexing": INDEXING, + }, + "capacity": { + "event_capacity": trace.event_capacity, + "observed_event_count": trace.observed_event_count, + "truncated": trace.truncated, + "checkpoint_interval": trace.checkpoint_interval, + "checkpoint_capacity": trace.checkpoint_capacity, + "checkpoints_truncated": trace.checkpoints_truncated, + }, + "initial_domains": list(trace.initial_domains), + "events": [ + { + "sequence": event.sequence, + "kind": event.kind, + "phase": event.phase, + "reason": event.reason, + "depth": event.depth, + "cell": event.cell, + "change_mark": event.change_mark, + "old_domain": event.old_domain, + "new_domain": event.new_domain, + "status": None if event.status is None else event.status.value, + } + for event in trace.events + ], + "checkpoints": [ + { + "event_sequence": checkpoint.event_sequence, + "change_mark": checkpoint.change_mark, + "domains": list(checkpoint.domains), + } + for checkpoint in trace.checkpoints + ], + } + validate_solver_trace_snapshot(document) + return document + + +def _validate_trace_region_state( + trace: SolverTrace, + region_document: dict[str, object], +) -> None: + active_raw = _require_array(region_document["active"], "region.active") + active = tuple(value is True for value in active_raw) + if len(active) != len(trace.initial_domains): + raise PipelineSnapshotError( + "trace.initial_domains: length does not match region active mask" + ) + for index, is_active in enumerate(active): + if not is_active and trace.initial_domains[index] != 0: + raise PipelineSnapshotError( + f"trace.initial_domains[{index}]: inactive cell must be zero" + ) + for checkpoint_index, checkpoint in enumerate(trace.checkpoints): + for cell, is_active in enumerate(active): + if not is_active and checkpoint.domains[cell] != 0: + raise PipelineSnapshotError( + "trace.checkpoints" + f"[{checkpoint_index}].domains[{cell}]: inactive cell must be zero" + ) + for event_index, event in enumerate(trace.events): + if event.cell is not None: + if event.cell >= len(active): + raise PipelineSnapshotError( + f"trace.events[{event_index}].cell: lies outside region" + ) + if not active[event.cell]: + raise PipelineSnapshotError( + f"trace.events[{event_index}].cell: must identify an active cell" + ) + + +def validate_solver_trace_manifest(document: object) -> None: + """Validate the v3 manifest without reading referenced artifacts.""" + root = _require_object(document, "$") + _require_exact_fields( + root, + frozenset({"schema", "stage", "source_formula_sha256", "artifacts"}), + "$", + ) + _require_literal(root["schema"], TRACE_MANIFEST_SCHEMA, "$.schema") + _require_literal(root["stage"], TRACE_STAGE, "$.stage") + _require_sha256(root["source_formula_sha256"], "$.source_formula_sha256") + artifacts = _require_object(root["artifacts"], "$.artifacts") + _require_exact_fields( + artifacts, + frozenset( + {"formula", "tileset", "region", "reduction", "trace", "solution"} + ), + "$.artifacts", + ) + for name, schema in ( + ("formula", FORMULA_SCHEMA), + ("tileset", TILESET_SCHEMA), + ("region", REGION_SCHEMA), + ("reduction", REDUCTION_SCHEMA), + ("trace", TRACE_SCHEMA), + ): + _validate_reference( + artifacts[name], f"$.artifacts.{name}", expected_schema=schema + ) + if artifacts["solution"] is not None: + _validate_reference( + artifacts["solution"], + "$.artifacts.solution", + expected_schema=SOLUTION_SCHEMA, + ) + + +def _reference( + directory: Path, + name: str, + schema: str, + document: dict[str, object], + *, + manifest_name: str, +) -> tuple[dict[str, object], str]: + encoded = _encode_document(document) + digest = hashlib.sha256(encoded).hexdigest() + artifact_name = f"{name}-{digest}.json" + _require_artifact_name(artifact_name, f"{name} artifact") + if artifact_name == manifest_name: + raise PipelineSnapshotError( + f"manifest filename collides with generated artifact {artifact_name}" + ) + _write_atomic(directory / artifact_name, encoded) + return ( + {"path": artifact_name, "sha256": digest, "schema": schema}, + digest, + ) + + +def _read_referenced( + manifest_path: Path, + manifest: dict[str, object], +) -> tuple[dict[str, dict[str, object]], dict[str, str]]: + artifacts = _require_object(manifest["artifacts"], "$.artifacts") + schemas = { + "formula": FORMULA_SCHEMA, + "tileset": TILESET_SCHEMA, + "region": REGION_SCHEMA, + "reduction": REDUCTION_SCHEMA, + "trace": TRACE_SCHEMA, + "solution": SOLUTION_SCHEMA, + } + documents: dict[str, dict[str, object]] = {} + digests: dict[str, str] = {} + for name, schema in schemas.items(): + if artifacts[name] is None: + continue + reference = _require_object(artifacts[name], f"$.artifacts.{name}") + artifact_name, expected_digest = _validate_reference( + reference, + f"$.artifacts.{name}", + expected_schema=schema, + ) + artifact_path = manifest_path.parent / artifact_name + try: + encoded = artifact_path.read_bytes() + except OSError as error: + raise PipelineSnapshotError( + f"cannot read {name} artifact {artifact_path!s}: {error}" + ) from error + if hashlib.sha256(encoded).hexdigest() != expected_digest: + raise PipelineSnapshotError( + f"$.artifacts.{name}.sha256: does not match {artifact_name}" + ) + document = _load_json_bytes(encoded, str(artifact_path)) + if document.get("schema") != schema: + raise PipelineSnapshotError( + f"$.artifacts.{name}.schema: does not match artifact" + ) + documents[name] = document + digests[name] = expected_digest + return documents, digests + + +def load_solver_trace_bundle( + manifest_path: str | Path, +) -> tuple[dict[str, object], dict[str, dict[str, object]]]: + """Load and cross-check every v3 artifact, including semantic replay.""" + path = Path(manifest_path) + try: + manifest = _load_json_bytes(path.read_bytes(), str(path)) + except OSError as error: + raise PipelineSnapshotError(f"cannot read manifest {path!s}: {error}") from error + validate_solver_trace_manifest(manifest) + documents, digests = _read_referenced(path, manifest) + validate_formula_snapshot(documents["formula"]) + validate_tileset_snapshot(documents["tileset"]) + validate_region_snapshot(documents["region"]) + validate_reduction_explanation_snapshot(documents["reduction"]) + trace = trace_from_document(documents["trace"]) + _validate_trace_region_state(trace, documents["region"]) + if "solution" in documents: + validate_wang_solution(documents["solution"]) + + source_digest = _validate_base_bundle_identity(manifest, documents) + _validate_reduction_bundle_identity(manifest, documents, source_digest) + trace_document = documents["trace"] + if trace_document["source_formula_sha256"] != source_digest: + raise PipelineSnapshotError( + "trace.source_formula_sha256: does not match formula" + ) + if trace_document["region_sha256"] != digests["region"]: + raise PipelineSnapshotError("trace.region_sha256: does not match region") + solution_reference = _require_object(manifest["artifacts"], "$.artifacts")[ + "solution" + ] + if solution_reference is None: + if trace.status is not TilingSolveStatus.UNSAT: + raise PipelineSnapshotError("SAT trace requires a solution artifact") + if trace_document["solution_sha256"] is not None: + raise PipelineSnapshotError("UNSAT trace forbids a solution digest") + else: + if trace.status is not TilingSolveStatus.SAT: + raise PipelineSnapshotError("UNSAT trace forbids a solution artifact") + if trace_document["solution_sha256"] != digests["solution"]: + raise PipelineSnapshotError( + "trace.solution_sha256: does not match solution artifact" + ) + solution = documents["solution"] + bounds = _require_object(solution["bounds"], "solution.bounds") + width = bounds["max_x_inclusive"] - bounds["min_x_inclusive"] + 1 + height = bounds["max_y_inclusive"] - bounds["min_y_inclusive"] + 1 + if (trace.width, trace.height) != (width, height): + raise PipelineSnapshotError("trace layout does not match solution") + if not trace.truncated: + expected = tuple( + 0 if tile_id is None else 1 << tile_id + for tile_id in _require_array(solution["cells"], "solution.cells") + ) + if replay_solver_trace(trace)[-1] != expected: + raise PipelineSnapshotError( + "complete trace does not replay to the bound solution" + ) + return manifest, documents + + +def dump_solver_trace_bundle( + manifest_path: str | Path, + source_path: str | Path, + formula: Formula, + region: Region, + explanation: ReductionExplanation, + result: TilingSolveResult, + trace: SolverTrace, + *, + origin: tuple[int, int] = (0, 0), +) -> Path: + """Write content-addressed artifacts, then atomically install v3.""" + destination = Path(manifest_path) + source = Path(source_path) + try: + source_digest = hashlib.sha256(source.read_bytes()).hexdigest() + except OSError as error: + raise PipelineSnapshotError( + f"cannot read formula source {source!s}: {error}" + ) from error + if (trace.width, trace.height) != (region.width, region.height): + raise PipelineSnapshotError("trace dimensions do not match region") + if trace.status is not result.status: + raise PipelineSnapshotError("trace status does not match solve result") + + documents: dict[str, tuple[str, dict[str, object]]] = { + "formula": ( + FORMULA_SCHEMA, + build_formula_snapshot( + formula, + source_name=source.name, + source_sha256=source_digest, + ), + ), + "tileset": (TILESET_SCHEMA, build_tileset_snapshot()), + "region": ( + REGION_SCHEMA, + build_region_snapshot( + region, + source_formula_sha256=source_digest, + origin=origin, + ), + ), + } + references: dict[str, object] = {} + digests: dict[str, str] = {} + for name, (schema, document) in documents.items(): + references[name], digests[name] = _reference( + destination.parent, + name, + schema, + document, + manifest_name=destination.name, + ) + + reduction_document = build_reduction_explanation_snapshot( + explanation, + source_formula_sha256=source_digest, + region_sha256=digests["region"], + ) + references["reduction"], digests["reduction"] = _reference( + destination.parent, + "reduction", + REDUCTION_SCHEMA, + reduction_document, + manifest_name=destination.name, + ) + + solution_digest: str | None = None + if result.status is TilingSolveStatus.SAT: + solution_document = build_wang_solution( + region, + result, + origin=origin, + metadata={"solver": trace.solver, "semantics": TRACE_SEMANTICS}, + ) + references["solution"], solution_digest = _reference( + destination.parent, + "solution", + SOLUTION_SCHEMA, + solution_document, + manifest_name=destination.name, + ) + else: + references["solution"] = None + + trace_document = build_solver_trace_snapshot( + trace, + source_formula_sha256=source_digest, + region_sha256=digests["region"], + solution_sha256=solution_digest, + ) + references["trace"], _ = _reference( + destination.parent, + "trace", + TRACE_SCHEMA, + trace_document, + manifest_name=destination.name, + ) + manifest: dict[str, object] = { + "schema": TRACE_MANIFEST_SCHEMA, + "stage": TRACE_STAGE, + "source_formula_sha256": source_digest, + "artifacts": references, + } + validate_solver_trace_manifest(manifest) + _write_atomic(destination, _encode_document(manifest)) + load_solver_trace_bundle(destination) + return destination diff --git a/python/formats/z3_encoding_summary.py b/python/formats/z3_encoding_summary.py new file mode 100644 index 0000000..bd160a0 --- /dev/null +++ b/python/formats/z3_encoding_summary.py @@ -0,0 +1,400 @@ +"""Closed summaries of the project-owned Z3 encoding order and one result.""" + +from __future__ import annotations + +from typing import Final + +from z3 import is_true, sat, unsat + +from formats.pipeline_snapshot import ( + PipelineSnapshotError, + _require_array, + _require_exact_fields, + _require_integer, + _require_literal, + _require_object, + _require_sha256, + _require_string, +) +from model.formula import Formula +from model.region import Region +from model.tileset import COLOR_NONE, TILESET +from oracles.boolean_solver import _encode_boolean +from oracles.tiling_solver import _encode_tiling +from oracles.z3_config import Z3_RANDOM_SEED, Z3_THREADS, z3_configuration + + +SCHEMA_NAME: Final = "z3-encoding-summary-v1" +SEMANTICS: Final = "encoding-order" +BOOLEAN_ENGINE: Final = "boolean-z3" +WANG_ENGINE: Final = "wang-z3" +ENGINES: Final = frozenset({BOOLEAN_ENGINE, WANG_ENGINE}) +STATUSES: Final = frozenset({"sat", "unsat", "unknown"}) +WANG_TILE_COUNT: Final = len(TILESET) +BOOLEAN_ORDER: Final = ( + "variables:ascending-id", + "clauses:source-order", + "clause-positions:left-to-right", +) +WANG_ORDER: Final = ( + "cells:row-major", + "directions:N,E,S,W", + "tile-tuples:first-positional-id", + "cell-relation-before-boundary", + "boundary-directions:N,E,S,W", +) +def _fail(path: str, message: str) -> None: + raise PipelineSnapshotError(f"{path}: {message}") + + +def _require_nullable_sha256(value: object, path: str) -> str | None: + if value is None: + return None + return _require_sha256(value, path) + + +def _status_name(status: object) -> str: + if status == sat: + return "sat" + if status == unsat: + return "unsat" + return "unknown" + + +def validate_z3_encoding_summary(document: object) -> None: + """Validate the closed transport and engine-specific cross fields.""" + root = _require_object(document, "$") + _require_exact_fields( + root, + frozenset( + { + "schema", + "semantics", + "engine", + "source_formula_sha256", + "region_sha256", + "z3", + "status", + "encoding", + "model", + "statistics", + } + ), + "$", + ) + _require_literal(root["schema"], SCHEMA_NAME, "$.schema") + _require_literal(root["semantics"], SEMANTICS, "$.semantics") + engine = _require_string(root["engine"], "$.engine") + if engine not in ENGINES: + _fail("$.engine", "is not a supported encoding engine") + _require_sha256(root["source_formula_sha256"], "$.source_formula_sha256") + region_digest = _require_nullable_sha256(root["region_sha256"], "$.region_sha256") + if (engine == WANG_ENGINE) != (region_digest is not None): + _fail("$.region_sha256", "must be present exactly for Wang Z3") + + z3 = _require_object(root["z3"], "$.z3") + _require_exact_fields(z3, frozenset({"version", "parameters"}), "$.z3") + if not _require_string(z3["version"], "$.z3.version"): + _fail("$.z3.version", "must not be empty") + parameters = _require_object(z3["parameters"], "$.z3.parameters") + _require_exact_fields( + parameters, + frozenset({"random_seed", "threads"}), + "$.z3.parameters", + ) + if _require_integer( + parameters["random_seed"], "$.z3.parameters.random_seed", nonnegative=True + ) != Z3_RANDOM_SEED: + _fail("$.z3.parameters.random_seed", f"must equal {Z3_RANDOM_SEED}") + if _require_integer( + parameters["threads"], "$.z3.parameters.threads", nonnegative=True + ) != Z3_THREADS: + _fail("$.z3.parameters.threads", f"must equal {Z3_THREADS}") + + status = _require_string(root["status"], "$.status") + if status not in STATUSES: + _fail("$.status", "is not a supported Z3 result") + encoding = _require_object(root["encoding"], "$.encoding") + _require_exact_fields( + encoding, + frozenset( + { + "order", + "variable_count", + "width", + "height", + "active_cell_count", + "edge_term_count", + "shared_internal_edge_count", + "unique_tile_tuple_count", + "assertion_count", + } + ), + "$.encoding", + ) + order = tuple( + _require_string(item, f"$.encoding.order[{index}]") + for index, item in enumerate( + _require_array(encoding["order"], "$.encoding.order") + ) + ) + expected_order = BOOLEAN_ORDER if engine == BOOLEAN_ENGINE else WANG_ORDER + if order != expected_order: + _fail("$.encoding.order", "does not match the engine contract") + counts = { + name: _require_integer( + encoding[name], f"$.encoding.{name}", nonnegative=True + ) + for name in ( + "variable_count", + "width", + "height", + "active_cell_count", + "edge_term_count", + "shared_internal_edge_count", + "unique_tile_tuple_count", + "assertion_count", + ) + } + if counts["variable_count"] == 0: + _fail("$.encoding.variable_count", "must be positive") + if engine == BOOLEAN_ENGINE and any( + counts[name] != 0 + for name in ( + "active_cell_count", + "width", + "height", + "edge_term_count", + "shared_internal_edge_count", + "unique_tile_tuple_count", + ) + ): + _fail("$.encoding", "Boolean Z3 must not publish Wang counts") + if engine == WANG_ENGINE and ( + counts["width"] == 0 + or counts["height"] == 0 + or counts["active_cell_count"] == 0 + or counts["edge_term_count"] == 0 + or counts["unique_tile_tuple_count"] != WANG_TILE_COUNT + ): + _fail( + "$.encoding", + "Wang Z3 requires nonzero region counts and the canonical tile table", + ) + if engine == WANG_ENGINE and ( + counts["active_cell_count"] > counts["width"] * counts["height"] + or counts["edge_term_count"] + != 4 * counts["active_cell_count"] + - counts["shared_internal_edge_count"] + ): + _fail("$.encoding", "Wang Z3 edge accounting is inconsistent") + + model = _require_object(root["model"], "$.model") + _require_exact_fields(model, frozenset({"assignment", "cells"}), "$.model") + assignment = model["assignment"] + cells = model["cells"] + model_entry_count = 0 + if status == "sat" and engine == BOOLEAN_ENGINE: + values = _require_array(assignment, "$.model.assignment") + if len(values) != counts["variable_count"] or any( + type(value) is not bool for value in values + ): + _fail("$.model.assignment", "must contain one boolean per variable") + if cells is not None: + _fail("$.model.cells", "must be null for Boolean Z3") + model_entry_count = len(values) + elif status == "sat": + if assignment is not None: + _fail("$.model.assignment", "must be null for Wang Z3") + values = _require_array(cells, "$.model.cells") + if len(values) != counts["width"] * counts["height"]: + _fail("$.model.cells", "length must equal the Wang extent") + active_model_cells = 0 + for index, tile_id in enumerate(values): + if tile_id is not None: + parsed_tile_id = _require_integer( + tile_id, f"$.model.cells[{index}]", nonnegative=True + ) + if parsed_tile_id >= counts["unique_tile_tuple_count"]: + _fail( + f"$.model.cells[{index}]", + "is outside the canonical tile table", + ) + active_model_cells += 1 + if active_model_cells != counts["active_cell_count"]: + _fail( + "$.model.cells", + "non-null entries must equal the active-cell count", + ) + model_entry_count = len(values) + elif assignment is not None or cells is not None: + _fail("$.model", "non-SAT summaries must not publish a model") + + statistics = _require_array(root["statistics"], "$.statistics") + parsed_statistics: list[tuple[str, int]] = [] + for index, raw in enumerate(statistics): + path = f"$.statistics[{index}]" + statistic = _require_object(raw, path) + _require_exact_fields(statistic, frozenset({"name", "value"}), path) + name = _require_string(statistic["name"], f"{path}.name") + if not name: + _fail(f"{path}.name", "must not be empty") + value = _require_integer( + statistic["value"], f"{path}.value", nonnegative=True + ) + parsed_statistics.append((name, value)) + expected_statistics = ( + [ + ("variables", counts["variable_count"]), + ("assertions", counts["assertion_count"]), + ("model-entries", model_entry_count), + ] + if engine == BOOLEAN_ENGINE + else [ + ("active-cells", counts["active_cell_count"]), + ("edge-terms", counts["edge_term_count"]), + ("shared-internal-edges", counts["shared_internal_edge_count"]), + ("assertions", counts["assertion_count"]), + ("model-entries", model_entry_count), + ] + ) + if parsed_statistics != expected_statistics: + _fail("$.statistics", "must match the ordered project-owned counters") + + +def build_boolean_z3_summary( + formula: Formula, + *, + source_formula_sha256: str, +) -> dict[str, object]: + """Run the Boolean oracle once and summarize its explicit encoding.""" + _require_sha256(source_formula_sha256, "source_formula_sha256") + solver, variables = _encode_boolean(formula) + status = solver.check() + assignment = None + if status == sat: + model = solver.model() + assignment = [ + is_true(model.eval(variable, model_completion=True)) + for variable in variables + ] + document: dict[str, object] = { + "schema": SCHEMA_NAME, + "semantics": SEMANTICS, + "engine": BOOLEAN_ENGINE, + "source_formula_sha256": source_formula_sha256, + "region_sha256": None, + "z3": z3_configuration(), + "status": _status_name(status), + "encoding": { + "order": list(BOOLEAN_ORDER), + "variable_count": formula.variable_count, + "width": 0, + "height": 0, + "active_cell_count": 0, + "edge_term_count": 0, + "shared_internal_edge_count": 0, + "unique_tile_tuple_count": 0, + "assertion_count": len(solver.assertions()), + }, + "model": {"assignment": assignment, "cells": None}, + "statistics": [ + {"name": "variables", "value": formula.variable_count}, + {"name": "assertions", "value": len(solver.assertions())}, + { + "name": "model-entries", + "value": 0 if assignment is None else len(assignment), + }, + ], + } + validate_z3_encoding_summary(document) + return document + + +def build_wang_z3_summary( + formula: Formula, + region: Region, + *, + source_formula_sha256: str, + region_sha256: str, +) -> dict[str, object]: + """Run the edge-table oracle once and summarize its encoding and model.""" + _require_sha256(source_formula_sha256, "source_formula_sha256") + _require_sha256(region_sha256, "region_sha256") + solver, edges, tile_id_by_edges = _encode_tiling(region, TILESET) + status = solver.check() + cells = None + if status == sat: + model = solver.model() + cells = [ + None + if cell_edges is None + else tile_id_by_edges[ + tuple( + model.eval(edge, model_completion=True).as_long() + for edge in cell_edges + ) + ] + for cell_edges in edges + ] + active_count = sum(region.active) + shared_edges = 0 + boundary_constraints = 0 + for index, active in enumerate(region.active): + if not active: + continue + x = index % region.width + y = index // region.width + if x + 1 < region.width and region.active[index + 1]: + shared_edges += 1 + if y + 1 < region.height and region.active[index + region.width]: + shared_edges += 1 + boundary_constraints += sum( + color != COLOR_NONE for color in region.boundary[index] + ) + edge_term_count = len( + { + edge.get_id() + for cell_edges in edges + if cell_edges is not None + for edge in cell_edges + } + ) + document: dict[str, object] = { + "schema": SCHEMA_NAME, + "semantics": SEMANTICS, + "engine": WANG_ENGINE, + "source_formula_sha256": source_formula_sha256, + "region_sha256": region_sha256, + "z3": z3_configuration(), + "status": _status_name(status), + "encoding": { + "order": list(WANG_ORDER), + "variable_count": formula.variable_count, + "width": region.width, + "height": region.height, + "active_cell_count": active_count, + "edge_term_count": edge_term_count, + "shared_internal_edge_count": shared_edges, + "unique_tile_tuple_count": len(tile_id_by_edges), + "assertion_count": active_count + boundary_constraints, + }, + "model": {"assignment": None, "cells": cells}, + "statistics": [ + {"name": "active-cells", "value": active_count}, + {"name": "edge-terms", "value": edge_term_count}, + {"name": "shared-internal-edges", "value": shared_edges}, + { + "name": "assertions", + "value": active_count + boundary_constraints, + }, + { + "name": "model-entries", + "value": 0 if cells is None else len(cells), + }, + ], + } + if len(solver.assertions()) != active_count + boundary_constraints: + raise PipelineSnapshotError("Wang Z3 assertion accounting diverged") + validate_z3_encoding_summary(document) + return document diff --git a/python/model/solver_trace.py b/python/model/solver_trace.py new file mode 100644 index 0000000..58ad664 --- /dev/null +++ b/python/model/solver_trace.py @@ -0,0 +1,320 @@ +"""Immutable semantic event trace copied from one native Wang solve.""" + +from __future__ import annotations + +from dataclasses import dataclass +from typing import Final + +from model.tiling import TilingSolveStatus +from model.tileset import TILE_COUNT + + +TRACE_ROOT: Final = "root" +TRACE_PROPAGATION: Final = "propagation" +TRACE_DECISION: Final = "decision" +TRACE_DOMAIN_REDUCTION: Final = "domain_reduction" +TRACE_CONFLICT: Final = "conflict" +TRACE_BACKTRACK: Final = "backtrack" +TRACE_RESULT: Final = "result" +TRACE_KINDS: Final = frozenset( + { + TRACE_ROOT, + TRACE_PROPAGATION, + TRACE_DECISION, + TRACE_DOMAIN_REDUCTION, + TRACE_CONFLICT, + TRACE_BACKTRACK, + TRACE_RESULT, + } +) + +TRACE_INITIAL: Final = "initial" +TRACE_SEARCH: Final = "search" +TRACE_PHASES: Final = frozenset({TRACE_INITIAL, TRACE_SEARCH}) + +TRACE_REASON_DECISION: Final = "decision" +TRACE_REASON_PROPAGATION: Final = "propagation" +TRACE_REASONS: Final = frozenset( + {TRACE_REASON_DECISION, TRACE_REASON_PROPAGATION} +) + +SOLVER_REFERENCE: Final = "reference" +SOLVER_OPTIMIZED: Final = "optimized" +SOLVERS: Final = frozenset({SOLVER_REFERENCE, SOLVER_OPTIMIZED}) + +DOMAIN_ALL: Final = (1 << TILE_COUNT) - 1 + + +@dataclass(frozen=True, slots=True) +class SolverTraceEvent: + sequence: int + kind: str + phase: str | None + reason: str | None + depth: int + cell: int | None + change_mark: int + old_domain: int | None + new_domain: int | None + status: TilingSolveStatus | None + + def __post_init__(self) -> None: + for name in ("sequence", "depth", "change_mark"): + value = getattr(self, name) + if type(value) is not int or value < 0: + raise ValueError(f"trace event {name} must be nonnegative") + if type(self.kind) is not str or self.kind not in TRACE_KINDS: + raise ValueError("trace event kind is invalid") + if self.phase is not None and ( + type(self.phase) is not str or self.phase not in TRACE_PHASES + ): + raise ValueError("trace event phase is invalid") + if self.reason is not None and ( + type(self.reason) is not str or self.reason not in TRACE_REASONS + ): + raise ValueError("trace event reason is invalid") + if self.cell is not None and (type(self.cell) is not int or self.cell < 0): + raise ValueError("trace event cell must be nonnegative or None") + for name in ("old_domain", "new_domain"): + value = getattr(self, name) + if value is not None and ( + type(value) is not int or not 0 <= value <= DOMAIN_ALL + ): + raise ValueError(f"trace event {name} is not a Wang domain") + if self.status is not None and self.status not in ( + TilingSolveStatus.SAT, + TilingSolveStatus.UNSAT, + ): + raise ValueError("trace event status must be SAT, UNSAT, or None") + + +@dataclass(frozen=True, slots=True) +class SolverTraceCheckpoint: + event_sequence: int + change_mark: int + domains: tuple[int, ...] + + def __post_init__(self) -> None: + if type(self.event_sequence) is not int or self.event_sequence < 0: + raise ValueError("checkpoint event_sequence must be nonnegative") + if type(self.change_mark) is not int or self.change_mark < 0: + raise ValueError("checkpoint change_mark must be nonnegative") + if type(self.domains) is not tuple: + raise TypeError("checkpoint domains must be a tuple") + _validate_domains(self.domains, "checkpoint domains") + + +@dataclass(frozen=True, slots=True) +class SolverTrace: + solver: str + status: TilingSolveStatus + width: int + height: int + initial_domains: tuple[int, ...] + events: tuple[SolverTraceEvent, ...] + observed_event_count: int + event_capacity: int + truncated: bool + checkpoints: tuple[SolverTraceCheckpoint, ...] + checkpoint_interval: int + checkpoint_capacity: int + checkpoints_truncated: bool + + def __post_init__(self) -> None: + if type(self.solver) is not str or self.solver not in SOLVERS: + raise ValueError("solver trace engine is invalid") + if self.status not in (TilingSolveStatus.SAT, TilingSolveStatus.UNSAT): + raise ValueError("solver trace status must be SAT or UNSAT") + for name in ( + "width", + "height", + "observed_event_count", + "event_capacity", + "checkpoint_interval", + "checkpoint_capacity", + ): + value = getattr(self, name) + if type(value) is not int or value < 0: + raise ValueError(f"solver trace {name} must be nonnegative") + if self.width == 0 or self.height == 0: + raise ValueError("solver trace dimensions must be positive") + if self.event_capacity < 2: + raise ValueError("solver trace event_capacity must be at least two") + if type(self.truncated) is not bool: + raise TypeError("solver trace truncated must be a boolean") + if type(self.checkpoints_truncated) is not bool: + raise TypeError("checkpoints_truncated must be a boolean") + if type(self.initial_domains) is not tuple: + raise TypeError("initial_domains must be a tuple") + if type(self.events) is not tuple: + raise TypeError("events must be a tuple") + if type(self.checkpoints) is not tuple: + raise TypeError("checkpoints must be a tuple") + area = self.width * self.height + if len(self.initial_domains) != area: + raise ValueError("initial_domains length must match trace dimensions") + _validate_domains(self.initial_domains, "initial domains") + if not self.events or len(self.events) > self.event_capacity: + raise ValueError("recorded events must fit the declared capacity") + if self.events[0].kind != TRACE_ROOT: + raise ValueError("the first trace event must be root") + terminal = self.events[-1] + if terminal.kind != TRACE_RESULT or terminal.status is not self.status: + raise ValueError("the final trace event must publish the solve status") + if self.observed_event_count != terminal.sequence + 1: + raise ValueError("observed_event_count must follow the result sequence") + if self.truncated: + if terminal.sequence <= len(self.events) - 1: + raise ValueError("a truncated trace must contain an event gap") + elif self.observed_event_count != len(self.events): + raise ValueError("a complete trace cannot contain an event gap") + for index, event in enumerate(self.events[:-1]): + if type(event) is not SolverTraceEvent: + raise TypeError("events must contain SolverTraceEvent values") + if event.sequence != index: + raise ValueError("the recorded trace prefix must be contiguous") + if type(terminal) is not SolverTraceEvent: + raise TypeError("events must contain SolverTraceEvent values") + if (self.checkpoint_interval == 0) != (self.checkpoint_capacity == 0): + raise ValueError("checkpoint interval and capacity must be jointly set") + if len(self.checkpoints) > self.checkpoint_capacity: + raise ValueError("checkpoints exceed their declared capacity") + checkpoint_opportunities = ( + 0 + if self.checkpoint_interval == 0 + else (len(self.events) - int(self.truncated)) + // self.checkpoint_interval + ) + if len(self.checkpoints) != min( + checkpoint_opportunities, + self.checkpoint_capacity, + ): + raise ValueError("checkpoint count does not match recorded events") + if self.checkpoints_truncated != ( + checkpoint_opportunities > self.checkpoint_capacity + ): + raise ValueError("checkpoints_truncated is inconsistent") + for checkpoint in self.checkpoints: + if type(checkpoint) is not SolverTraceCheckpoint: + raise TypeError( + "checkpoints must contain SolverTraceCheckpoint values" + ) + if len(checkpoint.domains) != area: + raise ValueError("checkpoint domains length must match trace area") + replay_solver_trace(self) + + +def _validate_domains(domains: tuple[int, ...], label: str) -> None: + for domain in domains: + if type(domain) is not int or not 0 <= domain <= DOMAIN_ALL: + raise ValueError(f"{label} must contain canonical Wang domains") + + +def replay_solver_trace( + trace: SolverTrace, +) -> tuple[tuple[int, ...], ...]: + """Replay the recorded prefix and return the state after every event. + + The terminal result never mutates state. For a truncated trace the returned + terminal state is the last reconstructable prefix, not an invented final + solver state. + """ + domains = list(trace.initial_domains) + changes: list[tuple[int, int]] = [] + states: list[tuple[int, ...]] = [] + checkpoints = {item.event_sequence: item for item in trace.checkpoints} + if len(checkpoints) != len(trace.checkpoints): + raise ValueError("checkpoint event sequences must be unique") + + for index, event in enumerate(trace.events): + if event.kind != TRACE_RESULT and event.status is not None: + raise ValueError("only the result event may publish a status") + if event.kind != TRACE_DOMAIN_REDUCTION and event.reason is not None: + raise ValueError("only domain reduction may publish a reason") + if event.kind not in (TRACE_DECISION, TRACE_DOMAIN_REDUCTION) and ( + event.old_domain is not None or event.new_domain is not None + ): + raise ValueError("only decision and reduction may publish domains") + if event.kind == TRACE_ROOT: + if index != 0 or event.phase != TRACE_INITIAL: + raise ValueError("root must be the first initial-phase event") + if event.cell is not None or event.change_mark != 0 or event.depth != 0: + raise ValueError("root fields are inconsistent") + elif event.kind == TRACE_DOMAIN_REDUCTION: + if event.phase not in TRACE_PHASES or event.reason not in TRACE_REASONS: + raise ValueError("domain reduction requires phase and reason") + if event.cell is None or event.cell >= len(domains): + raise ValueError("domain reduction cell lies outside the trace") + if event.old_domain is None or event.new_domain is None: + raise ValueError("domain reduction requires old and new domains") + if domains[event.cell] != event.old_domain: + raise ValueError("domain reduction old_domain does not match replay") + if event.new_domain == event.old_domain or ( + event.new_domain & ~event.old_domain + ): + raise ValueError("domain reduction must remove at least one tile") + changes.append((event.cell, event.old_domain)) + domains[event.cell] = event.new_domain + if event.change_mark != len(changes): + raise ValueError("domain reduction change_mark is inconsistent") + elif event.kind == TRACE_BACKTRACK: + if event.phase != TRACE_SEARCH or event.change_mark > len(changes): + raise ValueError("backtrack change_mark is inconsistent") + while len(changes) > event.change_mark: + cell, old_domain = changes.pop() + domains[cell] = old_domain + elif not ( + event.kind == TRACE_RESULT + and trace.truncated + and event.sequence != index + ): + if event.change_mark != len(changes): + raise ValueError("trace event change_mark is inconsistent") + + if event.kind == TRACE_DECISION: + if event.phase != TRACE_SEARCH or event.cell is None: + raise ValueError("decision requires a search-phase cell") + if event.old_domain != domains[event.cell]: + raise ValueError("decision old_domain does not match replay") + if event.new_domain is None or event.new_domain == 0 or ( + event.new_domain & (event.new_domain - 1) + ): + raise ValueError("decision new_domain must be a singleton") + if event.old_domain is None or event.new_domain & ~event.old_domain: + raise ValueError("decision must select from its old domain") + elif event.kind == TRACE_PROPAGATION: + if event.phase not in TRACE_PHASES: + raise ValueError("propagation requires a phase") + if (event.phase == TRACE_INITIAL) != (event.cell is None): + raise ValueError("propagation cell does not match its phase") + if event.phase == TRACE_INITIAL and event.depth != 0: + raise ValueError("initial propagation must have depth zero") + elif event.kind == TRACE_CONFLICT: + if event.phase not in TRACE_PHASES or event.cell is None: + raise ValueError("conflict requires a phase and cell") + if event.cell >= len(domains) or domains[event.cell] != 0: + raise ValueError("conflict cell must have the empty domain") + elif event.kind == TRACE_RESULT: + if event is not trace.events[-1] or event.phase is not None: + raise ValueError("result must be the terminal phase-less event") + if event.status is not trace.status: + raise ValueError("result status does not match the trace") + if (trace.status is TilingSolveStatus.SAT) != (event.cell is None): + raise ValueError("result cell does not match the solve status") + + state = tuple(domains) + checkpoint = checkpoints.get(event.sequence) + if checkpoint is not None: + if checkpoint.change_mark != len(changes): + raise ValueError("checkpoint change_mark does not match replay") + if checkpoint.domains != state: + raise ValueError("checkpoint domains do not match replay") + states.append(state) + + recorded_sequences = {event.sequence for event in trace.events} + if any( + checkpoint.event_sequence not in recorded_sequences + for checkpoint in trace.checkpoints + ): + raise ValueError("checkpoint must reference a recorded event") + return tuple(states) diff --git a/python/native/solver_trace_adapter.py b/python/native/solver_trace_adapter.py new file mode 100644 index 0000000..3a50646 --- /dev/null +++ b/python/native/solver_trace_adapter.py @@ -0,0 +1,301 @@ +"""ctypes boundary for opt-in native Wang solver event traces.""" + +from __future__ import annotations + +from ctypes import ( + CDLL, + POINTER, + Structure, + byref, + c_bool, + c_int, + c_size_t, + c_uint32, + c_uint64, +) +from functools import cache + +from model.region import Region +from model.solver_trace import ( + SOLVER_OPTIMIZED, + SOLVER_REFERENCE, + TRACE_BACKTRACK, + TRACE_CONFLICT, + TRACE_DECISION, + TRACE_DOMAIN_REDUCTION, + TRACE_INITIAL, + TRACE_PROPAGATION, + TRACE_REASON_DECISION, + TRACE_REASON_PROPAGATION, + TRACE_RESULT, + TRACE_ROOT, + TRACE_SEARCH, + SolverTrace, + SolverTraceCheckpoint, + SolverTraceEvent, + replay_solver_trace, +) +from model.tiling import TilingSolveResult, TilingSolveStatus +from native._lib import library +from native.region_adapter import _Region, _YangZhangReduction +from native.witness_adapter import ( + NativeWitnessError, + _WangSolveResult, + _WangSolverOptions, + _adapt_solve_result, +) + + +_SIZE_MAX = c_size_t(-1).value +_EVENT_KINDS = { + 0: TRACE_ROOT, + 1: TRACE_PROPAGATION, + 2: TRACE_DECISION, + 3: TRACE_DOMAIN_REDUCTION, + 4: TRACE_CONFLICT, + 5: TRACE_BACKTRACK, + 6: TRACE_RESULT, +} +_PHASES = {0: None, 1: TRACE_INITIAL, 2: TRACE_SEARCH} +_REASONS = { + 0: None, + 1: TRACE_REASON_DECISION, + 2: TRACE_REASON_PROPAGATION, +} +_STATUSES = { + -1: None, + 0: TilingSolveStatus.UNSAT, + 1: TilingSolveStatus.SAT, +} + + +class _WangSolveTraceEvent(Structure): + _fields_ = [ + ("sequence", c_uint64), + ("kind", c_int), + ("phase", c_int), + ("reason", c_int), + ("depth", c_size_t), + ("cell_index", c_size_t), + ("change_mark", c_size_t), + ("old_domain", c_uint32), + ("new_domain", c_uint32), + ("status", c_int), + ] + + +class _WangSolveTraceCheckpoint(Structure): + _fields_ = [ + ("event_sequence", c_uint64), + ("change_mark", c_size_t), + ] + + +class _WangSolveTraceOptions(Structure): + _fields_ = [ + ("event_capacity", c_size_t), + ("checkpoint_interval", c_size_t), + ("checkpoint_capacity", c_size_t), + ] + + +class _WangSolveTrace(Structure): + _fields_ = [ + ("initial_domains", POINTER(c_uint32)), + ("domain_count", c_size_t), + ("events", POINTER(_WangSolveTraceEvent)), + ("event_count", c_size_t), + ("observed_event_count", c_uint64), + ("event_capacity", c_size_t), + ("truncated", c_bool), + ("checkpoints", POINTER(_WangSolveTraceCheckpoint)), + ("checkpoint_domains", POINTER(c_uint32)), + ("checkpoint_count", c_size_t), + ("checkpoint_interval", c_size_t), + ("checkpoint_capacity", c_size_t), + ("checkpoints_truncated", c_bool), + ] + + +class _WangTracedSolveResult(Structure): + _fields_ = [ + ("solve", _WangSolveResult), + ("trace", _WangSolveTrace), + ] + + +@cache +def _trace_library() -> CDLL: + lib = library() + arguments = [ + POINTER(_Region), + POINTER(_WangSolverOptions), + POINTER(_WangSolveTraceOptions), + POINTER(_WangTracedSolveResult), + ] + lib.wang_solve_serial_traced.argtypes = arguments + lib.wang_solve_serial_traced.restype = c_int + lib.wang_solve_optimized_traced.argtypes = arguments + lib.wang_solve_optimized_traced.restype = c_int + lib.wang_traced_solve_result_destroy.argtypes = [ + POINTER(_WangTracedSolveResult) + ] + lib.wang_traced_solve_result_destroy.restype = None + return lib + + +def _enum_value(mapping: dict[int, object], value: int, label: str) -> object: + try: + return mapping[value] + except KeyError as error: + raise NativeWitnessError( + f"native solver trace returned unknown {label} {value}" + ) from error + + +def _copy_trace( + native: _WangSolveTrace, + region: Region, + solver: str, + status: TilingSolveStatus, +) -> SolverTrace: + area = region.width * region.height + domain_count = int(native.domain_count) + event_count = int(native.event_count) + checkpoint_count = int(native.checkpoint_count) + if domain_count != area or not native.initial_domains: + raise NativeWitnessError("native solver trace returned malformed root state") + if event_count < 2 or event_count > int(native.event_capacity) or not native.events: + raise NativeWitnessError("native solver trace returned malformed event storage") + if checkpoint_count > int(native.checkpoint_capacity): + raise NativeWitnessError("native solver trace exceeded checkpoint capacity") + if checkpoint_count and ( + not native.checkpoints or not native.checkpoint_domains + ): + raise NativeWitnessError("native solver trace returned malformed checkpoints") + + initial_domains = tuple( + int(native.initial_domains[index]) for index in range(domain_count) + ) + events: list[SolverTraceEvent] = [] + for index in range(event_count): + item = native.events[index] + kind = _enum_value(_EVENT_KINDS, int(item.kind), "event kind") + assert type(kind) is str + phase = _enum_value(_PHASES, int(item.phase), "phase") + reason = _enum_value(_REASONS, int(item.reason), "reason") + event_status = _enum_value(_STATUSES, int(item.status), "status") + cell_index = int(item.cell_index) + cell = None if cell_index == _SIZE_MAX else cell_index + carries_domains = kind in (TRACE_DECISION, TRACE_DOMAIN_REDUCTION) + events.append( + SolverTraceEvent( + sequence=int(item.sequence), + kind=kind, + phase=phase if type(phase) is str else None, + reason=reason if type(reason) is str else None, + depth=int(item.depth), + cell=cell, + change_mark=int(item.change_mark), + old_domain=int(item.old_domain) if carries_domains else None, + new_domain=int(item.new_domain) if carries_domains else None, + status=( + event_status + if type(event_status) is TilingSolveStatus + else None + ), + ) + ) + + checkpoints = tuple( + SolverTraceCheckpoint( + event_sequence=int(native.checkpoints[index].event_sequence), + change_mark=int(native.checkpoints[index].change_mark), + domains=tuple( + int(native.checkpoint_domains[index * domain_count + cell]) + for cell in range(domain_count) + ), + ) + for index in range(checkpoint_count) + ) + return SolverTrace( + solver=solver, + status=status, + width=region.width, + height=region.height, + initial_domains=initial_domains, + events=tuple(events), + observed_event_count=int(native.observed_event_count), + event_capacity=int(native.event_capacity), + truncated=bool(native.truncated), + checkpoints=checkpoints, + checkpoint_interval=int(native.checkpoint_interval), + checkpoint_capacity=int(native.checkpoint_capacity), + checkpoints_truncated=bool(native.checkpoints_truncated), + ) + + +def _solve_native_traced( + native_reduction: _YangZhangReduction, + region: Region, + *, + optimized: bool, + event_capacity: int, + checkpoint_interval: int, + checkpoint_capacity: int, +) -> tuple[TilingSolveResult, SolverTrace]: + """Run one traced solve and copy all caller-owned native storage.""" + for name, value in ( + ("event_capacity", event_capacity), + ("checkpoint_interval", checkpoint_interval), + ("checkpoint_capacity", checkpoint_capacity), + ): + if type(value) is not int or value < 0: + raise ValueError(f"{name} must be a nonnegative integer") + if event_capacity < 2: + raise ValueError("event_capacity must be at least two") + if (checkpoint_interval == 0) != (checkpoint_capacity == 0): + raise ValueError( + "checkpoint_interval and checkpoint_capacity must be jointly set" + ) + + native_options = _WangSolveTraceOptions( + event_capacity=event_capacity, + checkpoint_interval=checkpoint_interval, + checkpoint_capacity=checkpoint_capacity, + ) + lib = _trace_library() + solve = ( + lib.wang_solve_optimized_traced + if optimized + else lib.wang_solve_serial_traced + ) + solver = SOLVER_OPTIMIZED if optimized else SOLVER_REFERENCE + native_result = _WangTracedSolveResult() + try: + status_code = solve( + byref(native_reduction.region), + None, + byref(native_options), + byref(native_result), + ) + result = _adapt_solve_result( + status_code, + native_result.solve, + region, + "traced native Wang solve", + ) + trace = _copy_trace(native_result.trace, region, solver, result.status) + if result.status is TilingSolveStatus.SAT and not trace.truncated: + assert result.tiling is not None + expected = tuple( + 0 if tile_id is None else 1 << tile_id + for tile_id in result.tiling + ) + if replay_solver_trace(trace)[-1] != expected: + raise NativeWitnessError( + "native solver trace does not replay to its SAT witness" + ) + return result, trace + finally: + lib.wang_traced_solve_result_destroy(byref(native_result)) diff --git a/python/native/trace_pipeline.py b/python/native/trace_pipeline.py new file mode 100644 index 0000000..656b711 --- /dev/null +++ b/python/native/trace_pipeline.py @@ -0,0 +1,63 @@ +"""One-lifetime native formula, reduction, solve, and trace orchestration.""" + +from model.formula import Formula +from model.reduction_explanation import ReductionExplanation +from model.region import Region +from model.solver_trace import SolverTrace +from model.tiling import TilingSolveResult, TilingSolveStatus +from model.tileset import TILESET +from native.formula_adapter import PathLike, _copy_formula, _loaded_formula +from native.region_adapter import ( + _built_explained_reduction, + _copy_reduction_explanation, + _copy_region, +) +from native.solver_trace_adapter import _solve_native_traced +from native.witness_adapter import NativeWitnessError +from oracles.tiling_check import is_valid_tiling + + +def solve_native_pipeline_trace( + path: PathLike, + *, + optimized: bool = False, + event_capacity: int = 20_000, + checkpoint_interval: int = 64, + checkpoint_capacity: int = 64, +) -> tuple[ + Formula, + Region, + ReductionExplanation, + TilingSolveResult, + SolverTrace, +]: + """Copy one observed native run before every C lifetime is released.""" + if type(optimized) is not bool: + raise TypeError("optimized must be a boolean") + + with _loaded_formula(path) as native_formula: + formula = _copy_formula(native_formula) + with _built_explained_reduction(native_formula) as native_reduction: + region = _copy_region(native_reduction.reduction.region) + explanation = _copy_reduction_explanation( + native_reduction, + int(native_formula.variable_count), + ) + result, trace = _solve_native_traced( + native_reduction.reduction, + region, + optimized=optimized, + event_capacity=event_capacity, + checkpoint_interval=checkpoint_interval, + checkpoint_capacity=checkpoint_capacity, + ) + if result.status is TilingSolveStatus.SAT: + if result.tiling is None or not is_valid_tiling( + region, + TILESET, + result.tiling, + ): + raise NativeWitnessError( + "traced native SAT tiling was rejected by the Python checker" + ) + return formula, region, explanation, result, trace diff --git a/python/oracles/boolean_solver.py b/python/oracles/boolean_solver.py index c507fc6..26d2f9a 100644 --- a/python/oracles/boolean_solver.py +++ b/python/oracles/boolean_solver.py @@ -8,9 +8,10 @@ from dataclasses import dataclass from enum import Enum -from z3 import Bool, If, Solver, Sum, is_true, sat, unsat +from z3 import Bool, BoolRef, If, Solver, Sum, is_true, sat, unsat from model.formula import Formula +from oracles.z3_config import configured_solver class BooleanSolveStatus(Enum): @@ -30,14 +31,18 @@ def __post_init__(self) -> None: raise ValueError("only SAT results carry an assignment") -def solve_boolean(formula: Formula) -> BooleanSolveResult: - """Solve ``formula`` while counting all three positions of each clause.""" +def _encode_boolean(formula: Formula) -> tuple[Solver, tuple[BoolRef, ...]]: + """Build the canonical variable and clause order used by this oracle.""" variables = [Bool(f"x_{index}") for index in range(formula.variable_count)] - - solver = Solver() - + solver = configured_solver(Solver()) for clause in formula.clauses: solver.add(Sum([If(variables[index], 1, 0) for index in clause]) == 1) + return solver, tuple(variables) + + +def solve_boolean(formula: Formula) -> BooleanSolveResult: + """Solve ``formula`` while counting all three positions of each clause.""" + solver, variables = _encode_boolean(formula) status = solver.check() diff --git a/python/oracles/tiling_solver.py b/python/oracles/tiling_solver.py index 35fb5de..24f2cf2 100644 --- a/python/oracles/tiling_solver.py +++ b/python/oracles/tiling_solver.py @@ -13,6 +13,7 @@ Tile, Tileset, ) +from oracles.z3_config import configured_solver def _validate_tileset(tileset: Tileset) -> None: @@ -59,18 +60,18 @@ def _edge_terms( return tuple(terms) -def solve_tiling(region: Region, tileset: Tileset) -> TilingSolveResult: - """Solve an existing region without parsing or rebuilding its reduction. - - Each cell is constrained to one tileset edge tuple and adjacent cells - share their internal edge-color term. SAT returns one dense row-major tile - ID per active cell and ``None`` for inactive cells; UNSAT and UNKNOWN - return no tiling. Duplicate edge tuples remain valid, constraint-equivalent - tile IDs. - """ +def _encode_tiling( + region: Region, + tileset: Tileset, +) -> tuple[ + Solver, + tuple[tuple[ArithRef, ArithRef, ArithRef, ArithRef] | None, ...], + dict[Tile, int], +]: + """Build the canonical row-major edge-table encoding used by the oracle.""" _validate_tileset(tileset) - solver = Solver() + solver = configured_solver(Solver()) edges = _edge_terms(region) tile_id_by_edges: dict[Tile, int] = {} for tile_id, tile in enumerate(tileset): @@ -96,6 +97,19 @@ def solve_tiling(region: Region, tileset: Tileset) -> TilingSolveResult: for direction, required_color in enumerate(region.boundary[index]): if required_color != COLOR_NONE: solver.add(cell_edges[direction] == required_color) + return solver, edges, tile_id_by_edges + + +def solve_tiling(region: Region, tileset: Tileset) -> TilingSolveResult: + """Solve an existing region without parsing or rebuilding its reduction. + + Each cell is constrained to one tileset edge tuple and adjacent cells + share their internal edge-color term. SAT returns one dense row-major tile + ID per active cell and ``None`` for inactive cells; UNSAT and UNKNOWN + return no tiling. Duplicate edge tuples remain valid, constraint-equivalent + tile IDs. + """ + solver, edges, tile_id_by_edges = _encode_tiling(region, tileset) status = solver.check() if status == sat: diff --git a/python/oracles/z3_config.py b/python/oracles/z3_config.py new file mode 100644 index 0000000..ca8d03c --- /dev/null +++ b/python/oracles/z3_config.py @@ -0,0 +1,28 @@ +"""Explicit reproducibility settings shared by the two Z3 oracles.""" + +from typing import Final + +from z3 import Solver, get_version_string + + +Z3_RANDOM_SEED: Final = 0 +Z3_THREADS: Final = 1 + + +def configured_solver(solver=None) -> Solver: + """Configure a supplied solver, or create one, with stable parameters.""" + if solver is None: + solver = Solver() + solver.set(random_seed=Z3_RANDOM_SEED, threads=Z3_THREADS) + return solver + + +def z3_configuration() -> dict[str, object]: + """Return the exact environment fields used by encoding summaries.""" + return { + "version": get_version_string(), + "parameters": { + "random_seed": Z3_RANDOM_SEED, + "threads": Z3_THREADS, + }, + } diff --git a/renderer/README.md b/renderer/README.md index 8ca15be..f5da873 100644 --- a/renderer/README.md +++ b/renderer/README.md @@ -134,6 +134,52 @@ Reduction spans describe the square construction itself, so this view rejects the signal permutation, and gadget bounds without importing native code or reconstructing builder geometry. +### Offline trace and algorithm animations + +The animation modules keep state interpretation separate from image encoding. +`wang_trace.py` loads a hash-bound `wang-explain-manifest-v3` and independently +replays its `observed` native events once. `wang_trace_render.py` selects and +composes frames from those replayed states. `wang_animation.py` receives only +completed RGB frames and writes deterministic atomic PNGs, a contact sheet, +and a presentation-only GIF: + +```bash +uv run --locked python wang_trace_render.py \ + ../tests/fixtures/pipeline_sat_solver_trace/manifest.json \ + output/solver-trace +``` + +Z3 uses a separate `encoding-order` summary. The renderer shows the explicit +project-owned row-major constraint construction and returned model, never an +internal Z3 search or debug trace: + +```bash +uv run --locked python wang_z3_summary.py \ + ../tests/fixtures/pipeline_sat_z3/wang-z3.json \ + output/z3-encoding +``` + +Three additional commands make their source semantics explicit: builder and +hex are `canonical-example` views over versioned data and pure checked +transformation respectively; optimized is a `didactic` overview whose dated +reports, not the animation, establish performance. + +```bash +uv run --locked python wang_algorithm_animation.py builder \ + ../tests/fixtures/pipeline_sat_reduction_explain/manifest.json \ + output/builder-routing +uv run --locked python wang_algorithm_animation.py optimized \ + output/optimized-mechanisms +uv run --locked python wang_algorithm_animation.py hex \ + ../tests/fixtures/wang_solution_v1_square_sat.json \ + output/square-to-hex +``` + +All loaders reject unknown fields and identity drift before rasterization. No +animation module imports native code; trace rendering and algorithm rendering +do not import Z3. PNG sources are the deterministic test oracles. GIFs exist +only for presentation, and every published animation has a static fallback. + ## Input Format ### palette.json @@ -282,9 +328,17 @@ Raises `RenderingException` on pipeline errors. ├── wang_hex_port.py # Pure square-to-hex reducer and independent checker ├── wang_snapshot.py # Strict static-snapshot consumer and view compositor ├── wang_explain.py # Shared colored-edge and legend drawing primitives +├── wang_trace.py # Strict observed-trace loader and offline replay +├── wang_trace_render.py # Trace frame selection and composition CLI +├── wang_z3_summary.py # Encoding-order summary consumer and compositor +├── wang_animation.py # Deterministic PNG/contact-sheet/GIF encoder +├── wang_algorithm_animation.py # Canonical and didactic algorithm views ├── test_wang_square.py # Square loader, raster, isolation, CLI, and failures ├── test_wang_hex.py # Port proof obligations, hex raster, golden, and CLI ├── test_wang_snapshot.py # Snapshot contracts, views, isolation, and goldens +├── test_wang_trace.py # Hash-bound replay, isolation, and byte stability +├── test_wang_z3_summary.py # Fixed encoding summaries and byte stability +├── test_wang_algorithm_animation.py # Source checks and animation goldens ├── input/ # Example input files (palette, scene, tiles, sprites) ├── output/ # Rendered PNG output goes here ├── test_data/ @@ -306,9 +360,9 @@ Raises `RenderingException` on pipeline errors. uv run --locked pytest -q ``` -The complete isolated suite has 238 tests: the 144 preserved legacy tests -below, 45 Wang square tests, 24 square-to-hex/hex-raster tests, and 25 static -snapshot/explainability tests. +The complete isolated suite has 253 tests: the 144 preserved legacy tests +below, 45 Wang square tests, 24 square-to-hex/hex-raster tests, 25 static +snapshot/explainability tests, and 15 trace/Z3/algorithm-animation tests. To run only the original upstream suite: ```bash diff --git a/renderer/UPSTREAM.md b/renderer/UPSTREAM.md index 0405b2f..ed45cf8 100644 --- a/renderer/UPSTREAM.md +++ b/renderer/UPSTREAM.md @@ -44,11 +44,11 @@ uv run --locked pytest -q ``` The import baseline remains 144 collected tests and 144 passing tests. The -combined local suite is 238 tests: 144 preserved legacy tests, 45 Wang square -tests, 24 square-to-hex/hex-raster tests, and 25 static -snapshot/explainability tests. Keep the renderer environment under -`renderer/.venv`; its local `.gitignore` excludes that environment and -generated Python/build files. +combined local suite is 253 tests: 144 preserved legacy tests, 45 Wang square +tests, 24 square-to-hex/hex-raster tests, 25 static +snapshot/explainability tests, and 15 trace/Z3/algorithm-animation tests. Keep +the renderer environment under `renderer/.venv`; its local `.gitignore` +excludes that environment and generated Python/build files. The preserved `renderer/.github/workflows/ci.yml` is nested upstream evidence; GitHub does not run it as a workflow of the containing repository. The diff --git a/renderer/test_wang_algorithm_animation.py b/renderer/test_wang_algorithm_animation.py new file mode 100644 index 0000000..ddcea16 --- /dev/null +++ b/renderer/test_wang_algorithm_animation.py @@ -0,0 +1,95 @@ +from __future__ import annotations + +from pathlib import Path + +from PIL import Image + +from wang_algorithm_animation import ( + main, + render_builder_assets, + render_hex_assets, + render_optimized_assets, +) + + +RENDERER = Path(__file__).resolve().parent +ROOT = RENDERER.parent +BUILDER_MANIFEST = ( + ROOT / "tests/fixtures/pipeline_sat_reduction_explain/manifest.json" +) +SQUARE_SOLUTION = ROOT / "tests/fixtures/wang_solution_v1_square_sat.json" +GOLDENS = ROOT / "docs/assets/images" + + +def _tree_bytes(directory: Path) -> dict[str, bytes]: + return { + path.relative_to(directory).as_posix(): path.read_bytes() + for path in directory.rglob("*") + if path.is_file() + } + + +def _assert_stable_assets( + first_directory: Path, + second_directory: Path, + golden_directory: Path, + *, + frame_count: int, + fallback_name: str, +) -> None: + assert _tree_bytes(first_directory) == _tree_bytes(second_directory) + assert _tree_bytes(first_directory) == _tree_bytes(golden_directory) + with Image.open(first_directory / "trace.gif") as animation: + assert animation.format == "GIF" + assert animation.n_frames == frame_count + assert (first_directory / fallback_name).is_file() + + +def test_builder_animation_uses_versioned_provenance_and_is_byte_stable(tmp_path): + first = render_builder_assets(BUILDER_MANIFEST, tmp_path / "first") + render_builder_assets(BUILDER_MANIFEST, tmp_path / "second") + + assert first.fallback.name == "frame-04.png" + _assert_stable_assets( + tmp_path / "first", + tmp_path / "second", + GOLDENS / "builder-routing", + frame_count=6, + fallback_name="frame-04.png", + ) + + +def test_optimized_didactic_animation_is_byte_stable(tmp_path): + first = render_optimized_assets(tmp_path / "first") + render_optimized_assets(tmp_path / "second") + + assert first.fallback.name == "frame-05.png" + _assert_stable_assets( + tmp_path / "first", + tmp_path / "second", + GOLDENS / "optimized-mechanisms", + frame_count=6, + fallback_name="frame-05.png", + ) + + +def test_hex_animation_checks_the_pure_port_and_is_byte_stable(tmp_path): + first = render_hex_assets(SQUARE_SOLUTION, tmp_path / "first") + render_hex_assets(SQUARE_SOLUTION, tmp_path / "second") + + assert first.fallback.name == "frame-02.png" + _assert_stable_assets( + tmp_path / "first", + tmp_path / "second", + GOLDENS / "square-to-hex", + frame_count=4, + fallback_name="frame-02.png", + ) + + +def test_cli_reports_animation_and_fallback(tmp_path, capsys): + assert main(["optimized", str(tmp_path)]) == 0 + assert capsys.readouterr().out.splitlines() == [ + f"animation={tmp_path / 'trace.gif'}", + f"fallback={tmp_path / 'frame-05.png'}", + ] diff --git a/renderer/test_wang_trace.py b/renderer/test_wang_trace.py new file mode 100644 index 0000000..5491494 --- /dev/null +++ b/renderer/test_wang_trace.py @@ -0,0 +1,167 @@ +from __future__ import annotations + +import hashlib +import json +from pathlib import Path +import shutil +import subprocess +import sys + +from PIL import Image +import pytest + +from wang_hex_port import WangSquareRenderError +from wang_trace import load_trace_bundle +from wang_trace_render import render_trace_assets + + +RENDERER = Path(__file__).resolve().parent +ROOT = RENDERER.parent +FIXTURE_DIRECTORY = ROOT / "tests/fixtures/pipeline_sat_solver_trace" +MANIFEST = FIXTURE_DIRECTORY / "manifest.json" +GOLDENS = ROOT / "docs/assets/images/solver-trace" + + +def _tree_bytes(directory: Path) -> dict[str, bytes]: + return { + path.relative_to(directory).as_posix(): path.read_bytes() + for path in directory.rglob("*") + if path.is_file() + } + + +def test_loads_and_replays_hash_bound_trace_without_solver_imports(): + bundle = load_trace_bundle(MANIFEST) + + assert bundle.trace.solver == "reference" + assert bundle.trace.status == "sat" + assert bundle.trace.observed_event_count == 2896 + assert len(bundle.trace.events) == 2896 + assert len(bundle.trace.checkpoints) == 22 + assert bundle.solution is not None + assert (bundle.trace.width, bundle.trace.height) == (41, 11) + assert "z3" not in sys.modules + assert not any(name.startswith("native") for name in sys.modules) + + +def test_one_composition_chain_is_byte_stable_for_png_sheet_and_gif(tmp_path): + first = render_trace_assets(MANIFEST, tmp_path / "first", max_frames=8) + second = render_trace_assets(MANIFEST, tmp_path / "second", max_frames=8) + + assert _tree_bytes(tmp_path / "first") == _tree_bytes(tmp_path / "second") + assert _tree_bytes(tmp_path / "first") == _tree_bytes(GOLDENS) + assert len(first.frames) == 8 + assert first.fallback.name == "frame-002517.png" + assert first.animation.name == "trace.gif" + assert first.contact_sheet.name == "contact-sheet.png" + with Image.open(first.frames[0]) as frame: + assert frame.mode == "RGB" + assert frame.size == (988, 414) + with Image.open(first.animation) as animation: + assert animation.format == "GIF" + assert animation.n_frames == 8 + + +def test_rejects_hash_tampering_before_parsing_trace(tmp_path): + copied = tmp_path / "bundle" + shutil.copytree(FIXTURE_DIRECTORY, copied) + manifest = json.loads((copied / "manifest.json").read_text(encoding="utf-8")) + trace_path = copied / manifest["artifacts"]["trace"]["path"] + trace_path.write_bytes(trace_path.read_bytes() + b" ") + + with pytest.raises(WangSquareRenderError, match="sha256"): + load_trace_bundle(copied / "manifest.json") + + +def test_rejects_semantic_delta_tampering_even_with_updated_hash(tmp_path): + copied = tmp_path / "bundle" + shutil.copytree(FIXTURE_DIRECTORY, copied) + manifest_path = copied / "manifest.json" + manifest = json.loads(manifest_path.read_text(encoding="utf-8")) + trace_path = copied / manifest["artifacts"]["trace"]["path"] + trace = json.loads(trace_path.read_text(encoding="utf-8")) + event = next( + item for item in trace["events"] if item["kind"] == "domain_reduction" + ) + event["old_domain"] ^= 1 + encoded = (json.dumps(trace, indent=2) + "\n").encode("utf-8") + trace_path.write_bytes(encoded) + manifest["artifacts"]["trace"]["sha256"] = hashlib.sha256(encoded).hexdigest() + manifest_path.write_text(json.dumps(manifest), encoding="utf-8") + + with pytest.raises(WangSquareRenderError, match="old_domain"): + load_trace_bundle(manifest_path) + + +def test_rejects_inactive_cell_state_even_with_updated_hash(tmp_path): + copied = tmp_path / "bundle" + shutil.copytree(FIXTURE_DIRECTORY, copied) + manifest_path = copied / "manifest.json" + manifest = json.loads(manifest_path.read_text(encoding="utf-8")) + region_path = copied / manifest["artifacts"]["region"]["path"] + trace_path = copied / manifest["artifacts"]["trace"]["path"] + region = json.loads(region_path.read_text(encoding="utf-8")) + trace = json.loads(trace_path.read_text(encoding="utf-8")) + inactive = region["active"].index(False) + trace["initial_domains"][inactive] = 1 + for checkpoint in trace["checkpoints"]: + checkpoint["domains"][inactive] = 1 + encoded = (json.dumps(trace, indent=2) + "\n").encode("utf-8") + trace_path.write_bytes(encoded) + manifest["artifacts"]["trace"]["sha256"] = hashlib.sha256(encoded).hexdigest() + manifest_path.write_text(json.dumps(manifest), encoding="utf-8") + + with pytest.raises(WangSquareRenderError, match="inactive cell"): + load_trace_bundle(manifest_path) + + +def test_rejects_false_truncation_and_nonsemantic_event_fields(tmp_path): + copied = tmp_path / "bundle" + shutil.copytree(FIXTURE_DIRECTORY, copied) + manifest_path = copied / "manifest.json" + manifest = json.loads(manifest_path.read_text(encoding="utf-8")) + trace_path = copied / manifest["artifacts"]["trace"]["path"] + trace = json.loads(trace_path.read_text(encoding="utf-8")) + trace["capacity"]["truncated"] = True + encoded = (json.dumps(trace, indent=2) + "\n").encode("utf-8") + trace_path.write_bytes(encoded) + manifest["artifacts"]["trace"]["sha256"] = hashlib.sha256(encoded).hexdigest() + manifest_path.write_text(json.dumps(manifest), encoding="utf-8") + with pytest.raises(WangSquareRenderError, match="sequence gap"): + load_trace_bundle(manifest_path) + + trace = json.loads( + (FIXTURE_DIRECTORY / manifest["artifacts"]["trace"]["path"]).read_text( + encoding="utf-8" + ) + ) + propagation = next(item for item in trace["events"] if item["kind"] == "propagation") + propagation["reason"] = "decision" + encoded = (json.dumps(trace, indent=2) + "\n").encode("utf-8") + trace_path.write_bytes(encoded) + manifest["artifacts"]["trace"]["sha256"] = hashlib.sha256(encoded).hexdigest() + manifest_path.write_text(json.dumps(manifest), encoding="utf-8") + with pytest.raises(WangSquareRenderError, match="reserved for reduction"): + load_trace_bundle(manifest_path) + + +def test_cli_runs_in_isolated_renderer_process(tmp_path): + completed = subprocess.run( + [ + sys.executable, + "wang_trace_render.py", + str(MANIFEST), + str(tmp_path / "rendered"), + "--max-frames", + "4", + ], + cwd=RENDERER, + check=False, + capture_output=True, + text=True, + ) + + assert completed.returncode == 0, completed.stderr + assert "animation=" in completed.stdout + assert (tmp_path / "rendered/trace.gif").is_file() + assert (tmp_path / "rendered/contact-sheet.png").is_file() diff --git a/renderer/test_wang_z3_summary.py b/renderer/test_wang_z3_summary.py new file mode 100644 index 0000000..9319699 --- /dev/null +++ b/renderer/test_wang_z3_summary.py @@ -0,0 +1,92 @@ +from __future__ import annotations + +import json +from pathlib import Path +import sys + +from PIL import Image +import pytest + +from wang_hex_port import WangSquareRenderError +from wang_z3_summary import load_z3_encoding_summary, render_wang_z3_assets + + +RENDERER = Path(__file__).resolve().parent +ROOT = RENDERER.parent +FIXTURES = ROOT / "tests/fixtures/pipeline_sat_z3" +GOLDENS = ROOT / "docs/assets/images/z3-encoding" + + +def _tree_bytes(directory: Path) -> dict[str, bytes]: + return { + path.relative_to(directory).as_posix(): path.read_bytes() + for path in directory.rglob("*") + if path.is_file() + } + + +def test_loads_both_closed_summaries_without_z3_or_native_imports(): + boolean = load_z3_encoding_summary(FIXTURES / "boolean-z3.json") + wang = load_z3_encoding_summary(FIXTURES / "wang-z3.json") + + assert boolean.engine == "boolean-z3" + assert boolean.assignment == (False, True, False) + assert wang.engine == "wang-z3" + assert (wang.width, wang.height) == (41, 11) + assert wang.edge_term_count == 944 + assert wang.shared_internal_edge_count == 832 + assert wang.cells is not None and len(wang.cells) == 451 + assert "z3" not in sys.modules + assert not any(name.startswith("native") for name in sys.modules) + + +def test_encoding_order_animation_is_byte_stable_and_matches_goldens(tmp_path): + source = FIXTURES / "wang-z3.json" + first = render_wang_z3_assets(source, tmp_path / "first") + render_wang_z3_assets(source, tmp_path / "second") + + assert _tree_bytes(tmp_path / "first") == _tree_bytes(tmp_path / "second") + assert _tree_bytes(tmp_path / "first") == _tree_bytes(GOLDENS) + assert first.fallback.name == "frame-03.png" + with Image.open(first.animation) as animation: + assert animation.format == "GIF" + assert animation.n_frames == 5 + + +def test_rejects_unknown_fields_and_cross_engine_region_identity(tmp_path): + source = json.loads( + (FIXTURES / "boolean-z3.json").read_text(encoding="utf-8") + ) + source["debug_order"] = [] + path = tmp_path / "unknown.json" + path.write_text(json.dumps(source), encoding="utf-8") + with pytest.raises(WangSquareRenderError, match="unknown fields"): + load_z3_encoding_summary(path) + + del source["debug_order"] + source["region_sha256"] = "0" * 64 + path.write_text(json.dumps(source), encoding="utf-8") + with pytest.raises(WangSquareRenderError, match="region_sha256"): + load_z3_encoding_summary(path) + + +def test_rejects_inconsistent_wang_model_and_statistics(tmp_path): + source = json.loads((FIXTURES / "wang-z3.json").read_text(encoding="utf-8")) + active_index = next( + index + for index, tile_id in enumerate(source["model"]["cells"]) + if tile_id is not None + ) + source["model"]["cells"][active_index] = source["encoding"][ + "unique_tile_tuple_count" + ] + path = tmp_path / "invalid.json" + path.write_text(json.dumps(source), encoding="utf-8") + with pytest.raises(WangSquareRenderError, match="canonical tile table"): + load_z3_encoding_summary(path) + + source = json.loads((FIXTURES / "wang-z3.json").read_text(encoding="utf-8")) + source["statistics"][1]["value"] += 1 + path.write_text(json.dumps(source), encoding="utf-8") + with pytest.raises(WangSquareRenderError, match="project-owned counters"): + load_z3_encoding_summary(path) diff --git a/renderer/wang_algorithm_animation.py b/renderer/wang_algorithm_animation.py new file mode 100644 index 0000000..53687ec --- /dev/null +++ b/renderer/wang_algorithm_animation.py @@ -0,0 +1,327 @@ +"""Canonical/didactic animations for non-trace pipeline algorithms.""" + +from __future__ import annotations + +import argparse +from pathlib import Path + +from PIL import Image, ImageDraw + +from wang_animation import AnimationOutputs, write_animation_assets +from wang_explain import ( + EXPLAIN_ACTIVE_RGB, + EXPLAIN_MUTED_RGB, + EXPLAIN_PANEL_RGB, + EXPLAIN_TEXT_RGB, + draw_explain_heading, + explain_font, +) +from wang_hex_port import WangSquareRenderError, check_square_to_hex, reduce_square_to_hex +from wang_snapshot import load_explainability_bundle +from wang_square import load_wang_presentation + + +_GADGET_COLORS = { + "variable": (75, 137, 201), + "left_forward": (89, 170, 122), + "crossover": (234, 168, 61), + "right_forward": (169, 112, 191), + "clause": (214, 91, 91), +} +_OPTIMIZATIONS = ( + ("Dynamic DFS stack", "grow from 16 frames instead of reserving all active cells"), + ("Initial trail omission", "do not store undo entries that search cannot consume"), + ("SAT ownership transfer", "publish the verified domain buffer without a result copy"), + ("Byte support table", "aggregate compatible tiles through three byte lookups"), + ("Queue deduplication", "suppress an enqueue while the cell is already pending"), +) + + +def _base_frame(title: str, subtitle: str, size: tuple[int, int]) -> tuple[Image.Image, ImageDraw.ImageDraw]: + image = Image.new("RGB", size, EXPLAIN_PANEL_RGB) + draw = ImageDraw.Draw(image) + draw_explain_heading(draw, (18, 16), title=title, subtitle=subtitle) + return image, draw + + +def _builder_frame(bundle: object, stage: int) -> Image.Image: + reduction = bundle.reduction + assert reduction is not None + image, draw = _base_frame( + "Yang-Zhang construction provenance", + f"canonical-example stage {stage + 1}/6 | actual gadget spans, not a timed builder trace", + (980, 390), + ) + origin_x, origin_y, cell = 18, 92, 15 + grid_width = bundle.region.width * cell + grid_height = bundle.region.height * cell + for index, active in enumerate(bundle.region.active): + x = origin_x + (index % bundle.region.width) * cell + y = origin_y + (index // bundle.region.width) * cell + fill = (232, 235, 240) if active else (198, 204, 214) + draw.rectangle((x, y, x + cell - 1, y + cell - 1), fill=fill, outline=(187, 193, 203)) + + visible_kinds = ( + (), + ("variable",), + ("variable", "left_forward"), + ("variable", "left_forward", "crossover"), + ("variable", "left_forward", "crossover", "right_forward"), + tuple(_GADGET_COLORS), + )[stage] + for gadget in reduction.gadgets: + if gadget.kind not in visible_kinds: + continue + x0 = origin_x + gadget.x_begin * cell + y0 = origin_y + gadget.y_begin * cell + x1 = origin_x + gadget.x_end * cell - 1 + y1 = origin_y + gadget.y_end * cell - 1 + draw.rectangle((x0, y0, x1, y1), outline=_GADGET_COLORS[gadget.kind], width=3) + + legend_x = origin_x + grid_width + 24 + draw.text((legend_x, 92), "Native sidecar spans", font=explain_font(14), fill=EXPLAIN_TEXT_RGB) + y = 126 + for kind, color in _GADGET_COLORS.items(): + draw.rectangle((legend_x, y, legend_x + 18, y + 18), fill=color) + count = sum(gadget.kind == kind for gadget in reduction.gadgets) + draw.text( + (legend_x + 27, y + 2), + f"{kind.replace('_', ' ')}: {count}", + font=explain_font(10), + fill=EXPLAIN_TEXT_RGB if kind in visible_kinds else EXPLAIN_MUTED_RGB, + ) + y += 29 + draw.text( + (legend_x, y + 10), + f"signals: {len(reduction.source_signals)}\nswaps: " + f"{sum(g.kind == 'crossover' for g in reduction.gadgets)}", + font=explain_font(10), + fill=EXPLAIN_TEXT_RGB, + spacing=7, + ) + draw.text( + (18, 368), + "The provenance describes construction; Region remains presentation-neutral.", + font=explain_font(9), + fill=EXPLAIN_MUTED_RGB, + ) + return image + + +def render_builder_assets( + manifest_path: str | Path, + output_directory: str | Path, + *, + duration_ms: int = 750, +) -> AnimationOutputs: + bundle = load_explainability_bundle(manifest_path) + if bundle.reduction is None: + raise WangSquareRenderError("builder animation requires reduction provenance") + frames = tuple(_builder_frame(bundle, stage) for stage in range(6)) + return write_animation_assets( + frames, + tuple(f"frame-{stage:02d}.png" for stage in range(6)), + output_directory, + fallback_index=4, + duration_ms=duration_ms, + ) + + +def _optimized_frame(stage: int) -> Image.Image: + image, draw = _base_frame( + "Optimized serial mechanisms", + f"didactic stage {stage + 1}/6 | storage/work changes only; search semantics stay shared", + (960, 430), + ) + draw.text( + (18, 82), + "Reference baseline", + font=explain_font(14), + fill=EXPLAIN_TEXT_RGB, + ) + draw.rounded_rectangle( + (18, 106, 245, 392), + radius=7, + fill=(239, 241, 245), + outline=(170, 177, 190), + ) + baseline = ( + "direct set-tile support loop", + "duplicate-accepting FIFO", + "initial trail entries", + "full DFS frame reserve", + "verified SAT result copy", + ) + y = 130 + for line in baseline: + draw.text((34, y), line, font=explain_font(10), fill=EXPLAIN_MUTED_RGB) + y += 46 + + draw.text((276, 82), "Retained optimized path", font=explain_font(14), fill=EXPLAIN_TEXT_RGB) + for index, (name, description) in enumerate(_OPTIMIZATIONS): + y = 106 + index * 57 + active = index < stage + current = index == stage - 1 + draw.rounded_rectangle( + (276, y, 928, y + 45), + radius=6, + fill=(213, 237, 224) if active else (240, 242, 246), + outline=(52, 145, 94) if current else (181, 188, 199), + width=2 if current else 1, + ) + draw.text( + (290, y + 6), + name, + font=explain_font(11), + fill=EXPLAIN_TEXT_RGB if active else EXPLAIN_MUTED_RGB, + ) + draw.text( + (472, y + 8), + description, + font=explain_font(9), + fill=EXPLAIN_TEXT_RGB if active else EXPLAIN_MUTED_RGB, + ) + draw.text( + (276, 400), + "Measured reports establish benefit separately; this animation claims no speedup.", + font=explain_font(9), + fill=EXPLAIN_MUTED_RGB, + ) + return image + + +def render_optimized_assets( + output_directory: str | Path, + *, + duration_ms: int = 750, +) -> AnimationOutputs: + frames = tuple(_optimized_frame(stage) for stage in range(6)) + return write_animation_assets( + frames, + tuple(f"frame-{stage:02d}.png" for stage in range(6)), + output_directory, + fallback_index=5, + duration_ms=duration_ms, + ) + + +def _draw_square_tile(draw: ImageDraw.ImageDraw, origin: tuple[int, int], edges: tuple[int, ...]) -> None: + x, y = origin + draw.rectangle((x, y, x + 122, y + 122), fill=EXPLAIN_ACTIVE_RGB, outline=(35, 39, 47), width=3) + positions = ((x + 51, y + 6), (x + 105, y + 55), (x + 51, y + 104), (x + 7, y + 55)) + for label, position in zip((f"N={edges[0]}", f"E={edges[1]}", f"S={edges[2]}", f"W={edges[3]}"), positions, strict=True): + draw.text(position, label, font=explain_font(10), fill=EXPLAIN_TEXT_RGB) + + +def _draw_hex_tile(draw: ImageDraw.ImageDraw, origin: tuple[int, int], edges: tuple[int, ...]) -> None: + x, y = origin + vertices = ((x + 62, y), (x + 122, y + 34), (x + 122, y + 94), (x + 62, y + 128), (x + 2, y + 94), (x + 2, y + 34)) + draw.polygon(vertices, fill=EXPLAIN_ACTIVE_RGB, outline=(35, 39, 47)) + labels = ( + (f"E={edges[0]}", (x + 98, y + 58)), + (f"SE={edges[1]}", (x + 78, y + 102)), + (f"SW={edges[2]}", (x + 20, y + 102)), + (f"W={edges[3]}", (x + 7, y + 58)), + (f"NW={edges[4]}", (x + 18, y + 18)), + (f"NE={edges[5]}", (x + 77, y + 18)), + ) + for label, position in labels: + draw.text(position, label, font=explain_font(9), fill=EXPLAIN_TEXT_RGB) + + +def _hex_frame(square: object, port: object, stage: int) -> Image.Image: + image, draw = _base_frame( + "Square-to-hex presentation port", + f"canonical-example stage {stage + 1}/4 | pure Basire/Culik witness mapping", + (920, 430), + ) + source_edges = square.tile_edges[0] + target_edges = port.tile_edges[0] + _draw_square_tile(draw, (45, 122), source_edges) + if stage >= 1: + draw.line((190, 184, 366, 184), fill=(55, 126, 168), width=4) + draw.polygon(((366, 184), (350, 174), (350, 194)), fill=(55, 126, 168)) + draw.text( + (210, 140), + "H(N,E,S,W) =\n(E,S,kappa,W,N,kappa)", + font=explain_font(12), + fill=EXPLAIN_TEXT_RGB, + spacing=5, + ) + if stage >= 2: + _draw_hex_tile(draw, (402, 119), target_edges) + draw.rounded_rectangle((580, 102, 892, 374), radius=7, fill=(239, 242, 246), outline=(181, 188, 199)) + lines = [ + f"square tiles: {len(square.tile_edges)}", + f"hex tiles: {len(port.tile_edges)}", + f"fresh kappa: {port.fresh_color}", + f"cells preserved: {len(square.cells)}", + f"holes preserved: {square.cells.count(None)}", + ] + if stage == 3: + lines.extend(("inverse projection: checked", "six-side matching: checked")) + y = 126 + for line in lines: + draw.text((600, y), line, font=explain_font(11), fill=EXPLAIN_TEXT_RGB) + y += 31 + draw.text( + (18, 400), + "The port preserves a verified square witness; raster output is not a correctness oracle.", + font=explain_font(9), + fill=EXPLAIN_MUTED_RGB, + ) + return image + + +def render_hex_assets( + solution_path: str | Path, + output_directory: str | Path, + *, + duration_ms: int = 850, +) -> AnimationOutputs: + square = load_wang_presentation(solution_path) + port = reduce_square_to_hex(square) + check_square_to_hex(square, port) + frames = tuple(_hex_frame(square, port, stage) for stage in range(4)) + return write_animation_assets( + frames, + tuple(f"frame-{stage:02d}.png" for stage in range(4)), + output_directory, + fallback_index=2, + duration_ms=duration_ms, + ) + + +def _parser() -> argparse.ArgumentParser: + parser = argparse.ArgumentParser(description="render canonical algorithm animations") + subparsers = parser.add_subparsers(dest="mode", required=True) + builder = subparsers.add_parser("builder") + builder.add_argument("manifest", type=Path) + builder.add_argument("output_directory", type=Path) + optimized = subparsers.add_parser("optimized") + optimized.add_argument("output_directory", type=Path) + hex_parser = subparsers.add_parser("hex") + hex_parser.add_argument("solution", type=Path) + hex_parser.add_argument("output_directory", type=Path) + return parser + + +def main(arguments: list[str] | None = None) -> int: + parser = _parser() + args = parser.parse_args(arguments) + try: + if args.mode == "builder": + outputs = render_builder_assets(args.manifest, args.output_directory) + elif args.mode == "optimized": + outputs = render_optimized_assets(args.output_directory) + else: + outputs = render_hex_assets(args.solution, args.output_directory) + except (FileNotFoundError, WangSquareRenderError) as error: + parser.error(str(error)) + print(f"animation={outputs.animation}") + print(f"fallback={outputs.fallback}") + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/renderer/wang_animation.py b/renderer/wang_animation.py new file mode 100644 index 0000000..ac06e51 --- /dev/null +++ b/renderer/wang_animation.py @@ -0,0 +1,118 @@ +"""Shared deterministic PNG/contact-sheet/GIF encoding for renderer frames.""" + +from __future__ import annotations + +from dataclasses import dataclass +import os +from pathlib import Path +import tempfile + +import numpy as np +from PIL import Image + +from wang_explain import EXPLAIN_OUTLINE_RGB +from wang_hex_port import WangSquareRenderError +from wang_square import MAX_CANVAS_PIXELS, MAX_CANVAS_SIDE, _save_png_atomic + + +@dataclass(frozen=True, slots=True) +class AnimationOutputs: + frames: tuple[Path, ...] + fallback: Path + contact_sheet: Path + animation: Path + + +def _save_gif_atomic( + frames: tuple[Image.Image, ...], + path: Path, + duration_ms: int, +) -> None: + temporary: Path | None = None + try: + with tempfile.NamedTemporaryFile( + mode="wb", + dir=path.parent, + prefix=f".{path.name}.", + suffix=".tmp", + delete=False, + ) as stream: + temporary = Path(stream.name) + frames[0].save( + temporary, + format="GIF", + save_all=True, + append_images=list(frames[1:]), + duration=duration_ms, + loop=0, + disposal=2, + optimize=False, + ) + os.replace(temporary, path) + temporary = None + finally: + if temporary is not None: + try: + temporary.unlink() + except FileNotFoundError: + pass + + +def write_animation_assets( + frames: tuple[Image.Image, ...], + frame_names: tuple[str, ...], + output_directory: str | Path, + *, + fallback_index: int, + duration_ms: int, +) -> AnimationOutputs: + """Encode one composed frame sequence without reconstructing any frame.""" + if not frames or len(frames) != len(frame_names): + raise WangSquareRenderError("animation frames and names must align") + if any(frame.mode != "RGB" or frame.size != frames[0].size for frame in frames): + raise WangSquareRenderError("animation frames must share one RGB extent") + if len(set(frame_names)) != len(frame_names) or any( + not name or Path(name).name != name or not name.endswith(".png") + for name in frame_names + ): + raise WangSquareRenderError("animation frame names must be unique PNG basenames") + if type(fallback_index) is not int or not 0 <= fallback_index < len(frames): + raise WangSquareRenderError("animation fallback index lies outside frames") + if type(duration_ms) is not int or not 40 <= duration_ms <= 10_000: + raise WangSquareRenderError("duration_ms must be in [40, 10000]") + + destination = Path(output_directory) + destination.mkdir(parents=True, exist_ok=True) + frame_paths: list[Path] = [] + for frame, name in zip(frames, frame_names, strict=True): + path = destination / name + _save_png_atomic(np.asarray(frame, dtype=np.uint8), path) + frame_paths.append(path) + + columns = min(3, len(frames)) + rows = (len(frames) + columns - 1) // columns + frame_width, frame_height = frames[0].size + sheet_width = columns * frame_width + sheet_height = rows * frame_height + if ( + sheet_width > MAX_CANVAS_SIDE + or sheet_height > MAX_CANVAS_SIDE + or sheet_width * sheet_height > MAX_CANVAS_PIXELS + ): + raise WangSquareRenderError("animation contact sheet exceeds canvas limits") + sheet = Image.new("RGB", (sheet_width, sheet_height), EXPLAIN_OUTLINE_RGB) + for index, frame in enumerate(frames): + sheet.paste( + frame, + ((index % columns) * frame_width, (index // columns) * frame_height), + ) + contact_path = destination / "contact-sheet.png" + _save_png_atomic(np.asarray(sheet, dtype=np.uint8), contact_path) + animation_path = destination / "trace.gif" + _save_gif_atomic(frames, animation_path, duration_ms) + return AnimationOutputs( + frames=tuple(frame_paths), + fallback=frame_paths[fallback_index], + contact_sheet=contact_path, + animation=animation_path, + ) diff --git a/renderer/wang_trace.py b/renderer/wang_trace.py new file mode 100644 index 0000000..f566a68 --- /dev/null +++ b/renderer/wang_trace.py @@ -0,0 +1,668 @@ +"""Strict offline validation and replay for solver trace v1. + +The consumer is presentation-only: it loads hash-bound JSON, independently +replays the recorded semantic deltas. Raster composition and animation live +in separate downstream modules. This imports neither native code nor solvers. +""" + +from __future__ import annotations + +from dataclasses import dataclass +import hashlib +from pathlib import Path +from typing import Final + +from wang_hex_port import WangPresentation, WangSquareRenderError +from wang_snapshot import ( + FORMULA_SCHEMA, + REDUCTION_SCHEMA, + REGION_SCHEMA, + TILESET_SCHEMA, + ExplainabilityBundle, + _array, + _basename, + _fields, + _integer, + _load_json_bytes, + _object, + _parse_formula, + _parse_reduction, + _parse_region, + _parse_tileset, + _read_bytes, + _sha256, + _string, +) +from wang_square import SCHEMA_NAME as SOLUTION_SCHEMA +from wang_square import _project_wang_presentation + + +TRACE_SCHEMA: Final = "wang-solver-trace-v1" +MANIFEST_SCHEMA: Final = "wang-explain-manifest-v3" +_TRACE_STAGE: Final = "solver-trace" +_SEMANTICS: Final = "observed" +_DOMAIN_ALL: Final = (1 << 23) - 1 +_KINDS: Final = frozenset( + { + "root", + "propagation", + "decision", + "domain_reduction", + "conflict", + "backtrack", + "result", + } +) +_PHASES: Final = frozenset({"initial", "search"}) +_REASONS: Final = frozenset({"decision", "propagation"}) +_SOLVERS: Final = frozenset({"reference", "optimized"}) +_STATUSES: Final = frozenset({"sat", "unsat"}) +_EVENT_FIELDS: Final = frozenset( + { + "sequence", + "kind", + "phase", + "reason", + "depth", + "cell", + "change_mark", + "old_domain", + "new_domain", + "status", + } +) + + +@dataclass(frozen=True, slots=True) +class TraceEvent: + sequence: int + kind: str + phase: str | None + reason: str | None + depth: int + cell: int | None + change_mark: int + old_domain: int | None + new_domain: int | None + status: str | None + + +@dataclass(frozen=True, slots=True) +class TraceCheckpoint: + event_sequence: int + change_mark: int + domains: tuple[int, ...] + + +@dataclass(frozen=True, slots=True) +class TraceSnapshot: + solver: str + status: str + source_formula_sha256: str + region_sha256: str + solution_sha256: str | None + width: int + height: int + event_capacity: int + observed_event_count: int + truncated: bool + checkpoint_interval: int + checkpoint_capacity: int + checkpoints_truncated: bool + initial_domains: tuple[int, ...] + events: tuple[TraceEvent, ...] + checkpoints: tuple[TraceCheckpoint, ...] + + +@dataclass(frozen=True, slots=True) +class TraceBundle: + explanation: ExplainabilityBundle + trace: TraceSnapshot + solution: WangPresentation | None + + +def _check_reduction_formula_identity( + bundle: ExplainabilityBundle, +) -> None: + reduction = bundle.reduction + assert reduction is not None + variable_count = bundle.formula.variable_count + expected_source: list[tuple[str, int, int | None, int | None]] = [] + for variable in range(variable_count): + expected_source.extend( + ("variable", 3 * variable + occurrence, variable, occurrence) + for occurrence in range(3) + ) + if variable + 1 < variable_count: + expected_source.append( + ("redundant", 3 * variable_count + variable, None, None) + ) + expected_target: list[tuple[str, int, int | None, int | None]] = [] + next_occurrence = [0] * variable_count + for clause_id, clause in enumerate(bundle.formula.clauses): + for variable in clause: + occurrence = next_occurrence[variable] + next_occurrence[variable] += 1 + expected_target.append( + ("variable", 3 * variable + occurrence, variable, occurrence) + ) + if clause_id + 1 < variable_count: + expected_target.append( + ("redundant", 3 * variable_count + clause_id, None, None) + ) + if tuple(expected_source) != tuple( + signal.identity for signal in reduction.source_signals + ): + _fail("reduction $.signals.source", "does not match formula") + if tuple(expected_target) != tuple( + signal.identity for signal in reduction.target_signals + ): + _fail("reduction $.signals.target", "does not match formula") + + +def _fail(path: str, message: str) -> None: + raise WangSquareRenderError(f"solver trace {path}: {message}") + + +def _optional_string(value: object, path: str) -> str | None: + if value is None: + return None + return _string(value, path) + + +def _optional_integer(value: object, path: str) -> int | None: + if value is None: + return None + return _integer(value, path, nonnegative=True) + + +def _boolean(value: object, path: str) -> bool: + if type(value) is not bool: + _fail(path, "must be a boolean") + return value + + +def _domain(value: object, path: str) -> int: + domain = _integer(value, path, nonnegative=True) + if domain > _DOMAIN_ALL: + _fail(path, "exceeds the 23-tile Wang domain") + return domain + + +def _reference( + value: object, + path: str, + expected_schema: str, +) -> tuple[str, str]: + reference = _object(value, path) + _fields(reference, frozenset({"path", "sha256", "schema"}), path) + name = _basename(reference["path"], f"{path}.path") + digest = _sha256(reference["sha256"], f"{path}.sha256") + if _string(reference["schema"], f"{path}.schema") != expected_schema: + _fail(f"{path}.schema", f"must equal {expected_schema!r}") + return name, digest + + +def _parse_event(value: object, path: str) -> TraceEvent: + event = _object(value, path) + _fields(event, _EVENT_FIELDS, path) + kind = _string(event["kind"], f"{path}.kind") + if kind not in _KINDS: + _fail(f"{path}.kind", "is not a supported event kind") + phase = _optional_string(event["phase"], f"{path}.phase") + if phase is not None and phase not in _PHASES: + _fail(f"{path}.phase", "is not a supported phase") + reason = _optional_string(event["reason"], f"{path}.reason") + if reason is not None and reason not in _REASONS: + _fail(f"{path}.reason", "is not a supported reason") + status = _optional_string(event["status"], f"{path}.status") + if status is not None and status not in _STATUSES: + _fail(f"{path}.status", "is not a terminal status") + return TraceEvent( + sequence=_integer(event["sequence"], f"{path}.sequence", nonnegative=True), + kind=kind, + phase=phase, + reason=reason, + depth=_integer(event["depth"], f"{path}.depth", nonnegative=True), + cell=_optional_integer(event["cell"], f"{path}.cell"), + change_mark=_integer( + event["change_mark"], f"{path}.change_mark", nonnegative=True + ), + old_domain=( + None + if event["old_domain"] is None + else _domain(event["old_domain"], f"{path}.old_domain") + ), + new_domain=( + None + if event["new_domain"] is None + else _domain(event["new_domain"], f"{path}.new_domain") + ), + status=status, + ) + + +def _parse_trace(document: dict[str, object]) -> TraceSnapshot: + _fields( + document, + frozenset( + { + "schema", + "semantics", + "solver", + "status", + "geometry", + "source_formula_sha256", + "region_sha256", + "solution_sha256", + "layout", + "capacity", + "initial_domains", + "events", + "checkpoints", + } + ), + "trace $", + ) + for field, expected in ( + ("schema", TRACE_SCHEMA), + ("semantics", _SEMANTICS), + ("geometry", "square"), + ): + if _string(document[field], f"trace $.{field}") != expected: + _fail(f"trace $.{field}", f"must equal {expected!r}") + solver = _string(document["solver"], "trace $.solver") + status = _string(document["status"], "trace $.status") + if solver not in _SOLVERS or status not in _STATUSES: + _fail("trace $", "has an unsupported solver or status") + source_digest = _sha256( + document["source_formula_sha256"], "trace $.source_formula_sha256" + ) + region_digest = _sha256(document["region_sha256"], "trace $.region_sha256") + solution_digest = document["solution_sha256"] + if solution_digest is not None: + solution_digest = _sha256(solution_digest, "trace $.solution_sha256") + if (status == "sat") != (solution_digest is not None): + _fail("trace $.solution_sha256", "must be present exactly for SAT") + + layout = _object(document["layout"], "trace $.layout") + _fields( + layout, + frozenset({"width", "height", "tile_count", "indexing"}), + "trace $.layout", + ) + width = _integer(layout["width"], "trace $.layout.width", nonnegative=True) + height = _integer( + layout["height"], "trace $.layout.height", nonnegative=True + ) + if width == 0 or height == 0: + _fail("trace $.layout", "dimensions must be positive") + if layout["tile_count"] != 23 or type(layout["tile_count"]) is not int: + _fail("trace $.layout.tile_count", "must equal 23") + if layout["indexing"] != "row-major": + _fail("trace $.layout.indexing", "must equal 'row-major'") + + capacity = _object(document["capacity"], "trace $.capacity") + _fields( + capacity, + frozenset( + { + "event_capacity", + "observed_event_count", + "truncated", + "checkpoint_interval", + "checkpoint_capacity", + "checkpoints_truncated", + } + ), + "trace $.capacity", + ) + initial = tuple( + _domain(item, f"trace $.initial_domains[{index}]") + for index, item in enumerate( + _array(document["initial_domains"], "trace $.initial_domains") + ) + ) + events = tuple( + _parse_event(item, f"trace $.events[{index}]") + for index, item in enumerate(_array(document["events"], "trace $.events")) + ) + checkpoints: list[TraceCheckpoint] = [] + for index, raw in enumerate( + _array(document["checkpoints"], "trace $.checkpoints") + ): + path = f"trace $.checkpoints[{index}]" + checkpoint = _object(raw, path) + _fields( + checkpoint, + frozenset({"event_sequence", "change_mark", "domains"}), + path, + ) + checkpoints.append( + TraceCheckpoint( + event_sequence=_integer( + checkpoint["event_sequence"], + f"{path}.event_sequence", + nonnegative=True, + ), + change_mark=_integer( + checkpoint["change_mark"], + f"{path}.change_mark", + nonnegative=True, + ), + domains=tuple( + _domain(item, f"{path}.domains[{domain_index}]") + for domain_index, item in enumerate( + _array(checkpoint["domains"], f"{path}.domains") + ) + ), + ) + ) + trace = TraceSnapshot( + solver=solver, + status=status, + source_formula_sha256=source_digest, + region_sha256=region_digest, + solution_sha256=solution_digest, + width=width, + height=height, + event_capacity=_integer( + capacity["event_capacity"], + "trace $.capacity.event_capacity", + nonnegative=True, + ), + observed_event_count=_integer( + capacity["observed_event_count"], + "trace $.capacity.observed_event_count", + nonnegative=True, + ), + truncated=_boolean(capacity["truncated"], "trace $.capacity.truncated"), + checkpoint_interval=_integer( + capacity["checkpoint_interval"], + "trace $.capacity.checkpoint_interval", + nonnegative=True, + ), + checkpoint_capacity=_integer( + capacity["checkpoint_capacity"], + "trace $.capacity.checkpoint_capacity", + nonnegative=True, + ), + checkpoints_truncated=_boolean( + capacity["checkpoints_truncated"], + "trace $.capacity.checkpoints_truncated", + ), + initial_domains=initial, + events=events, + checkpoints=tuple(checkpoints), + ) + replay_trace(trace) + return trace + + +def replay_trace(trace: TraceSnapshot) -> tuple[tuple[int, ...], ...]: + area = trace.width * trace.height + if len(trace.initial_domains) != area: + _fail("trace $.initial_domains", "length must equal layout area") + if trace.event_capacity < 2 or not 2 <= len(trace.events) <= trace.event_capacity: + _fail("trace $.events", "must fit an event capacity of at least two") + terminal = trace.events[-1] + if trace.events[0].kind != "root" or terminal.kind != "result": + _fail("trace $.events", "must start at root and end at result") + if terminal.status != trace.status: + _fail("trace $.events", "terminal status does not match trace") + if terminal.sequence + 1 != trace.observed_event_count: + _fail("trace $.capacity.observed_event_count", "does not follow result") + if trace.truncated and terminal.sequence <= len(trace.events) - 1: + _fail("trace $.events", "truncated trace must contain a sequence gap") + if not trace.truncated and trace.observed_event_count != len(trace.events): + _fail("trace $.events", "complete trace cannot contain a sequence gap") + for index, event in enumerate(trace.events[:-1]): + if event.sequence != index: + _fail(f"trace $.events[{index}].sequence", "breaks prefix order") + + domains = list(trace.initial_domains) + changes: list[tuple[int, int]] = [] + states: list[tuple[int, ...]] = [] + checkpoints = {item.event_sequence: item for item in trace.checkpoints} + if len(checkpoints) != len(trace.checkpoints): + _fail("trace $.checkpoints", "event sequences must be unique") + expected_checkpoint_sequences = tuple( + trace.checkpoint_interval * (index + 1) - 1 + for index in range(len(trace.checkpoints)) + ) + if tuple(checkpoints) != expected_checkpoint_sequences: + _fail("trace $.checkpoints", "does not follow checkpoint_interval") + if (trace.checkpoint_interval == 0) != (trace.checkpoint_capacity == 0): + _fail("trace $.capacity", "checkpoint settings must be jointly enabled") + if len(trace.checkpoints) > trace.checkpoint_capacity: + _fail("trace $.checkpoints", "exceeds checkpoint_capacity") + checkpoint_opportunities = ( + 0 + if trace.checkpoint_interval == 0 + else (len(trace.events) - int(trace.truncated)) + // trace.checkpoint_interval + ) + if len(trace.checkpoints) != min( + checkpoint_opportunities, + trace.checkpoint_capacity, + ): + _fail("trace $.checkpoints", "count does not match recorded events") + if trace.checkpoints_truncated != ( + checkpoint_opportunities > trace.checkpoint_capacity + ): + _fail("trace $.capacity.checkpoints_truncated", "is inconsistent") + + for index, event in enumerate(trace.events): + if event.kind != "result" and event.status is not None: + _fail(f"trace $.events[{index}].status", "is reserved for result") + if event.kind != "domain_reduction" and event.reason is not None: + _fail(f"trace $.events[{index}].reason", "is reserved for reduction") + if event.kind not in ("decision", "domain_reduction") and ( + event.old_domain is not None or event.new_domain is not None + ): + _fail(f"trace $.events[{index}]", "must not publish domains") + if event.kind == "root": + if index != 0 or event.phase != "initial" or event.cell is not None: + _fail(f"trace $.events[{index}]", "root fields are inconsistent") + if event.change_mark != 0 or event.depth != 0: + _fail(f"trace $.events[{index}]", "root counters must equal zero") + elif event.kind == "domain_reduction": + if event.phase not in _PHASES or event.reason not in _REASONS: + _fail(f"trace $.events[{index}]", "reduction needs phase and reason") + if event.cell is None or event.cell >= area: + _fail(f"trace $.events[{index}].cell", "lies outside layout") + if event.old_domain is None or event.new_domain is None: + _fail(f"trace $.events[{index}]", "reduction needs both domains") + if domains[event.cell] != event.old_domain: + _fail(f"trace $.events[{index}].old_domain", "does not match replay") + if event.new_domain == event.old_domain or event.new_domain & ~event.old_domain: + _fail(f"trace $.events[{index}].new_domain", "must narrow old_domain") + changes.append((event.cell, event.old_domain)) + domains[event.cell] = event.new_domain + if event.change_mark != len(changes): + _fail(f"trace $.events[{index}].change_mark", "is inconsistent") + elif event.kind == "backtrack": + if event.phase != "search" or event.change_mark > len(changes): + _fail(f"trace $.events[{index}]", "backtrack mark is inconsistent") + while len(changes) > event.change_mark: + cell, previous = changes.pop() + domains[cell] = previous + elif not ( + event.kind == "result" and trace.truncated and event.sequence != index + ) and event.change_mark != len(changes): + _fail(f"trace $.events[{index}].change_mark", "is inconsistent") + + if event.kind == "decision": + if event.phase != "search" or event.cell is None or event.cell >= area: + _fail(f"trace $.events[{index}]", "decision cell is inconsistent") + if event.old_domain != domains[event.cell]: + _fail(f"trace $.events[{index}].old_domain", "does not match replay") + if event.new_domain is None or event.new_domain == 0 or ( + event.new_domain & (event.new_domain - 1) + ): + _fail(f"trace $.events[{index}].new_domain", "is not a singleton") + if event.old_domain is None or event.new_domain & ~event.old_domain: + _fail(f"trace $.events[{index}]", "decision lies outside old domain") + elif event.kind == "propagation": + if event.phase not in _PHASES: + _fail(f"trace $.events[{index}].phase", "is required") + if (event.phase == "initial") != (event.cell is None): + _fail(f"trace $.events[{index}].cell", "does not match phase") + if event.phase == "initial" and event.depth != 0: + _fail(f"trace $.events[{index}].depth", "must equal zero") + elif event.kind == "conflict": + if event.phase not in _PHASES or event.cell is None or event.cell >= area: + _fail(f"trace $.events[{index}]", "conflict fields are inconsistent") + if domains[event.cell] != 0: + _fail(f"trace $.events[{index}].cell", "must hold the empty domain") + elif event.kind == "result": + if index != len(trace.events) - 1 or event.phase is not None: + _fail(f"trace $.events[{index}]", "result must be terminal") + if (trace.status == "sat") != (event.cell is None): + _fail(f"trace $.events[{index}].cell", "does not match status") + + state = tuple(domains) + checkpoint = checkpoints.get(event.sequence) + if checkpoint is not None and ( + checkpoint.change_mark != len(changes) or checkpoint.domains != state + ): + _fail("trace $.checkpoints", "does not match replay state") + states.append(state) + if any(sequence not in {event.sequence for event in trace.events} for sequence in checkpoints): + _fail("trace $.checkpoints", "must reference recorded events") + return tuple(states) + + +def _check_trace_region_state( + trace: TraceSnapshot, + active: tuple[bool, ...], +) -> None: + if len(active) != len(trace.initial_domains): + _fail("trace $.initial_domains", "does not match region active mask") + for index, is_active in enumerate(active): + if not is_active and trace.initial_domains[index] != 0: + _fail( + f"trace $.initial_domains[{index}]", + "inactive cell must be zero", + ) + for checkpoint_index, checkpoint in enumerate(trace.checkpoints): + for cell, is_active in enumerate(active): + if not is_active and checkpoint.domains[cell] != 0: + _fail( + f"trace $.checkpoints[{checkpoint_index}].domains[{cell}]", + "inactive cell must be zero", + ) + for event_index, event in enumerate(trace.events): + if event.cell is not None: + if event.cell >= len(active): + _fail( + f"trace $.events[{event_index}].cell", + "lies outside region", + ) + if not active[event.cell]: + _fail( + f"trace $.events[{event_index}].cell", + "must identify an active cell", + ) + + +def load_trace_bundle(path: str | Path) -> TraceBundle: + """Load a v3 bundle, verify identities, and replay the trace offline.""" + manifest_path = Path(path) + manifest = _load_json_bytes( + _read_bytes(manifest_path, "solver trace manifest"), + str(manifest_path), + ) + _fields( + manifest, + frozenset({"schema", "stage", "source_formula_sha256", "artifacts"}), + "$", + ) + if manifest["schema"] != MANIFEST_SCHEMA or manifest["stage"] != _TRACE_STAGE: + _fail("$", "must be a solver-trace v3 manifest") + source_digest = _sha256( + manifest["source_formula_sha256"], "$.source_formula_sha256" + ) + artifacts = _object(manifest["artifacts"], "$.artifacts") + expected = { + "formula": FORMULA_SCHEMA, + "tileset": TILESET_SCHEMA, + "region": REGION_SCHEMA, + "reduction": REDUCTION_SCHEMA, + "trace": TRACE_SCHEMA, + "solution": SOLUTION_SCHEMA, + } + _fields(artifacts, frozenset(expected), "$.artifacts") + documents: dict[str, dict[str, object]] = {} + digests: dict[str, str] = {} + for name, schema in expected.items(): + if artifacts[name] is None: + if name != "solution": + _fail(f"$.artifacts.{name}", "must not be null") + continue + artifact_name, digest = _reference( + artifacts[name], f"$.artifacts.{name}", schema + ) + encoded = _read_bytes(manifest_path.parent / artifact_name, f"{name} artifact") + if hashlib.sha256(encoded).hexdigest() != digest: + _fail(f"$.artifacts.{name}.sha256", f"does not match {artifact_name}") + document = _load_json_bytes(encoded, artifact_name) + if document.get("schema") != schema: + _fail(f"$.artifacts.{name}.schema", "does not match artifact") + documents[name] = document + digests[name] = digest + + formula = _parse_formula(documents["formula"]) + tileset = _parse_tileset(documents["tileset"]) + region = _parse_region(documents["region"]) + reduction = _parse_reduction(documents["reduction"]) + if formula.source_sha256 != source_digest or region.source_formula_sha256 != source_digest: + _fail("$.source_formula_sha256", "does not match formula and region") + if reduction.source_formula_sha256 != source_digest: + _fail("reduction $.source_formula_sha256", "does not match formula") + if reduction.region_sha256 != digests["region"]: + _fail("reduction $.region_sha256", "does not match region") + if reduction.variable_count != formula.variable_count or ( + reduction.width, + reduction.height, + ) != (region.width, region.height): + _fail("reduction $", "does not match formula and region dimensions") + + explanation = ExplainabilityBundle( + source_formula_sha256=source_digest, + formula=formula, + tileset=tileset, + region=region, + reduction=reduction, + ) + _check_reduction_formula_identity(explanation) + + trace = _parse_trace(documents["trace"]) + if trace.source_formula_sha256 != source_digest or trace.region_sha256 != digests["region"]: + _fail("trace $", "does not match formula and region") + if (trace.width, trace.height) != (region.width, region.height): + _fail("trace $.layout", "does not match region") + _check_trace_region_state(trace, region.active) + solution: WangPresentation | None = None + if "solution" in documents: + solution = _project_wang_presentation(documents["solution"]) + if trace.solution_sha256 != digests["solution"]: + _fail("trace $.solution_sha256", "does not match solution") + if (solution.width, solution.height) != (trace.width, trace.height): + _fail("solution $.bounds", "does not match trace layout") + if not trace.truncated: + final_domains = replay_trace(trace)[-1] + expected_domains = tuple( + 0 if tile_id is None else 1 << tile_id + for tile_id in solution.cells + ) + if final_domains != expected_domains: + _fail("trace $", "does not replay to the bound SAT solution") + elif trace.status != "unsat" or trace.solution_sha256 is not None: + _fail("$.artifacts.solution", "must be present exactly for SAT") + + return TraceBundle( + explanation=explanation, + trace=trace, + solution=solution, + ) diff --git a/renderer/wang_trace_render.py b/renderer/wang_trace_render.py new file mode 100644 index 0000000..76d455d --- /dev/null +++ b/renderer/wang_trace_render.py @@ -0,0 +1,245 @@ +"""Frame selection and raster composition for replayed solver traces.""" + +from __future__ import annotations + +import argparse +from pathlib import Path +from typing import Final + +from PIL import Image, ImageDraw + +from wang_animation import AnimationOutputs, write_animation_assets +from wang_explain import ( + EXPLAIN_INACTIVE_DARK_RGB, + EXPLAIN_INACTIVE_LIGHT_RGB, + EXPLAIN_MUTED_RGB, + EXPLAIN_PANEL_RGB, + EXPLAIN_TEXT_RGB, + draw_explain_heading, + explain_font, +) +from wang_hex_port import WangSquareRenderError +from wang_square import MAX_CANVAS_PIXELS, MAX_CANVAS_SIDE +from wang_trace import TraceBundle, TraceEvent, load_trace_bundle, replay_trace + + +_CELL_SIZE: Final = 18 +_MARGIN: Final = 14 +_HEADER: Final = 76 +_LEGEND_WIDTH: Final = 210 +_GAP: Final = 12 +_UNSAT_RGB: Final = (218, 82, 82) +_SINGLETON_RGB: Final = (83, 166, 116) +_CHANGED_RGB: Final = (245, 178, 60) + + +def _selected_indices(events: tuple[TraceEvent, ...], maximum: int) -> tuple[int, ...]: + if type(maximum) is not int or not 2 <= maximum <= 32: + raise WangSquareRenderError("max_frames must be in [2, 32]") + count = len(events) + if count <= maximum: + return tuple(range(count)) + priority = [0, count - 1] + for kind in ("propagation", "decision", "conflict", "backtrack"): + match = next( + (index for index, event in enumerate(events) if event.kind == kind), + None, + ) + if match is not None: + priority.append(match) + selected = list(dict.fromkeys(priority))[:maximum] + for slot in range(maximum): + index = slot * (count - 1) // (maximum - 1) + if index not in selected: + selected.append(index) + if len(selected) == maximum: + break + return tuple(sorted(selected)) + + +def _domain_rgb(domain: int) -> tuple[int, int, int]: + if domain == 0: + return _UNSAT_RGB + count = domain.bit_count() + if count == 1: + return _SINGLETON_RGB + shade = 225 - min(12, count - 2) * 6 + return (128, max(145, shade - 24), shade) + + +def _compose_frame( + bundle: TraceBundle, + event: TraceEvent, + domains: tuple[int, ...], +) -> Image.Image: + region = bundle.explanation.region + grid_width = region.width * _CELL_SIZE + grid_height = region.height * _CELL_SIZE + width = 2 * _MARGIN + grid_width + _GAP + _LEGEND_WIDTH + height = 2 * _MARGIN + _HEADER + max(grid_height, 310) + if ( + width > MAX_CANVAS_SIDE + or height > MAX_CANVAS_SIDE + or width * height > MAX_CANVAS_PIXELS + ): + raise WangSquareRenderError("solver trace frame exceeds canvas limits") + image = Image.new("RGB", (width, height), EXPLAIN_PANEL_RGB) + draw = ImageDraw.Draw(image) + subtitle = ( + f"observed event {event.sequence + 1}/{bundle.trace.observed_event_count}" + f" | {event.kind.replace('_', ' ')} | depth {event.depth}" + ) + if ( + bundle.trace.truncated + and event.kind == "result" + and event.sequence >= len(bundle.trace.events) + ): + subtitle += " | prefix state; omitted events are not reconstructed" + draw_explain_heading( + draw, + (_MARGIN, _MARGIN), + title=f"Observed {bundle.trace.solver} solver trace", + subtitle=subtitle, + ) + top = _MARGIN + _HEADER + for index, (active, domain) in enumerate( + zip(region.active, domains, strict=True) + ): + x = _MARGIN + (index % region.width) * _CELL_SIZE + y = top + (index // region.width) * _CELL_SIZE + box = (x, y, x + _CELL_SIZE - 1, y + _CELL_SIZE - 1) + if not active: + fill = ( + EXPLAIN_INACTIVE_LIGHT_RGB + if (index % region.width + index // region.width) % 2 == 0 + else EXPLAIN_INACTIVE_DARK_RGB + ) + else: + fill = _domain_rgb(domain) + draw.rectangle(box, fill=fill, outline=(178, 184, 194)) + if active and domain != 0 and domain.bit_count() == 1: + tile_id = domain.bit_length() - 1 + draw.text( + (x + 4, y + 2), + str(tile_id), + font=explain_font(9), + fill=EXPLAIN_TEXT_RGB, + ) + if event.cell == index: + draw.rectangle(box, outline=_CHANGED_RGB, width=3) + + legend_x = _MARGIN + grid_width + _GAP + legend_y = top + 4 + draw.text( + (legend_x, legend_y), + "Domain state", + font=explain_font(14), + fill=EXPLAIN_TEXT_RGB, + ) + entries = ( + (_SINGLETON_RGB, "singleton / selected tile"), + (_domain_rgb(8), "multiple candidate tiles"), + (_UNSAT_RGB, "empty domain / conflict"), + (_CHANGED_RGB, "current event cell"), + ) + for offset, (color, label) in enumerate(entries, start=1): + y = legend_y + offset * 28 + draw.rectangle((legend_x, y, legend_x + 18, y + 18), fill=color) + draw.text( + (legend_x + 26, y + 2), + label, + font=explain_font(10), + fill=EXPLAIN_TEXT_RGB, + ) + details = [ + f"phase: {event.phase or '-'}", + f"reason: {event.reason or '-'}", + f"change mark: {event.change_mark}", + f"active: {sum(region.active)}", + f"fixed: {sum(domain.bit_count() == 1 for domain in domains)}", + f"empty: {sum(domain == 0 for domain in domains)}", + ] + y = legend_y + 142 + for line in details: + draw.text( + (legend_x, y), + line, + font=explain_font(10), + fill=EXPLAIN_MUTED_RGB, + ) + y += 18 + draw.text( + (legend_x, height - _MARGIN - 15), + "Rendering is not a correctness proof.", + font=explain_font(9), + fill=EXPLAIN_MUTED_RGB, + ) + return image + + +def render_trace_assets( + manifest_path: str | Path, + output_directory: str | Path, + *, + max_frames: int = 12, + duration_ms: int = 500, +) -> AnimationOutputs: + """Replay once, compose each selected frame once, then encode assets.""" + bundle = load_trace_bundle(manifest_path) + states = replay_trace(bundle.trace) + selected = _selected_indices(bundle.trace.events, max_frames) + frames = tuple( + _compose_frame(bundle, bundle.trace.events[index], states[index]) + for index in selected + ) + fallback_index = next( + ( + index + for index, selected_index in enumerate(selected) + if bundle.trace.events[selected_index].kind == "decision" + ), + len(frames) - 1, + ) + return write_animation_assets( + frames, + tuple( + f"frame-{bundle.trace.events[index].sequence:06d}.png" + for index in selected + ), + output_directory, + fallback_index=fallback_index, + duration_ms=duration_ms, + ) + + +def _parser() -> argparse.ArgumentParser: + parser = argparse.ArgumentParser( + description="replay a solver-trace v3 bundle and render observed states" + ) + parser.add_argument("manifest", type=Path) + parser.add_argument("output_directory", type=Path) + parser.add_argument("--max-frames", type=int, default=12) + parser.add_argument("--duration-ms", type=int, default=500) + return parser + + +def main(arguments: list[str] | None = None) -> int: + parser = _parser() + args = parser.parse_args(arguments) + try: + outputs = render_trace_assets( + args.manifest, + args.output_directory, + max_frames=args.max_frames, + duration_ms=args.duration_ms, + ) + except (FileNotFoundError, WangSquareRenderError) as error: + parser.error(str(error)) + print(f"animation={outputs.animation}") + print(f"contact_sheet={outputs.contact_sheet}") + print(f"fallback={outputs.fallback}") + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/renderer/wang_z3_summary.py b/renderer/wang_z3_summary.py new file mode 100644 index 0000000..22fcdea --- /dev/null +++ b/renderer/wang_z3_summary.py @@ -0,0 +1,433 @@ +"""Z3-free consumer and encoding-order animation for Z3 summary v1.""" + +from __future__ import annotations + +import argparse +from dataclasses import dataclass +from pathlib import Path + +from PIL import Image, ImageDraw + +from wang_animation import AnimationOutputs, write_animation_assets +from wang_explain import ( + EXPLAIN_ACTIVE_RGB, + EXPLAIN_MUTED_RGB, + EXPLAIN_OUTLINE_RGB, + EXPLAIN_PANEL_RGB, + EXPLAIN_TEXT_RGB, + draw_explain_heading, + explain_font, +) +from wang_hex_port import WangSquareRenderError +from wang_snapshot import ( + _array, + _fields, + _integer, + _load_json_bytes, + _object, + _read_bytes, + _sha256, + _string, +) + + +SCHEMA_NAME = "z3-encoding-summary-v1" +BOOLEAN_ENGINE = "boolean-z3" +WANG_ENGINE = "wang-z3" +_WANG_TILE_COUNT = 23 +_BOOLEAN_ORDER = ( + "variables:ascending-id", + "clauses:source-order", + "clause-positions:left-to-right", +) +_WANG_ORDER = ( + "cells:row-major", + "directions:N,E,S,W", + "tile-tuples:first-positional-id", + "cell-relation-before-boundary", + "boundary-directions:N,E,S,W", +) + + +@dataclass(frozen=True, slots=True) +class Z3EncodingSummary: + engine: str + source_formula_sha256: str + region_sha256: str | None + version: str + random_seed: int + threads: int + status: str + order: tuple[str, ...] + variable_count: int + width: int + height: int + active_cell_count: int + edge_term_count: int + shared_internal_edge_count: int + unique_tile_tuple_count: int + assertion_count: int + assignment: tuple[bool, ...] | None + cells: tuple[int | None, ...] | None + statistics: tuple[tuple[str, int], ...] + + +def _fail(path: str, message: str) -> None: + raise WangSquareRenderError(f"Z3 encoding summary {path}: {message}") + + +def load_z3_encoding_summary(path: str | Path) -> Z3EncodingSummary: + """Strictly load a closed summary without importing Z3.""" + source = Path(path) + document = _load_json_bytes(_read_bytes(source, "Z3 summary"), str(source)) + _fields( + document, + frozenset( + { + "schema", + "semantics", + "engine", + "source_formula_sha256", + "region_sha256", + "z3", + "status", + "encoding", + "model", + "statistics", + } + ), + "$", + ) + if document["schema"] != SCHEMA_NAME or document["semantics"] != "encoding-order": + _fail("$", "must use the closed encoding-order v1 contract") + engine = _string(document["engine"], "$.engine") + if engine not in (BOOLEAN_ENGINE, WANG_ENGINE): + _fail("$.engine", "is not supported") + source_digest = _sha256( + document["source_formula_sha256"], "$.source_formula_sha256" + ) + region_digest = document["region_sha256"] + if region_digest is not None: + region_digest = _sha256(region_digest, "$.region_sha256") + if (engine == WANG_ENGINE) != (region_digest is not None): + _fail("$.region_sha256", "must be present exactly for Wang Z3") + + z3 = _object(document["z3"], "$.z3") + _fields(z3, frozenset({"version", "parameters"}), "$.z3") + version = _string(z3["version"], "$.z3.version") + if not version: + _fail("$.z3.version", "must not be empty") + parameters = _object(z3["parameters"], "$.z3.parameters") + _fields(parameters, frozenset({"random_seed", "threads"}), "$.z3.parameters") + random_seed = _integer( + parameters["random_seed"], "$.z3.parameters.random_seed", nonnegative=True + ) + threads = _integer( + parameters["threads"], "$.z3.parameters.threads", nonnegative=True + ) + if (random_seed, threads) != (0, 1): + _fail("$.z3.parameters", "must equal random_seed=0 and threads=1") + status = _string(document["status"], "$.status") + if status not in ("sat", "unsat", "unknown"): + _fail("$.status", "is not supported") + + encoding = _object(document["encoding"], "$.encoding") + count_names = ( + "variable_count", + "width", + "height", + "active_cell_count", + "edge_term_count", + "shared_internal_edge_count", + "unique_tile_tuple_count", + "assertion_count", + ) + _fields(encoding, frozenset({"order", *count_names}), "$.encoding") + order = tuple( + _string(item, f"$.encoding.order[{index}]") + for index, item in enumerate(_array(encoding["order"], "$.encoding.order")) + ) + expected_order = _BOOLEAN_ORDER if engine == BOOLEAN_ENGINE else _WANG_ORDER + if order != expected_order: + _fail("$.encoding.order", "does not match the engine contract") + counts = { + name: _integer(encoding[name], f"$.encoding.{name}", nonnegative=True) + for name in count_names + } + if counts["variable_count"] == 0 or counts["assertion_count"] == 0: + _fail("$.encoding", "variable and assertion counts must be positive") + if engine == BOOLEAN_ENGINE and any( + counts[name] != 0 for name in count_names[1:-1] + ): + _fail("$.encoding", "Boolean summary must not contain Wang counts") + if engine == WANG_ENGINE and ( + any( + counts[name] == 0 + for name in ( + "width", + "height", + "active_cell_count", + "edge_term_count", + ) + ) + or counts["unique_tile_tuple_count"] != _WANG_TILE_COUNT + ): + _fail( + "$.encoding", + "Wang summary requires region counts and the canonical tile table", + ) + if engine == WANG_ENGINE and ( + counts["active_cell_count"] > counts["width"] * counts["height"] + or counts["edge_term_count"] + != 4 * counts["active_cell_count"] + - counts["shared_internal_edge_count"] + ): + _fail("$.encoding", "Wang edge accounting is inconsistent") + + model = _object(document["model"], "$.model") + _fields(model, frozenset({"assignment", "cells"}), "$.model") + assignment: tuple[bool, ...] | None = None + cells: tuple[int | None, ...] | None = None + if model["assignment"] is not None: + raw_assignment = _array(model["assignment"], "$.model.assignment") + if any(type(value) is not bool for value in raw_assignment): + _fail("$.model.assignment", "must contain only booleans") + assignment = tuple(raw_assignment) + if model["cells"] is not None: + cells = tuple( + None + if value is None + else _integer(value, f"$.model.cells[{index}]", nonnegative=True) + for index, value in enumerate(_array(model["cells"], "$.model.cells")) + ) + if status == "sat" and engine == BOOLEAN_ENGINE: + if assignment is None or len(assignment) != counts["variable_count"] or cells is not None: + _fail("$.model", "does not match a SAT Boolean result") + elif status == "sat": + if assignment is not None or cells is None or len(cells) != counts["width"] * counts["height"]: + _fail("$.model", "does not match a SAT Wang result") + if any( + tile_id is not None + and tile_id >= counts["unique_tile_tuple_count"] + for tile_id in cells + ): + _fail("$.model.cells", "contains an ID outside the canonical tile table") + if sum(tile_id is not None for tile_id in cells) != counts["active_cell_count"]: + _fail("$.model.cells", "non-null entries must equal active cells") + elif assignment is not None or cells is not None: + _fail("$.model", "must be empty for a non-SAT result") + + statistics: list[tuple[str, int]] = [] + for index, raw in enumerate(_array(document["statistics"], "$.statistics")): + item = _object(raw, f"$.statistics[{index}]") + _fields(item, frozenset({"name", "value"}), f"$.statistics[{index}]") + statistics.append( + ( + _string(item["name"], f"$.statistics[{index}].name"), + _integer( + item["value"], + f"$.statistics[{index}].value", + nonnegative=True, + ), + ) + ) + model_entry_count = ( + len(assignment) + if assignment is not None + else len(cells) + if cells is not None + else 0 + ) + expected_statistics = ( + [ + ("variables", counts["variable_count"]), + ("assertions", counts["assertion_count"]), + ("model-entries", model_entry_count), + ] + if engine == BOOLEAN_ENGINE + else [ + ("active-cells", counts["active_cell_count"]), + ("edge-terms", counts["edge_term_count"]), + ("shared-internal-edges", counts["shared_internal_edge_count"]), + ("assertions", counts["assertion_count"]), + ("model-entries", model_entry_count), + ] + ) + if statistics != expected_statistics: + _fail("$.statistics", "must match the ordered project-owned counters") + return Z3EncodingSummary( + engine=engine, + source_formula_sha256=source_digest, + region_sha256=region_digest, + version=version, + random_seed=random_seed, + threads=threads, + status=status, + order=order, + assignment=assignment, + cells=cells, + statistics=tuple(statistics), + **counts, + ) + + +def _compose_wang_frame(summary: Z3EncodingSummary, stage: int) -> Image.Image: + width, height = 940, 430 + image = Image.new("RGB", (width, height), EXPLAIN_PANEL_RGB) + draw = ImageDraw.Draw(image) + labels = ( + "configuration", + "edge terms", + "shared internal edges", + "cell relations and boundaries", + "result, model, and encoding statistics", + ) + draw_explain_heading( + draw, + (18, 16), + title="Wang Z3 encoding order", + subtitle=( + f"encoding-order stage {stage + 1}/5 | {labels[stage]} | " + "not a Z3 internal execution trace" + ), + ) + draw.text( + (18, 78), + f"Z3 {summary.version} | random_seed={summary.random_seed} | " + f"threads={summary.threads}", + font=explain_font(12), + fill=EXPLAIN_TEXT_RGB, + ) + steps = ( + "1. create edge terms in row-major cell order", + "2. share north/south and east/west internal terms", + "3. add one positional tile-tuple relation per active cell", + "4. add exposed boundary equalities in N,E,S,W order", + "5. check once; copy model and encoding statistics", + ) + for index, label in enumerate(steps): + y = 112 + index * 38 + active = index <= stage + draw.rounded_rectangle( + (18, y, 455, y + 28), + radius=5, + fill=(213, 235, 246) if active else (239, 241, 245), + outline=(54, 127, 169) if index == stage else (184, 190, 201), + width=2 if index == stage else 1, + ) + draw.text( + (29, y + 7), + label, + font=explain_font(10), + fill=EXPLAIN_TEXT_RGB if active else EXPLAIN_MUTED_RGB, + ) + + panel = (485, 106, 922, 402) + draw.rounded_rectangle(panel, radius=6, fill=EXPLAIN_ACTIVE_RGB, outline=(180, 187, 198)) + if stage == 0: + lines = ( + f"formula variables: {summary.variable_count}", + f"region: {summary.width} x {summary.height}", + f"active cells: {summary.active_cell_count}", + "project order is public; Z3 search order is not", + ) + elif stage == 1: + lines = ( + f"distinct edge terms: {summary.edge_term_count}", + "N and W reuse already-created neighbor terms", + "E and S create the forward row-major frontier", + ) + elif stage == 2: + lines = ( + f"shared internal edges: {summary.shared_internal_edge_count}", + "one arithmetic term represents both sides of an adjacency", + "no support implications or copied native propagation", + ) + elif stage == 3: + lines = ( + f"unique tile tuples: {summary.unique_tile_tuple_count}", + f"assertions: {summary.assertion_count}", + "cell relation precedes boundary equalities", + ) + else: + lines = ( + f"result: {summary.status.upper()}", + f"model cells: {0 if summary.cells is None else len(summary.cells)}", + f"encoding statistics: {len(summary.statistics)}", + "internal Z3 counters and debug order are not claimed", + ) + y = 124 + for line in lines: + draw.text((502, y), line, font=explain_font(11), fill=EXPLAIN_TEXT_RGB) + y += 27 + + if stage == 4 and summary.cells is not None: + cell = 8 + origin_x, origin_y = 502, 246 + for index, tile_id in enumerate(summary.cells): + x = origin_x + (index % summary.width) * cell + y = origin_y + (index // summary.width) * cell + fill = (205, 210, 218) if tile_id is None else (88, 170, 122) + draw.rectangle((x, y, x + cell - 1, y + cell - 1), fill=fill) + draw.text( + (502, 346), + "model projection (inactive positions in gray)", + font=explain_font(9), + fill=EXPLAIN_MUTED_RGB, + ) + draw.text( + (18, 408), + "Rendering explains the declared encoding order; it makes no claim about Z3's internal decisions.", + font=explain_font(9), + fill=EXPLAIN_MUTED_RGB, + ) + return image + + +def render_wang_z3_assets( + summary_path: str | Path, + output_directory: str | Path, + *, + duration_ms: int = 800, +) -> AnimationOutputs: + summary = load_z3_encoding_summary(summary_path) + if summary.engine != WANG_ENGINE: + raise WangSquareRenderError("encoding animation requires a Wang Z3 summary") + frames = tuple(_compose_wang_frame(summary, stage) for stage in range(5)) + return write_animation_assets( + frames, + tuple(f"frame-{stage:02d}.png" for stage in range(5)), + output_directory, + fallback_index=3, + duration_ms=duration_ms, + ) + + +def _parser() -> argparse.ArgumentParser: + parser = argparse.ArgumentParser( + description="render the declared Wang Z3 encoding order without Z3" + ) + parser.add_argument("summary", type=Path) + parser.add_argument("output_directory", type=Path) + parser.add_argument("--duration-ms", type=int, default=800) + return parser + + +def main(arguments: list[str] | None = None) -> int: + parser = _parser() + args = parser.parse_args(arguments) + try: + outputs = render_wang_z3_assets( + args.summary, + args.output_directory, + duration_ms=args.duration_ms, + ) + except (FileNotFoundError, WangSquareRenderError) as error: + parser.error(str(error)) + print(f"animation={outputs.animation}") + print(f"fallback={outputs.fallback}") + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/schemas/wang-explain-manifest-v3.schema.json b/schemas/wang-explain-manifest-v3.schema.json new file mode 100644 index 0000000..16c0a8f --- /dev/null +++ b/schemas/wang-explain-manifest-v3.schema.json @@ -0,0 +1,80 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "urn:tiling-foundry:schema:wang-explain-manifest-v3", + "title": "Tiling Foundry solver-trace explainability manifest v3", + "type": "object", + "additionalProperties": false, + "required": ["schema", "stage", "source_formula_sha256", "artifacts"], + "properties": { + "schema": {"const": "wang-explain-manifest-v3"}, + "stage": {"const": "solver-trace"}, + "source_formula_sha256": {"$ref": "#/$defs/sha256"}, + "artifacts": { + "type": "object", + "additionalProperties": false, + "required": [ + "formula", + "tileset", + "region", + "reduction", + "trace", + "solution" + ], + "properties": { + "formula": { + "$ref": "#/$defs/reference", + "properties": {"schema": {"const": "cm13-formula-snapshot-v1"}} + }, + "tileset": { + "$ref": "#/$defs/reference", + "properties": {"schema": {"const": "wang-tileset-snapshot-v1"}} + }, + "region": { + "$ref": "#/$defs/reference", + "properties": {"schema": {"const": "wang-region-snapshot-v1"}} + }, + "reduction": { + "$ref": "#/$defs/reference", + "properties": { + "schema": {"const": "wang-reduction-explanation-v1"} + } + }, + "trace": { + "$ref": "#/$defs/reference", + "properties": {"schema": {"const": "wang-solver-trace-v1"}} + }, + "solution": { + "oneOf": [ + { + "$ref": "#/$defs/reference", + "properties": {"schema": {"const": "wang-solution-v1"}} + }, + {"type": "null"} + ] + } + } + } + }, + "$defs": { + "sha256": { + "type": "string", + "pattern": "^[0-9a-f]{64}$" + }, + "artifact_path": { + "type": "string", + "minLength": 1, + "pattern": "^[^/\\]+$", + "not": {"enum": [".", ".."]} + }, + "reference": { + "type": "object", + "additionalProperties": false, + "required": ["path", "sha256", "schema"], + "properties": { + "path": {"$ref": "#/$defs/artifact_path"}, + "sha256": {"$ref": "#/$defs/sha256"}, + "schema": {"type": "string"} + } + } + } +} diff --git a/schemas/wang-solver-trace-v1.schema.json b/schemas/wang-solver-trace-v1.schema.json new file mode 100644 index 0000000..4919744 --- /dev/null +++ b/schemas/wang-solver-trace-v1.schema.json @@ -0,0 +1,165 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "urn:tiling-foundry:schema:wang-solver-trace-v1", + "title": "Tiling Foundry observed native solver trace v1", + "type": "object", + "additionalProperties": false, + "required": [ + "schema", + "semantics", + "solver", + "status", + "geometry", + "source_formula_sha256", + "region_sha256", + "solution_sha256", + "layout", + "capacity", + "initial_domains", + "events", + "checkpoints" + ], + "properties": { + "schema": {"const": "wang-solver-trace-v1"}, + "semantics": {"const": "observed"}, + "solver": {"enum": ["reference", "optimized"]}, + "status": {"enum": ["sat", "unsat"]}, + "geometry": {"const": "square"}, + "source_formula_sha256": {"$ref": "#/$defs/sha256"}, + "region_sha256": {"$ref": "#/$defs/sha256"}, + "solution_sha256": { + "oneOf": [ + {"$ref": "#/$defs/sha256"}, + {"type": "null"} + ] + }, + "layout": { + "type": "object", + "additionalProperties": false, + "required": ["width", "height", "tile_count", "indexing"], + "properties": { + "width": {"type": "integer", "minimum": 1}, + "height": {"type": "integer", "minimum": 1}, + "tile_count": {"const": 23}, + "indexing": {"const": "row-major"} + } + }, + "capacity": { + "type": "object", + "additionalProperties": false, + "required": [ + "event_capacity", + "observed_event_count", + "truncated", + "checkpoint_interval", + "checkpoint_capacity", + "checkpoints_truncated" + ], + "properties": { + "event_capacity": {"type": "integer", "minimum": 2}, + "observed_event_count": {"type": "integer", "minimum": 2}, + "truncated": {"type": "boolean"}, + "checkpoint_interval": {"type": "integer", "minimum": 0}, + "checkpoint_capacity": {"type": "integer", "minimum": 0}, + "checkpoints_truncated": {"type": "boolean"} + } + }, + "initial_domains": { + "type": "array", + "minItems": 1, + "items": {"$ref": "#/$defs/domain"} + }, + "events": { + "type": "array", + "minItems": 2, + "items": {"$ref": "#/$defs/event"} + }, + "checkpoints": { + "type": "array", + "items": {"$ref": "#/$defs/checkpoint"} + } + }, + "allOf": [ + { + "if": {"properties": {"status": {"const": "sat"}}}, + "then": {"properties": {"solution_sha256": {"$ref": "#/$defs/sha256"}}}, + "else": {"properties": {"solution_sha256": {"type": "null"}}} + } + ], + "$defs": { + "sha256": { + "type": "string", + "pattern": "^[0-9a-f]{64}$" + }, + "domain": { + "type": "integer", + "minimum": 0, + "maximum": 8388607 + }, + "event": { + "type": "object", + "additionalProperties": false, + "required": [ + "sequence", + "kind", + "phase", + "reason", + "depth", + "cell", + "change_mark", + "old_domain", + "new_domain", + "status" + ], + "properties": { + "sequence": {"type": "integer", "minimum": 0}, + "kind": { + "enum": [ + "root", + "propagation", + "decision", + "domain_reduction", + "conflict", + "backtrack", + "result" + ] + }, + "phase": { + "type": ["string", "null"], + "enum": [null, "initial", "search"] + }, + "reason": { + "type": ["string", "null"], + "enum": [null, "decision", "propagation"] + }, + "depth": {"type": "integer", "minimum": 0}, + "cell": {"type": ["integer", "null"], "minimum": 0}, + "change_mark": {"type": "integer", "minimum": 0}, + "old_domain": { + "oneOf": [{"$ref": "#/$defs/domain"}, {"type": "null"}] + }, + "new_domain": { + "oneOf": [{"$ref": "#/$defs/domain"}, {"type": "null"}] + }, + "status": { + "type": ["string", "null"], + "enum": [null, "sat", "unsat"] + } + } + }, + "checkpoint": { + "type": "object", + "additionalProperties": false, + "required": ["event_sequence", "change_mark", "domains"], + "properties": { + "event_sequence": {"type": "integer", "minimum": 0}, + "change_mark": {"type": "integer", "minimum": 0}, + "domains": { + "type": "array", + "minItems": 1, + "items": {"$ref": "#/$defs/domain"} + } + } + } + } +} diff --git a/schemas/z3-encoding-summary-v1.schema.json b/schemas/z3-encoding-summary-v1.schema.json new file mode 100644 index 0000000..71c6bf3 --- /dev/null +++ b/schemas/z3-encoding-summary-v1.schema.json @@ -0,0 +1,134 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "urn:tiling-foundry:schema:z3-encoding-summary-v1", + "title": "Tiling Foundry explicit Z3 encoding summary v1", + "type": "object", + "additionalProperties": false, + "required": [ + "schema", + "semantics", + "engine", + "source_formula_sha256", + "region_sha256", + "z3", + "status", + "encoding", + "model", + "statistics" + ], + "properties": { + "schema": {"const": "z3-encoding-summary-v1"}, + "semantics": {"const": "encoding-order"}, + "engine": {"enum": ["boolean-z3", "wang-z3"]}, + "source_formula_sha256": {"$ref": "#/$defs/sha256"}, + "region_sha256": { + "oneOf": [{"$ref": "#/$defs/sha256"}, {"type": "null"}] + }, + "z3": { + "type": "object", + "additionalProperties": false, + "required": ["version", "parameters"], + "properties": { + "version": {"type": "string", "minLength": 1}, + "parameters": { + "type": "object", + "additionalProperties": false, + "required": ["random_seed", "threads"], + "properties": { + "random_seed": {"const": 0}, + "threads": {"const": 1} + } + } + } + }, + "status": {"enum": ["sat", "unsat", "unknown"]}, + "encoding": { + "type": "object", + "additionalProperties": false, + "required": [ + "order", + "variable_count", + "width", + "height", + "active_cell_count", + "edge_term_count", + "shared_internal_edge_count", + "unique_tile_tuple_count", + "assertion_count" + ], + "properties": { + "order": { + "type": "array", + "minItems": 3, + "items": {"type": "string", "minLength": 1} + }, + "variable_count": {"type": "integer", "minimum": 1}, + "width": {"type": "integer", "minimum": 0}, + "height": {"type": "integer", "minimum": 0}, + "active_cell_count": {"type": "integer", "minimum": 0}, + "edge_term_count": {"type": "integer", "minimum": 0}, + "shared_internal_edge_count": {"type": "integer", "minimum": 0}, + "unique_tile_tuple_count": {"type": "integer", "minimum": 0}, + "assertion_count": {"type": "integer", "minimum": 1} + } + }, + "model": { + "type": "object", + "additionalProperties": false, + "required": ["assignment", "cells"], + "properties": { + "assignment": { + "oneOf": [ + {"type": "array", "items": {"type": "boolean"}}, + {"type": "null"} + ] + }, + "cells": { + "oneOf": [ + { + "type": "array", + "items": { + "type": ["integer", "null"], + "minimum": 0, + "maximum": 22 + } + }, + {"type": "null"} + ] + } + } + }, + "statistics": { + "type": "array", + "items": { + "type": "object", + "additionalProperties": false, + "required": ["name", "value"], + "properties": { + "name": {"type": "string", "minLength": 1}, + "value": {"type": "integer", "minimum": 0} + } + } + } + }, + "allOf": [ + { + "if": {"properties": {"engine": {"const": "boolean-z3"}}}, + "then": {"properties": {"region_sha256": {"type": "null"}}}, + "else": { + "properties": { + "region_sha256": {"$ref": "#/$defs/sha256"}, + "encoding": { + "properties": {"unique_tile_tuple_count": {"const": 23}} + } + } + } + } + ], + "$defs": { + "sha256": { + "type": "string", + "pattern": "^[0-9a-f]{64}$" + } + } +} diff --git a/src/solver/solver_event_trace.c b/src/solver/solver_event_trace.c new file mode 100644 index 0000000..ea6d10e --- /dev/null +++ b/src/solver/solver_event_trace.c @@ -0,0 +1,252 @@ +#include "solver_event_trace.h" + +#include +#include + +static bool checked_mul_size(size_t a, size_t b, size_t *out) +{ + if (out == NULL || (a != 0 && b > SIZE_MAX / a)) { + return false; + } + *out = a * b; + return true; +} + +bool solver_event_trace_options_are_valid( + const WangSolveTraceOptions *options +) +{ + if (options == NULL || options->event_capacity < 2) { + return false; + } + const bool checkpoints_disabled = options->checkpoint_interval == 0 && + options->checkpoint_capacity == 0; + const bool checkpoints_enabled = options->checkpoint_interval != 0 && + options->checkpoint_capacity != 0; + return checkpoints_disabled || checkpoints_enabled; +} + +bool solver_event_trace_is_destroyed(const WangSolveTrace *trace) +{ + return trace != NULL && + trace->initial_domains == NULL && + trace->domain_count == 0 && + trace->events == NULL && + trace->event_count == 0 && + trace->observed_event_count == 0 && + trace->event_capacity == 0 && + !trace->truncated && + trace->checkpoints == NULL && + trace->checkpoint_domains == NULL && + trace->checkpoint_count == 0 && + trace->checkpoint_interval == 0 && + trace->checkpoint_capacity == 0 && + !trace->checkpoints_truncated; +} + +void wang_solve_trace_destroy(WangSolveTrace *trace) +{ + if (trace == NULL) { + return; + } + free(trace->checkpoint_domains); + free(trace->checkpoints); + free(trace->events); + free(trace->initial_domains); + *trace = (WangSolveTrace){0}; +} + +void wang_traced_solve_result_destroy(WangTracedSolveResult *result) +{ + if (result == NULL) { + return; + } + wang_solve_result_destroy(&result->solve); + wang_solve_trace_destroy(&result->trace); +} + +void solver_event_trace_discard(SolverEventTrace *recorder) +{ + if (recorder == NULL) { + return; + } + wang_solve_trace_destroy(&recorder->trace); + *recorder = (SolverEventTrace){0}; +} + +bool solver_event_trace_init( + SolverEventTrace *recorder, + const WangSolveTraceOptions *options, + const uint32_t *initial_domains, + size_t domain_count +) +{ + size_t domain_bytes; + size_t event_bytes; + if (recorder == NULL || !solver_event_trace_options_are_valid(options) || + initial_domains == NULL || domain_count == 0 || + !checked_mul_size(domain_count, sizeof(*initial_domains), &domain_bytes) || + !checked_mul_size( + options->event_capacity, + sizeof(WangSolveTraceEvent), + &event_bytes + )) { + return false; + } + + *recorder = (SolverEventTrace){0}; + WangSolveTrace *trace = &recorder->trace; + trace->initial_domains = malloc(domain_bytes); + trace->events = malloc(event_bytes); + if (trace->initial_domains == NULL || trace->events == NULL) { + solver_event_trace_discard(recorder); + return false; + } + + if (options->checkpoint_capacity != 0) { + size_t checkpoint_bytes; + size_t checkpoint_domain_count; + size_t checkpoint_domain_bytes; + if (!checked_mul_size( + options->checkpoint_capacity, + sizeof(*trace->checkpoints), + &checkpoint_bytes + ) || + !checked_mul_size( + options->checkpoint_capacity, + domain_count, + &checkpoint_domain_count + ) || + !checked_mul_size( + checkpoint_domain_count, + sizeof(*trace->checkpoint_domains), + &checkpoint_domain_bytes + )) { + solver_event_trace_discard(recorder); + return false; + } + trace->checkpoints = malloc(checkpoint_bytes); + trace->checkpoint_domains = malloc(checkpoint_domain_bytes); + if (trace->checkpoints == NULL || trace->checkpoint_domains == NULL) { + solver_event_trace_discard(recorder); + return false; + } + } + + memcpy(trace->initial_domains, initial_domains, domain_bytes); + trace->domain_count = domain_count; + trace->event_capacity = options->event_capacity; + trace->checkpoint_interval = options->checkpoint_interval; + trace->checkpoint_capacity = options->checkpoint_capacity; + return true; +} + +static void maybe_record_checkpoint( + SolverEventTrace *recorder, + const WangSolveTraceEvent *event, + const uint32_t *domains +) +{ + WangSolveTrace *trace = &recorder->trace; + if (trace->checkpoint_interval == 0 || + trace->event_count % trace->checkpoint_interval != 0) { + return; + } + if (trace->checkpoint_count == trace->checkpoint_capacity) { + trace->checkpoints_truncated = true; + return; + } + + const size_t checkpoint = trace->checkpoint_count++; + trace->checkpoints[checkpoint] = (WangSolveTraceCheckpoint){ + .event_sequence = event->sequence, + .change_mark = event->change_mark, + }; + memcpy( + &trace->checkpoint_domains[checkpoint * trace->domain_count], + domains, + trace->domain_count * sizeof(*domains) + ); +} + +void solver_event_trace_record( + SolverEventTrace *recorder, + WangSolveTraceEventKind kind, + WangSolveTracePhase phase, + WangSolveTraceReason reason, + size_t depth, + size_t cell_index, + size_t change_mark, + uint32_t old_domain, + uint32_t new_domain, + WangSolveStatus status, + const uint32_t *domains +) +{ + if (recorder == NULL || recorder->trace.events == NULL) { + return; + } + + const uint64_t sequence = recorder->next_sequence++; + WangSolveTrace *trace = &recorder->trace; + if (recorder->frozen || trace->event_count + 1 >= trace->event_capacity) { + recorder->frozen = true; + trace->truncated = true; + return; + } + + WangSolveTraceEvent *event = &trace->events[trace->event_count++]; + *event = (WangSolveTraceEvent){ + .sequence = sequence, + .kind = kind, + .phase = phase, + .reason = reason, + .depth = depth, + .cell_index = cell_index, + .change_mark = change_mark, + .old_domain = old_domain, + .new_domain = new_domain, + .status = status, + }; + maybe_record_checkpoint(recorder, event, domains); +} + +bool solver_event_trace_finish( + SolverEventTrace *recorder, + WangSolveStatus status, + size_t depth, + size_t cell_index, + size_t change_mark, + const uint32_t *domains, + WangSolveTrace *out_trace +) +{ + if (recorder == NULL || out_trace == NULL || + !solver_event_trace_is_destroyed(out_trace) || + recorder->trace.events == NULL || + domains == NULL || + recorder->trace.event_count >= recorder->trace.event_capacity || + (status != WANG_SOLVE_SAT && status != WANG_SOLVE_UNSAT)) { + return false; + } + + WangSolveTraceEvent *event = + &recorder->trace.events[recorder->trace.event_count++]; + *event = (WangSolveTraceEvent){ + .sequence = recorder->next_sequence++, + .kind = WANG_TRACE_EVENT_RESULT, + .phase = WANG_TRACE_PHASE_NONE, + .reason = WANG_TRACE_REASON_NONE, + .depth = depth, + .cell_index = cell_index, + .change_mark = change_mark, + .status = status, + }; + if (!recorder->trace.truncated) { + maybe_record_checkpoint(recorder, event, domains); + } + recorder->trace.observed_event_count = recorder->next_sequence; + *out_trace = recorder->trace; + *recorder = (SolverEventTrace){0}; + return true; +} diff --git a/src/solver/solver_event_trace.h b/src/solver/solver_event_trace.h new file mode 100644 index 0000000..d99adc4 --- /dev/null +++ b/src/solver/solver_event_trace.h @@ -0,0 +1,55 @@ +#ifndef WANG_SOLVER_EVENT_TRACE_H +#define WANG_SOLVER_EVENT_TRACE_H + +#include +#include +#include + +#include "wang/solver_trace.h" + +typedef struct { + WangSolveTrace trace; + uint64_t next_sequence; + bool frozen; +} SolverEventTrace; + +bool solver_event_trace_options_are_valid( + const WangSolveTraceOptions *options +); + +bool solver_event_trace_is_destroyed(const WangSolveTrace *trace); + +bool solver_event_trace_init( + SolverEventTrace *recorder, + const WangSolveTraceOptions *options, + const uint32_t *initial_domains, + size_t domain_count +); + +void solver_event_trace_record( + SolverEventTrace *recorder, + WangSolveTraceEventKind kind, + WangSolveTracePhase phase, + WangSolveTraceReason reason, + size_t depth, + size_t cell_index, + size_t change_mark, + uint32_t old_domain, + uint32_t new_domain, + WangSolveStatus status, + const uint32_t *domains +); + +bool solver_event_trace_finish( + SolverEventTrace *recorder, + WangSolveStatus status, + size_t depth, + size_t cell_index, + size_t change_mark, + const uint32_t *domains, + WangSolveTrace *out_trace +); + +void solver_event_trace_discard(SolverEventTrace *recorder); + +#endif /* WANG_SOLVER_EVENT_TRACE_H */ diff --git a/src/solver/solver_serial.c b/src/solver/solver_serial.c index a762384..415e618 100644 --- a/src/solver/solver_serial.c +++ b/src/solver/solver_serial.c @@ -2,6 +2,7 @@ #include "byte_support_table.h" #include "failed_leaf_trace.h" +#include "solver_event_trace.h" #include "wang/tile.h" #include "wang/verify.h" @@ -95,6 +96,11 @@ typedef struct { bool capture_unsat_snapshot; WangSolverMetrics metrics; FailedLeafWriter writer; + + SolverEventTrace event_trace; + bool trace_events; + size_t trace_change_mark; + size_t trace_search_base; } SolverState; typedef enum { @@ -226,6 +232,7 @@ static void solver_state_destroy(SolverState *state) if (state->writer.active) { (void)failed_leaf_writer_finish(&state->writer); } + solver_event_trace_discard(&state->event_trace); free(state->domains); free(state->neighbor_mask); free(state->byte_support); @@ -470,7 +477,9 @@ static void begin_trail_interval(SolverState *state) static bool restrict_domain( SolverState *state, size_t cell_index, - uint32_t new_domain + uint32_t new_domain, + WangSolveTraceReason trace_reason, + size_t depth ) { const uint32_t old_domain = state->domains[cell_index]; @@ -478,6 +487,10 @@ static bool restrict_domain( return true; } + if (state->trace_events && state->trace_change_mark == SIZE_MAX) { + return false; + } + if (state->record_trail) { if (state->trail_count == SIZE_MAX) { return false; @@ -527,6 +540,24 @@ static bool restrict_domain( state->metrics.trail_peak = state->trail_count; } } + if (state->trace_events) { + ++state->trace_change_mark; + solver_event_trace_record( + &state->event_trace, + WANG_TRACE_EVENT_DOMAIN_REDUCTION, + state->trail_phase == TRAIL_PHASE_INITIAL + ? WANG_TRACE_PHASE_INITIAL + : WANG_TRACE_PHASE_SEARCH, + trace_reason, + depth, + cell_index, + state->trace_change_mark, + old_domain, + new_domain, + WANG_SOLVE_ERROR, + state->domains + ); + } return true; } @@ -605,7 +636,8 @@ static uint32_t supported_neighbor_domain( static PropagateStatus propagate_queue( SolverState *state, - size_t *out_conflict_cell + size_t *out_conflict_cell, + size_t depth ) { size_t head = 0; @@ -645,7 +677,13 @@ static PropagateStatus propagate_queue( continue; } - if (!restrict_domain(state, adjacent, new_domain)) { + if (!restrict_domain( + state, + adjacent, + new_domain, + WANG_TRACE_REASON_PROPAGATION, + depth + )) { queue_discard_pending(state, head); return PROPAGATE_ERROR; } @@ -669,14 +707,15 @@ static PropagateStatus propagate_queue( static PropagateStatus propagate_from_cell( SolverState *state, size_t cell_index, - size_t *out_conflict_cell + size_t *out_conflict_cell, + size_t depth ) { state->queue_count = 0; if (!queue_push(state, cell_index)) { return PROPAGATE_ERROR; } - return propagate_queue(state, out_conflict_cell); + return propagate_queue(state, out_conflict_cell, depth); } static PropagateStatus propagate_initial( @@ -691,7 +730,7 @@ static PropagateStatus propagate_initial( return PROPAGATE_ERROR; } } - return propagate_queue(state, out_conflict_cell); + return propagate_queue(state, out_conflict_cell, 0); } static bool record_failed_leaf( @@ -899,6 +938,7 @@ static WangSolveStatus search( SearchFrame *frame = &stack.frames[stack.count - 1]; if (frame->candidates == 0) { const size_t entry_mark = frame->entry_mark; + const size_t frame_cell = frame->cell_index; --stack.count; if (stack.count == 0) { status = WANG_SOLVE_UNSAT; @@ -906,6 +946,23 @@ static WangSolveStatus search( } rollback_to(state, entry_mark); + if (state->trace_events) { + state->trace_change_mark = + state->trace_search_base + entry_mark; + solver_event_trace_record( + &state->event_trace, + WANG_TRACE_EVENT_BACKTRACK, + WANG_TRACE_PHASE_SEARCH, + WANG_TRACE_REASON_NONE, + stack.count, + frame_cell, + state->trace_change_mark, + 0, + 0, + WANG_SOLVE_ERROR, + state->domains + ); + } if (state->collect_metrics) { ++state->metrics.backtracks; } @@ -915,6 +972,23 @@ static WangSolveStatus search( const TileId tile = first_set_tile(frame->candidates); const uint32_t singleton = UINT32_C(1) << tile; frame->candidates &= frame->candidates - UINT32_C(1); + const size_t branch_depth = stack.count; + + if (state->trace_events) { + solver_event_trace_record( + &state->event_trace, + WANG_TRACE_EVENT_DECISION, + WANG_TRACE_PHASE_SEARCH, + WANG_TRACE_REASON_NONE, + branch_depth, + frame->cell_index, + state->trace_change_mark, + state->domains[frame->cell_index], + singleton, + WANG_SOLVE_ERROR, + state->domains + ); + } if (state->collect_metrics) { ++state->metrics.decisions; @@ -922,7 +996,13 @@ static WangSolveStatus search( const size_t mark = state->trail_count; begin_trail_interval(state); - if (!restrict_domain(state, frame->cell_index, singleton)) { + if (!restrict_domain( + state, + frame->cell_index, + singleton, + WANG_TRACE_REASON_DECISION, + branch_depth + )) { rollback_to(state, mark); break; } @@ -931,7 +1011,8 @@ static WangSolveStatus search( const PropagateStatus propagated = propagate_from_cell( state, frame->cell_index, - &conflict_cell + &conflict_cell, + branch_depth ); if (propagated == PROPAGATE_ERROR) { @@ -939,8 +1020,37 @@ static WangSolveStatus search( break; } - const size_t branch_depth = stack.count; + if (state->trace_events) { + solver_event_trace_record( + &state->event_trace, + WANG_TRACE_EVENT_PROPAGATION, + WANG_TRACE_PHASE_SEARCH, + WANG_TRACE_REASON_NONE, + branch_depth, + frame->cell_index, + state->trace_change_mark, + 0, + 0, + WANG_SOLVE_ERROR, + state->domains + ); + } if (propagated == PROPAGATE_CONFLICT) { + if (state->trace_events) { + solver_event_trace_record( + &state->event_trace, + WANG_TRACE_EVENT_CONFLICT, + WANG_TRACE_PHASE_SEARCH, + WANG_TRACE_REASON_NONE, + branch_depth, + conflict_cell, + state->trace_change_mark, + 0, + 0, + WANG_SOLVE_ERROR, + state->domains + ); + } if (!record_failed_leaf( state, conflict_cell, @@ -973,6 +1083,22 @@ static WangSolveStatus search( } rollback_to(state, mark); + if (state->trace_events) { + state->trace_change_mark = state->trace_search_base + mark; + solver_event_trace_record( + &state->event_trace, + WANG_TRACE_EVENT_BACKTRACK, + WANG_TRACE_PHASE_SEARCH, + WANG_TRACE_REASON_NONE, + branch_depth, + frame->cell_index, + state->trace_change_mark, + 0, + 0, + WANG_SOLVE_ERROR, + state->domains + ); + } if (state->collect_metrics) { ++state->metrics.backtracks; } @@ -1203,11 +1329,17 @@ static WangSolveStatus solve_wang_core( const Region *region, const WangSolverOptions *options, WangSolveResult *out_result, - SolverMechanisms mechanisms + SolverMechanisms mechanisms, + const WangSolveTraceOptions *trace_options, + WangSolveTrace *out_trace ) { if (!result_is_destroyed(out_result) || - !solver_options_are_valid(options)) { + !solver_options_are_valid(options) || + ((trace_options == NULL) != (out_trace == NULL)) || + (trace_options != NULL && + (!solver_event_trace_options_are_valid(trace_options) || + !solver_event_trace_is_destroyed(out_trace)))) { return WANG_SOLVE_ERROR; } @@ -1268,9 +1400,35 @@ static WangSolveStatus solve_wang_core( return WANG_SOLVE_ERROR; } - const bool trace_requested = options != NULL && + if (trace_options != NULL) { + if (!solver_event_trace_init( + &state.event_trace, + trace_options, + state.domains, + state.cell_count + )) { + solver_state_destroy(&state); + return WANG_SOLVE_ERROR; + } + state.trace_events = true; + solver_event_trace_record( + &state.event_trace, + WANG_TRACE_EVENT_ROOT, + WANG_TRACE_PHASE_INITIAL, + WANG_TRACE_REASON_NONE, + 0, + SIZE_MAX, + 0, + 0, + 0, + WANG_SOLVE_ERROR, + state.domains + ); + } + + const bool failed_leaf_trace_requested = options != NULL && (options->flags & WANG_SOLVE_TRACE_FAILED_LEAVES) != 0; - if (trace_requested && !failed_leaf_writer_init( + if (failed_leaf_trace_requested && !failed_leaf_writer_init( &state.writer, options->failed_leaf_path, options->failed_leaf_capacity, @@ -1282,6 +1440,21 @@ static WangSolveStatus solve_wang_core( WangSolveStatus status; if (initial_conflict != SIZE_MAX) { + if (state.trace_events) { + solver_event_trace_record( + &state.event_trace, + WANG_TRACE_EVENT_CONFLICT, + WANG_TRACE_PHASE_INITIAL, + WANG_TRACE_REASON_NONE, + 0, + initial_conflict, + state.trace_change_mark, + 0, + 0, + WANG_SOLVE_ERROR, + state.domains + ); + } if (!record_failed_leaf(&state, initial_conflict, 0)) { solver_state_destroy(&state); return WANG_SOLVE_ERROR; @@ -1298,7 +1471,37 @@ static WangSolveStatus solve_wang_core( solver_state_destroy(&state); return WANG_SOLVE_ERROR; } + if (state.trace_events) { + solver_event_trace_record( + &state.event_trace, + WANG_TRACE_EVENT_PROPAGATION, + WANG_TRACE_PHASE_INITIAL, + WANG_TRACE_REASON_NONE, + 0, + SIZE_MAX, + state.trace_change_mark, + 0, + 0, + WANG_SOLVE_ERROR, + state.domains + ); + } if (initial_status == PROPAGATE_CONFLICT) { + if (state.trace_events) { + solver_event_trace_record( + &state.event_trace, + WANG_TRACE_EVENT_CONFLICT, + WANG_TRACE_PHASE_INITIAL, + WANG_TRACE_REASON_NONE, + 0, + conflict_cell, + state.trace_change_mark, + 0, + 0, + WANG_SOLVE_ERROR, + state.domains + ); + } if (!record_failed_leaf(&state, conflict_cell, 0)) { solver_state_destroy(&state); return WANG_SOLVE_ERROR; @@ -1308,6 +1511,7 @@ static WangSolveStatus solve_wang_core( state.trail_count = 0; state.trail_phase = TRAIL_PHASE_SEARCH; state.record_trail = true; + state.trace_search_base = state.trace_change_mark; status = search(&state, mechanisms.stack_mode); } } @@ -1356,6 +1560,19 @@ static WangSolveStatus solve_wang_core( return WANG_SOLVE_ERROR; } + if (state.trace_events && !solver_event_trace_finish( + &state.event_trace, + status, + state.best_depth, + status == WANG_SOLVE_SAT ? SIZE_MAX : state.best_conflict_cell, + state.trace_change_mark, + state.domains, + out_trace + )) { + solver_state_destroy(&state); + return WANG_SOLVE_ERROR; + } + const bool return_domains = status == WANG_SOLVE_SAT || state.capture_unsat_snapshot; const bool transfer_sat_domains = status == WANG_SOLVE_SAT && @@ -1403,7 +1620,9 @@ WangSolveStatus wang_solve_serial( .transfer_sat_domains = false, .use_bytewise_support = false, .deduplicate_queue = false, - } + }, + NULL, + NULL ); } @@ -1423,6 +1642,67 @@ WangSolveStatus wang_solve_optimized( .transfer_sat_domains = true, .use_bytewise_support = true, .deduplicate_queue = WANG_OPTIMIZED_QUEUE_DEDUP != 0, - } + }, + NULL, + NULL + ); +} + +static bool traced_result_is_destroyed(const WangTracedSolveResult *result) +{ + return result != NULL && + result_is_destroyed(&result->solve) && + solver_event_trace_is_destroyed(&result->trace); +} + +WangSolveStatus wang_solve_serial_traced( + const Region *region, + const WangSolverOptions *solver_options, + const WangSolveTraceOptions *trace_options, + WangTracedSolveResult *out_result +) +{ + if (!traced_result_is_destroyed(out_result)) { + return WANG_SOLVE_ERROR; + } + return solve_wang_core( + region, + solver_options, + &out_result->solve, + (SolverMechanisms) { + .stack_mode = SEARCH_STACK_FIXED, + .record_initial_trail = true, + .transfer_sat_domains = false, + .use_bytewise_support = false, + .deduplicate_queue = false, + }, + trace_options, + &out_result->trace + ); +} + +WangSolveStatus wang_solve_optimized_traced( + const Region *region, + const WangSolverOptions *solver_options, + const WangSolveTraceOptions *trace_options, + WangTracedSolveResult *out_result +) +{ + if (!traced_result_is_destroyed(out_result)) { + return WANG_SOLVE_ERROR; + } + return solve_wang_core( + region, + solver_options, + &out_result->solve, + (SolverMechanisms) { + .stack_mode = SEARCH_STACK_DYNAMIC, + .record_initial_trail = false, + .transfer_sat_domains = true, + .use_bytewise_support = true, + .deduplicate_queue = WANG_OPTIMIZED_QUEUE_DEDUP != 0, + }, + trace_options, + &out_result->trace ); } diff --git a/tests/c/test_solver_event_trace.c b/tests/c/test_solver_event_trace.c new file mode 100644 index 0000000..222e681 --- /dev/null +++ b/tests/c/test_solver_event_trace.c @@ -0,0 +1,360 @@ +#include "wang/solver_trace.h" + +#include "wang/tile.h" + +#include +#include +#include +#include +#include +#include + +typedef WangSolveStatus (*TracedSolveFunction)( + const Region *, + const WangSolverOptions *, + const WangSolveTraceOptions *, + WangTracedSolveResult * +); + +typedef WangSolveStatus (*SolveFunction)( + const Region *, + const WangSolverOptions *, + WangSolveResult * +); + +typedef struct { + size_t cell_index; + uint32_t old_domain; +} ReplayChange; + +static void activate_all(Region *region) +{ + for (int32_t y = 0; y < region->height; ++y) { + for (int32_t x = 0; x < region->width; ++x) { + assert(region_set_active(region, x, y, true)); + } + } +} + +static void build_backtracking_region(Region *region) +{ + assert(region_init(region, 4, 4)); + activate_all(region); + assert(region_set_boundary(region, 1, 0, N, COLOR_R)); + assert(region_set_boundary(region, 2, 3, S, COLOR_B)); + assert(region_set_boundary(region, 0, 3, W, COLOR_1)); + assert(region_set_boundary(region, 3, 1, E, COLOR_1)); + assert(region_set_boundary(region, 3, 3, E, COLOR_0)); +} + +static bool trace_event_equal( + const WangSolveTraceEvent *left, + const WangSolveTraceEvent *right +) +{ + return left->sequence == right->sequence && + left->kind == right->kind && + left->phase == right->phase && + left->reason == right->reason && + left->depth == right->depth && + left->cell_index == right->cell_index && + left->change_mark == right->change_mark && + left->old_domain == right->old_domain && + left->new_domain == right->new_domain && + left->status == right->status; +} + +static void assert_trace_equal( + const WangSolveTrace *left, + const WangSolveTrace *right +) +{ + assert(left->domain_count == right->domain_count); + assert(left->event_count == right->event_count); + assert(left->observed_event_count == right->observed_event_count); + assert(left->event_capacity == right->event_capacity); + assert(left->truncated == right->truncated); + assert(left->checkpoint_count == right->checkpoint_count); + assert(left->checkpoint_interval == right->checkpoint_interval); + assert(left->checkpoint_capacity == right->checkpoint_capacity); + assert(left->checkpoints_truncated == right->checkpoints_truncated); + assert(memcmp( + left->initial_domains, + right->initial_domains, + left->domain_count * sizeof(*left->initial_domains) + ) == 0); + for (size_t i = 0; i < left->event_count; ++i) { + assert(trace_event_equal(&left->events[i], &right->events[i])); + } + for (size_t i = 0; i < left->checkpoint_count; ++i) { + assert(left->checkpoints[i].event_sequence == + right->checkpoints[i].event_sequence); + assert(left->checkpoints[i].change_mark == + right->checkpoints[i].change_mark); + } + assert(memcmp( + left->checkpoint_domains, + right->checkpoint_domains, + left->checkpoint_count * left->domain_count * + sizeof(*left->checkpoint_domains) + ) == 0); +} + +static void assert_trace_replays( + const WangSolveTrace *trace, + const WangSolveResult *solve +) +{ + assert(!trace->truncated); + assert(trace->event_count == trace->observed_event_count); + assert(trace->event_count >= 2); + assert(trace->events[0].kind == WANG_TRACE_EVENT_ROOT); + assert(trace->events[trace->event_count - 1].kind == + WANG_TRACE_EVENT_RESULT); + + uint32_t *domains = malloc( + trace->domain_count * sizeof(*domains) + ); + ReplayChange *changes = malloc( + trace->observed_event_count * sizeof(*changes) + ); + assert(domains != NULL); + assert(changes != NULL); + memcpy( + domains, + trace->initial_domains, + trace->domain_count * sizeof(*domains) + ); + + bool kinds[WANG_TRACE_EVENT_RESULT + 1] = {false}; + size_t change_count = 0; + size_t checkpoint = 0; + for (size_t i = 0; i < trace->event_count; ++i) { + const WangSolveTraceEvent *event = &trace->events[i]; + assert(event->sequence == i); + assert(event->kind <= WANG_TRACE_EVENT_RESULT); + kinds[event->kind] = true; + if (event->kind == WANG_TRACE_EVENT_DOMAIN_REDUCTION) { + assert(event->cell_index < trace->domain_count); + assert(domains[event->cell_index] == event->old_domain); + assert((event->new_domain & ~event->old_domain) == 0); + assert(event->new_domain != event->old_domain); + changes[change_count++] = (ReplayChange){ + .cell_index = event->cell_index, + .old_domain = event->old_domain, + }; + domains[event->cell_index] = event->new_domain; + assert(event->change_mark == change_count); + } else if (event->kind == WANG_TRACE_EVENT_BACKTRACK) { + assert(event->change_mark <= change_count); + while (change_count > event->change_mark) { + const ReplayChange change = changes[--change_count]; + domains[change.cell_index] = change.old_domain; + } + } else { + assert(event->change_mark == change_count); + } + + if (checkpoint < trace->checkpoint_count && + trace->checkpoints[checkpoint].event_sequence == event->sequence) { + assert(trace->checkpoints[checkpoint].change_mark == change_count); + assert(memcmp( + domains, + &trace->checkpoint_domains[ + checkpoint * trace->domain_count + ], + trace->domain_count * sizeof(*domains) + ) == 0); + ++checkpoint; + } + } + assert(checkpoint == trace->checkpoint_count); + assert(kinds[WANG_TRACE_EVENT_ROOT]); + assert(kinds[WANG_TRACE_EVENT_PROPAGATION]); + assert(kinds[WANG_TRACE_EVENT_DECISION]); + assert(kinds[WANG_TRACE_EVENT_DOMAIN_REDUCTION]); + assert(kinds[WANG_TRACE_EVENT_CONFLICT]); + assert(kinds[WANG_TRACE_EVENT_BACKTRACK]); + assert(kinds[WANG_TRACE_EVENT_RESULT]); + assert(trace->events[trace->event_count - 1].status == WANG_SOLVE_SAT); + assert(solve->domain_count == trace->domain_count); + assert(memcmp( + domains, + solve->domains, + trace->domain_count * sizeof(*domains) + ) == 0); + + free(changes); + free(domains); +} + +static void assert_traced_path( + SolveFunction plain_solve, + TracedSolveFunction traced_solve +) +{ + Region region = {0}; + build_backtracking_region(®ion); + const WangSolverOptions solver_options = { + .flags = WANG_SOLVE_COLLECT_METRICS, + }; + const WangSolveTraceOptions trace_options = { + .event_capacity = 4096, + .checkpoint_interval = 7, + .checkpoint_capacity = 64, + }; + WangSolveResult plain = {0}; + WangTracedSolveResult first = {0}; + WangTracedSolveResult second = {0}; + + assert(plain_solve(®ion, &solver_options, &plain) == WANG_SOLVE_SAT); + assert(traced_solve( + ®ion, + &solver_options, + &trace_options, + &first + ) == WANG_SOLVE_SAT); + assert(traced_solve( + ®ion, + &solver_options, + &trace_options, + &second + ) == WANG_SOLVE_SAT); + + assert(plain.domain_count == first.solve.domain_count); + assert(memcmp( + plain.domains, + first.solve.domains, + plain.domain_count * sizeof(*plain.domains) + ) == 0); + assert(memcmp( + &plain.metrics, + &first.solve.metrics, + sizeof(plain.metrics) + ) == 0); + assert_trace_equal(&first.trace, &second.trace); + assert_trace_replays(&first.trace, &first.solve); + assert(!first.trace.checkpoints_truncated); + assert(first.trace.checkpoint_count > 0); + + wang_solve_result_destroy(&plain); + wang_traced_solve_result_destroy(&first); + wang_traced_solve_result_destroy(&first); + wang_traced_solve_result_destroy(&second); + region_destroy(®ion); +} + +static void test_reference_and_optimized_traces_are_replayable(void) +{ + assert_traced_path(wang_solve_serial, wang_solve_serial_traced); + assert_traced_path(wang_solve_optimized, wang_solve_optimized_traced); +} + +static void test_capacity_keeps_root_and_terminal_result(void) +{ + Region region = {0}; + build_backtracking_region(®ion); + const WangSolveTraceOptions options = { .event_capacity = 2 }; + WangTracedSolveResult result = {0}; + + assert(wang_solve_serial_traced( + ®ion, + NULL, + &options, + &result + ) == WANG_SOLVE_SAT); + assert(result.trace.event_count == 2); + assert(result.trace.events[0].kind == WANG_TRACE_EVENT_ROOT); + assert(result.trace.events[1].kind == WANG_TRACE_EVENT_RESULT); + assert(result.trace.events[1].sequence > 1); + assert(result.trace.observed_event_count == + result.trace.events[1].sequence + 1); + assert(result.trace.truncated); + + wang_traced_solve_result_destroy(&result); + region_destroy(®ion); +} + +static void test_root_conflict_and_contract_rejections(void) +{ + Region region = {0}; + assert(region_init(®ion, 1, 1)); + activate_all(®ion); + assert(region_set_boundary(®ion, 0, 0, N, COLOR_V)); + + const WangSolveTraceOptions options = { + .event_capacity = 8, + .checkpoint_interval = 1, + .checkpoint_capacity = 1, + }; + WangTracedSolveResult result = {0}; + assert(wang_solve_optimized_traced( + ®ion, + NULL, + &options, + &result + ) == WANG_SOLVE_UNSAT); + assert(result.trace.event_count == 3); + assert(result.trace.events[0].kind == WANG_TRACE_EVENT_ROOT); + assert(result.trace.events[1].kind == WANG_TRACE_EVENT_CONFLICT); + assert(result.trace.events[1].cell_index == 0); + assert(result.trace.events[2].kind == WANG_TRACE_EVENT_RESULT); + assert(result.trace.events[2].status == WANG_SOLVE_UNSAT); + assert(result.trace.checkpoint_count == 1); + assert(result.trace.checkpoints_truncated); + wang_traced_solve_result_destroy(&result); + + const WangSolveTraceOptions terminal_checkpoint = { + .event_capacity = 8, + .checkpoint_interval = 3, + .checkpoint_capacity = 1, + }; + assert(wang_solve_optimized_traced( + ®ion, + NULL, + &terminal_checkpoint, + &result + ) == WANG_SOLVE_UNSAT); + assert(result.trace.checkpoint_count == 1); + assert(result.trace.checkpoints[0].event_sequence == 2); + assert(!result.trace.checkpoints_truncated); + wang_traced_solve_result_destroy(&result); + + const WangSolveTraceOptions too_small = { .event_capacity = 1 }; + assert(wang_solve_serial_traced( + ®ion, + NULL, + &too_small, + &result + ) == WANG_SOLVE_ERROR); + const WangSolveTraceOptions mismatched_checkpoints = { + .event_capacity = 4, + .checkpoint_interval = 2, + }; + assert(wang_solve_serial_traced( + ®ion, + NULL, + &mismatched_checkpoints, + &result + ) == WANG_SOLVE_ERROR); + result.trace.event_count = 1; + assert(wang_solve_serial_traced( + ®ion, + NULL, + &options, + &result + ) == WANG_SOLVE_ERROR); + result.trace.event_count = 0; + + region_destroy(®ion); +} + +int main(void) +{ + test_reference_and_optimized_traces_are_replayable(); + test_capacity_keeps_root_and_terminal_result(); + test_root_conflict_and_contract_rejections(); + + puts("test_solver_event_trace: OK"); + return 0; +} diff --git a/tests/fixtures/pipeline_sat_solver_trace/formula-5098eb9a85adebf28757b1368e9307fdb5fea0617de3256b717ead1af1d67815.json b/tests/fixtures/pipeline_sat_solver_trace/formula-5098eb9a85adebf28757b1368e9307fdb5fea0617de3256b717ead1af1d67815.json new file mode 100644 index 0000000..e7775ba --- /dev/null +++ b/tests/fixtures/pipeline_sat_solver_trace/formula-5098eb9a85adebf28757b1368e9307fdb5fea0617de3256b717ead1af1d67815.json @@ -0,0 +1,34 @@ +{ + "schema": "cm13-formula-snapshot-v1", + "source": { + "name": "pipeline_sat.cm13", + "sha256": "3caaa6b29ac988fb4f51cc7071202d83ea1591ba6170e683b6da449cb3641542" + }, + "variable_count": 3, + "clauses": [ + { + "clause_id": 0, + "variables": [ + 0, + 0, + 1 + ] + }, + { + "clause_id": 1, + "variables": [ + 0, + 1, + 2 + ] + }, + { + "clause_id": 2, + "variables": [ + 1, + 2, + 2 + ] + } + ] +} diff --git a/tests/fixtures/pipeline_sat_solver_trace/manifest.json b/tests/fixtures/pipeline_sat_solver_trace/manifest.json new file mode 100644 index 0000000..771321c --- /dev/null +++ b/tests/fixtures/pipeline_sat_solver_trace/manifest.json @@ -0,0 +1,37 @@ +{ + "schema": "wang-explain-manifest-v3", + "stage": "solver-trace", + "source_formula_sha256": "3caaa6b29ac988fb4f51cc7071202d83ea1591ba6170e683b6da449cb3641542", + "artifacts": { + "formula": { + "path": "formula-5098eb9a85adebf28757b1368e9307fdb5fea0617de3256b717ead1af1d67815.json", + "sha256": "5098eb9a85adebf28757b1368e9307fdb5fea0617de3256b717ead1af1d67815", + "schema": "cm13-formula-snapshot-v1" + }, + "tileset": { + "path": "tileset-462a102690c420bfe52a634e7b365a6be3bfcf59169f0acd96264831196723fa.json", + "sha256": "462a102690c420bfe52a634e7b365a6be3bfcf59169f0acd96264831196723fa", + "schema": "wang-tileset-snapshot-v1" + }, + "region": { + "path": "region-aad4dc7dcb46ed070995bf975248a7f2f0bf27d69db3eb653208d08c5826199a.json", + "sha256": "aad4dc7dcb46ed070995bf975248a7f2f0bf27d69db3eb653208d08c5826199a", + "schema": "wang-region-snapshot-v1" + }, + "reduction": { + "path": "reduction-6abbea9333509f852d59ed9be943d76380a49bfbdcf0f1c13e923e9ec4c4f3e2.json", + "sha256": "6abbea9333509f852d59ed9be943d76380a49bfbdcf0f1c13e923e9ec4c4f3e2", + "schema": "wang-reduction-explanation-v1" + }, + "solution": { + "path": "solution-2273f58cda026dca73c0dfa25c960e01296ac1e34ae6accbddf5be29034d156a.json", + "sha256": "2273f58cda026dca73c0dfa25c960e01296ac1e34ae6accbddf5be29034d156a", + "schema": "wang-solution-v1" + }, + "trace": { + "path": "trace-0d02e80d2c2379633cf09f86b947ad984b9af6b4e14d4d8569fe3a209f3d8b11.json", + "sha256": "0d02e80d2c2379633cf09f86b947ad984b9af6b4e14d4d8569fe3a209f3d8b11", + "schema": "wang-solver-trace-v1" + } + } +} diff --git a/tests/fixtures/pipeline_sat_solver_trace/reduction-6abbea9333509f852d59ed9be943d76380a49bfbdcf0f1c13e923e9ec4c4f3e2.json b/tests/fixtures/pipeline_sat_solver_trace/reduction-6abbea9333509f852d59ed9be943d76380a49bfbdcf0f1c13e923e9ec4c4f3e2.json new file mode 100644 index 0000000..995a489 --- /dev/null +++ b/tests/fixtures/pipeline_sat_solver_trace/reduction-6abbea9333509f852d59ed9be943d76380a49bfbdcf0f1c13e923e9ec4c4f3e2.json @@ -0,0 +1,329 @@ +{ + "schema": "wang-reduction-explanation-v1", + "geometry": "square", + "source_formula_sha256": "3caaa6b29ac988fb4f51cc7071202d83ea1591ba6170e683b6da449cb3641542", + "region_sha256": "aad4dc7dcb46ed070995bf975248a7f2f0bf27d69db3eb653208d08c5826199a", + "variable_count": 3, + "bounds": { + "x_begin": 0, + "x_end": 41, + "y_begin": 0, + "y_end": 11 + }, + "signals": { + "source": [ + { + "row": 0, + "kind": "variable", + "token_id": 0, + "variable": 0, + "occurrence": 0 + }, + { + "row": 1, + "kind": "variable", + "token_id": 1, + "variable": 0, + "occurrence": 1 + }, + { + "row": 2, + "kind": "variable", + "token_id": 2, + "variable": 0, + "occurrence": 2 + }, + { + "row": 3, + "kind": "redundant", + "token_id": 9, + "variable": null, + "occurrence": null + }, + { + "row": 4, + "kind": "variable", + "token_id": 3, + "variable": 1, + "occurrence": 0 + }, + { + "row": 5, + "kind": "variable", + "token_id": 4, + "variable": 1, + "occurrence": 1 + }, + { + "row": 6, + "kind": "variable", + "token_id": 5, + "variable": 1, + "occurrence": 2 + }, + { + "row": 7, + "kind": "redundant", + "token_id": 10, + "variable": null, + "occurrence": null + }, + { + "row": 8, + "kind": "variable", + "token_id": 6, + "variable": 2, + "occurrence": 0 + }, + { + "row": 9, + "kind": "variable", + "token_id": 7, + "variable": 2, + "occurrence": 1 + }, + { + "row": 10, + "kind": "variable", + "token_id": 8, + "variable": 2, + "occurrence": 2 + } + ], + "target": [ + { + "row": 0, + "kind": "variable", + "token_id": 0, + "variable": 0, + "occurrence": 0 + }, + { + "row": 1, + "kind": "variable", + "token_id": 1, + "variable": 0, + "occurrence": 1 + }, + { + "row": 2, + "kind": "variable", + "token_id": 3, + "variable": 1, + "occurrence": 0 + }, + { + "row": 3, + "kind": "redundant", + "token_id": 9, + "variable": null, + "occurrence": null + }, + { + "row": 4, + "kind": "variable", + "token_id": 2, + "variable": 0, + "occurrence": 2 + }, + { + "row": 5, + "kind": "variable", + "token_id": 4, + "variable": 1, + "occurrence": 1 + }, + { + "row": 6, + "kind": "variable", + "token_id": 6, + "variable": 2, + "occurrence": 0 + }, + { + "row": 7, + "kind": "redundant", + "token_id": 10, + "variable": null, + "occurrence": null + }, + { + "row": 8, + "kind": "variable", + "token_id": 5, + "variable": 1, + "occurrence": 2 + }, + { + "row": 9, + "kind": "variable", + "token_id": 7, + "variable": 2, + "occurrence": 1 + }, + { + "row": 10, + "kind": "variable", + "token_id": 8, + "variable": 2, + "occurrence": 2 + } + ] + }, + "gadgets": [ + { + "kind": "variable", + "ordinal": 0, + "bounds": { + "x_begin": 0, + "x_end": 1, + "y_begin": 0, + "y_end": 3 + }, + "swap_row": null + }, + { + "kind": "variable", + "ordinal": 1, + "bounds": { + "x_begin": 0, + "x_end": 1, + "y_begin": 4, + "y_end": 7 + }, + "swap_row": null + }, + { + "kind": "variable", + "ordinal": 2, + "bounds": { + "x_begin": 0, + "x_end": 1, + "y_begin": 8, + "y_end": 11 + }, + "swap_row": null + }, + { + "kind": "left_forward", + "ordinal": 0, + "bounds": { + "x_begin": 1, + "x_end": 3, + "y_begin": 0, + "y_end": 11 + }, + "swap_row": null + }, + { + "kind": "crossover", + "ordinal": 0, + "bounds": { + "x_begin": 3, + "x_end": 7, + "y_begin": 0, + "y_end": 11 + }, + "swap_row": 3 + }, + { + "kind": "crossover", + "ordinal": 1, + "bounds": { + "x_begin": 7, + "x_end": 10, + "y_begin": 0, + "y_end": 11 + }, + "swap_row": 2 + }, + { + "kind": "crossover", + "ordinal": 2, + "bounds": { + "x_begin": 10, + "x_end": 14, + "y_begin": 0, + "y_end": 11 + }, + "swap_row": 3 + }, + { + "kind": "crossover", + "ordinal": 3, + "bounds": { + "x_begin": 14, + "x_end": 22, + "y_begin": 0, + "y_end": 11 + }, + "swap_row": 7 + }, + { + "kind": "crossover", + "ordinal": 4, + "bounds": { + "x_begin": 22, + "x_end": 29, + "y_begin": 0, + "y_end": 11 + }, + "swap_row": 6 + }, + { + "kind": "crossover", + "ordinal": 5, + "bounds": { + "x_begin": 29, + "x_end": 37, + "y_begin": 0, + "y_end": 11 + }, + "swap_row": 7 + }, + { + "kind": "right_forward", + "ordinal": 0, + "bounds": { + "x_begin": 37, + "x_end": 39, + "y_begin": 0, + "y_end": 11 + }, + "swap_row": null + }, + { + "kind": "clause", + "ordinal": 0, + "bounds": { + "x_begin": 39, + "x_end": 41, + "y_begin": 0, + "y_end": 4 + }, + "swap_row": null + }, + { + "kind": "clause", + "ordinal": 1, + "bounds": { + "x_begin": 39, + "x_end": 41, + "y_begin": 4, + "y_end": 8 + }, + "swap_row": null + }, + { + "kind": "clause", + "ordinal": 2, + "bounds": { + "x_begin": 39, + "x_end": 41, + "y_begin": 8, + "y_end": 11 + }, + "swap_row": null + } + ] +} diff --git a/tests/fixtures/pipeline_sat_solver_trace/region-aad4dc7dcb46ed070995bf975248a7f2f0bf27d69db3eb653208d08c5826199a.json b/tests/fixtures/pipeline_sat_solver_trace/region-aad4dc7dcb46ed070995bf975248a7f2f0bf27d69db3eb653208d08c5826199a.json new file mode 100644 index 0000000..fa245cd --- /dev/null +++ b/tests/fixtures/pipeline_sat_solver_trace/region-aad4dc7dcb46ed070995bf975248a7f2f0bf27d69db3eb653208d08c5826199a.json @@ -0,0 +1,3137 @@ +{ + "schema": "wang-region-snapshot-v1", + "geometry": "square", + "source_formula_sha256": "3caaa6b29ac988fb4f51cc7071202d83ea1591ba6170e683b6da449cb3641542", + "bounds": { + "min_x_inclusive": 0, + "min_y_inclusive": 0, + "max_x_inclusive": 40, + "max_y_inclusive": 10 + }, + "active": [ + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + false, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + false, + false, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + false, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + false, + false, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + false, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true, + true + ], + "boundary": [ + { + "N": 0, + "E": null, + "S": null, + "W": 1 + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 6, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 6, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 6, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 6, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 6, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 6, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": 4, + "S": null, + "W": null + }, + null, + { + "N": null, + "E": null, + "S": null, + "W": 1 + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": 4, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": 1 + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": 3, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": 2 + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": 2, + "S": null, + "W": null + }, + null, + null, + { + "N": null, + "E": null, + "S": null, + "W": 1 + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": 4, + "S": null, + "W": null + }, + null, + { + "N": null, + "E": null, + "S": null, + "W": 1 + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": 4, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": 1 + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": 3, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": 2 + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": 2, + "S": null, + "W": null + }, + null, + null, + { + "N": null, + "E": null, + "S": null, + "W": 1 + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": 4, + "S": null, + "W": null + }, + null, + { + "N": null, + "E": null, + "S": null, + "W": 1 + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": 4, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": 1 + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 5, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 5, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 5, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 5, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 5, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 5, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": 3, + "S": 0, + "W": null + } + ] +} diff --git a/tests/fixtures/pipeline_sat_solver_trace/solution-2273f58cda026dca73c0dfa25c960e01296ac1e34ae6accbddf5be29034d156a.json b/tests/fixtures/pipeline_sat_solver_trace/solution-2273f58cda026dca73c0dfa25c960e01296ac1e34ae6accbddf5be29034d156a.json new file mode 100644 index 0000000..45f96ec --- /dev/null +++ b/tests/fixtures/pipeline_sat_solver_trace/solution-2273f58cda026dca73c0dfa25c960e01296ac1e34ae6accbddf5be29034d156a.json @@ -0,0 +1,3350 @@ +{ + "schema": "wang-solution-v1", + "status": "SAT", + "geometry": "square", + "bounds": { + "min_x_inclusive": 0, + "min_y_inclusive": 0, + "max_x_inclusive": 40, + "max_y_inclusive": 10 + }, + "tile_table": [ + { + "tile_id": 0, + "edges": { + "N": 0, + "E": 2, + "S": 7, + "W": 1 + } + }, + { + "tile_id": 1, + "edges": { + "N": 7, + "E": 2, + "S": 8, + "W": 1 + } + }, + { + "tile_id": 2, + "edges": { + "N": 8, + "E": 2, + "S": 0, + "W": 1 + } + }, + { + "tile_id": 3, + "edges": { + "N": 0, + "E": 3, + "S": 0, + "W": 1 + } + }, + { + "tile_id": 4, + "edges": { + "N": 0, + "E": 4, + "S": 0, + "W": 2 + } + }, + { + "tile_id": 5, + "edges": { + "N": 0, + "E": 4, + "S": 9, + "W": 3 + } + }, + { + "tile_id": 6, + "edges": { + "N": 9, + "E": 3, + "S": 0, + "W": 2 + } + }, + { + "tile_id": 7, + "edges": { + "N": 0, + "E": 2, + "S": 0, + "W": 2 + } + }, + { + "tile_id": 8, + "edges": { + "N": 0, + "E": 3, + "S": 0, + "W": 3 + } + }, + { + "tile_id": 9, + "edges": { + "N": 5, + "E": 2, + "S": 5, + "W": 2 + } + }, + { + "tile_id": 10, + "edges": { + "N": 5, + "E": 3, + "S": 5, + "W": 3 + } + }, + { + "tile_id": 11, + "edges": { + "N": 0, + "E": 10, + "S": 6, + "W": 2 + } + }, + { + "tile_id": 12, + "edges": { + "N": 6, + "E": 2, + "S": 0, + "W": 10 + } + }, + { + "tile_id": 13, + "edges": { + "N": 0, + "E": 11, + "S": 6, + "W": 3 + } + }, + { + "tile_id": 14, + "edges": { + "N": 6, + "E": 3, + "S": 0, + "W": 11 + } + }, + { + "tile_id": 15, + "edges": { + "N": 6, + "E": 2, + "S": 12, + "W": 2 + } + }, + { + "tile_id": 16, + "edges": { + "N": 12, + "E": 2, + "S": 5, + "W": 2 + } + }, + { + "tile_id": 17, + "edges": { + "N": 6, + "E": 2, + "S": 13, + "W": 3 + } + }, + { + "tile_id": 18, + "edges": { + "N": 13, + "E": 3, + "S": 5, + "W": 2 + } + }, + { + "tile_id": 19, + "edges": { + "N": 6, + "E": 3, + "S": 14, + "W": 2 + } + }, + { + "tile_id": 20, + "edges": { + "N": 14, + "E": 2, + "S": 5, + "W": 3 + } + }, + { + "tile_id": 21, + "edges": { + "N": 6, + "E": 3, + "S": 15, + "W": 3 + } + }, + { + "tile_id": 22, + "edges": { + "N": 15, + "E": 3, + "S": 5, + "W": 3 + } + } + ], + "cells": [ + 0, + 7, + 7, + 7, + 7, + 11, + 12, + 7, + 11, + 12, + 7, + 7, + 11, + 12, + 7, + 7, + 7, + 7, + 7, + 7, + 11, + 12, + 7, + 7, + 7, + 7, + 7, + 11, + 12, + 7, + 7, + 7, + 7, + 7, + 7, + 11, + 12, + 7, + 7, + 4, + null, + 1, + 7, + 7, + 7, + 11, + 12, + 7, + 11, + 12, + 7, + 7, + 11, + 12, + 7, + 7, + 7, + 7, + 7, + 7, + 11, + 12, + 7, + 7, + 7, + 7, + 7, + 11, + 12, + 7, + 7, + 7, + 7, + 7, + 7, + 11, + 12, + 7, + 7, + 7, + 7, + 4, + 2, + 7, + 7, + 11, + 12, + 7, + 7, + 19, + 8, + 8, + 13, + 14, + 8, + 8, + 8, + 8, + 8, + 8, + 13, + 14, + 8, + 8, + 8, + 8, + 8, + 13, + 14, + 8, + 8, + 8, + 8, + 8, + 8, + 13, + 14, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 19, + 8, + 8, + 8, + 20, + 7, + 7, + 15, + 7, + 7, + 7, + 7, + 7, + 7, + 11, + 12, + 7, + 7, + 7, + 7, + 7, + 11, + 12, + 7, + 7, + 7, + 7, + 7, + 7, + 11, + 12, + 7, + 7, + 7, + 7, + 7, + null, + null, + 3, + 8, + 8, + 20, + 7, + 7, + 7, + 9, + 7, + 7, + 16, + 7, + 7, + 7, + 7, + 7, + 11, + 12, + 7, + 7, + 7, + 7, + 7, + 11, + 12, + 7, + 7, + 7, + 7, + 7, + 7, + 11, + 12, + 7, + 7, + 7, + 7, + 7, + 7, + 4, + null, + 3, + 8, + 8, + 10, + 8, + 8, + 8, + 10, + 8, + 8, + 10, + 8, + 8, + 8, + 8, + 13, + 14, + 8, + 8, + 8, + 8, + 8, + 13, + 14, + 8, + 8, + 8, + 8, + 8, + 8, + 13, + 14, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 5, + 3, + 8, + 8, + 10, + 8, + 8, + 8, + 10, + 8, + 8, + 10, + 8, + 8, + 8, + 13, + 14, + 8, + 8, + 8, + 8, + 8, + 8, + 17, + 7, + 7, + 7, + 7, + 7, + 7, + 11, + 12, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 6, + 7, + 7, + 7, + 9, + 7, + 7, + 7, + 9, + 7, + 7, + 9, + 7, + 7, + 7, + 15, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 18, + 8, + 8, + 8, + 8, + 8, + 8, + 17, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + null, + null, + 0, + 7, + 7, + 9, + 7, + 7, + 7, + 9, + 7, + 7, + 9, + 7, + 7, + 7, + 16, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 18, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 5, + null, + 1, + 7, + 7, + 9, + 7, + 7, + 7, + 9, + 7, + 7, + 9, + 7, + 7, + 7, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 6, + 5, + 2, + 7, + 7, + 9, + 7, + 7, + 7, + 9, + 7, + 7, + 9, + 7, + 7, + 7, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 6 + ], + "boundary": [ + { + "N": 0, + "E": null, + "S": null, + "W": 1 + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 6, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 6, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 6, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 6, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 6, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 6, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": 4, + "S": null, + "W": null + }, + null, + { + "N": null, + "E": null, + "S": null, + "W": 1 + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": 4, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": 1 + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": 3, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": 2 + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": 2, + "S": null, + "W": null + }, + null, + null, + { + "N": null, + "E": null, + "S": null, + "W": 1 + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": 4, + "S": null, + "W": null + }, + null, + { + "N": null, + "E": null, + "S": null, + "W": 1 + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": 4, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": 1 + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": 3, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": 2 + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": 2, + "S": null, + "W": null + }, + null, + null, + { + "N": null, + "E": null, + "S": null, + "W": 1 + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": 4, + "S": null, + "W": null + }, + null, + { + "N": null, + "E": null, + "S": null, + "W": 1 + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": null, + "W": null + }, + { + "N": 0, + "E": 4, + "S": null, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": 1 + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 5, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 5, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 5, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 5, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 5, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 5, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": null, + "S": 0, + "W": null + }, + { + "N": null, + "E": 3, + "S": 0, + "W": null + } + ], + "metadata": { + "semantics": "observed", + "solver": "reference" + } +} diff --git a/tests/fixtures/pipeline_sat_solver_trace/tileset-462a102690c420bfe52a634e7b365a6be3bfcf59169f0acd96264831196723fa.json b/tests/fixtures/pipeline_sat_solver_trace/tileset-462a102690c420bfe52a634e7b365a6be3bfcf59169f0acd96264831196723fa.json new file mode 100644 index 0000000..41d70c7 --- /dev/null +++ b/tests/fixtures/pipeline_sat_solver_trace/tileset-462a102690c420bfe52a634e7b365a6be3bfcf59169f0acd96264831196723fa.json @@ -0,0 +1,237 @@ +{ + "schema": "wang-tileset-snapshot-v1", + "geometry": "square", + "directions": [ + "N", + "E", + "S", + "W" + ], + "colors": [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15 + ], + "tiles": [ + { + "tile_id": 0, + "edges": { + "N": 0, + "E": 2, + "S": 7, + "W": 1 + } + }, + { + "tile_id": 1, + "edges": { + "N": 7, + "E": 2, + "S": 8, + "W": 1 + } + }, + { + "tile_id": 2, + "edges": { + "N": 8, + "E": 2, + "S": 0, + "W": 1 + } + }, + { + "tile_id": 3, + "edges": { + "N": 0, + "E": 3, + "S": 0, + "W": 1 + } + }, + { + "tile_id": 4, + "edges": { + "N": 0, + "E": 4, + "S": 0, + "W": 2 + } + }, + { + "tile_id": 5, + "edges": { + "N": 0, + "E": 4, + "S": 9, + "W": 3 + } + }, + { + "tile_id": 6, + "edges": { + "N": 9, + "E": 3, + "S": 0, + "W": 2 + } + }, + { + "tile_id": 7, + "edges": { + "N": 0, + "E": 2, + "S": 0, + "W": 2 + } + }, + { + "tile_id": 8, + "edges": { + "N": 0, + "E": 3, + "S": 0, + "W": 3 + } + }, + { + "tile_id": 9, + "edges": { + "N": 5, + "E": 2, + "S": 5, + "W": 2 + } + }, + { + "tile_id": 10, + "edges": { + "N": 5, + "E": 3, + "S": 5, + "W": 3 + } + }, + { + "tile_id": 11, + "edges": { + "N": 0, + "E": 10, + "S": 6, + "W": 2 + } + }, + { + "tile_id": 12, + "edges": { + "N": 6, + "E": 2, + "S": 0, + "W": 10 + } + }, + { + "tile_id": 13, + "edges": { + "N": 0, + "E": 11, + "S": 6, + "W": 3 + } + }, + { + "tile_id": 14, + "edges": { + "N": 6, + "E": 3, + "S": 0, + "W": 11 + } + }, + { + "tile_id": 15, + "edges": { + "N": 6, + "E": 2, + "S": 12, + "W": 2 + } + }, + { + "tile_id": 16, + "edges": { + "N": 12, + "E": 2, + "S": 5, + "W": 2 + } + }, + { + "tile_id": 17, + "edges": { + "N": 6, + "E": 2, + "S": 13, + "W": 3 + } + }, + { + "tile_id": 18, + "edges": { + "N": 13, + "E": 3, + "S": 5, + "W": 2 + } + }, + { + "tile_id": 19, + "edges": { + "N": 6, + "E": 3, + "S": 14, + "W": 2 + } + }, + { + "tile_id": 20, + "edges": { + "N": 14, + "E": 2, + "S": 5, + "W": 3 + } + }, + { + "tile_id": 21, + "edges": { + "N": 6, + "E": 3, + "S": 15, + "W": 3 + } + }, + { + "tile_id": 22, + "edges": { + "N": 15, + "E": 3, + "S": 5, + "W": 3 + } + } + ] +} diff --git a/tests/fixtures/pipeline_sat_solver_trace/trace-0d02e80d2c2379633cf09f86b947ad984b9af6b4e14d4d8569fe3a209f3d8b11.json b/tests/fixtures/pipeline_sat_solver_trace/trace-0d02e80d2c2379633cf09f86b947ad984b9af6b4e14d4d8569fe3a209f3d8b11.json new file mode 100644 index 0000000..88a588c --- /dev/null +++ b/tests/fixtures/pipeline_sat_solver_trace/trace-0d02e80d2c2379633cf09f86b947ad984b9af6b4e14d4d8569fe3a209f3d8b11.json @@ -0,0 +1,45287 @@ +{ + "schema": "wang-solver-trace-v1", + "semantics": "observed", + "solver": "reference", + "status": "sat", + "geometry": "square", + "source_formula_sha256": "3caaa6b29ac988fb4f51cc7071202d83ea1591ba6170e683b6da449cb3641542", + "region_sha256": "aad4dc7dcb46ed070995bf975248a7f2f0bf27d69db3eb653208d08c5826199a", + "solution_sha256": "2273f58cda026dca73c0dfa25c960e01296ac1e34ae6accbddf5be29034d156a", + "layout": { + "width": 41, + "height": 11, + "tile_count": 23, + "indexing": "row-major" + }, + "capacity": { + "event_capacity": 4096, + "observed_event_count": 2896, + "truncated": false, + "checkpoint_interval": 128, + "checkpoint_capacity": 32, + "checkpoints_truncated": false + }, + "initial_domains": [ + 9, + 10681, + 10681, + 10681, + 10681, + 10681, + 2805760, + 10681, + 10681, + 2805760, + 10681, + 10681, + 10681, + 2805760, + 10681, + 10681, + 10681, + 10681, + 10681, + 10681, + 10681, + 2805760, + 10681, + 10681, + 10681, + 10681, + 10681, + 10681, + 2805760, + 10681, + 10681, + 10681, + 10681, + 10681, + 10681, + 10681, + 2805760, + 10681, + 10681, + 48, + 0, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 48, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 20956, + 16712, + 887504, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 1282695, + 0, + 0, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 48, + 0, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 48, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 20956, + 16712, + 887504, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 1282695, + 0, + 0, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 48, + 0, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 48, + 12, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 16712 + ], + "events": [ + { + "sequence": 0, + "kind": "root", + "phase": "initial", + "reason": null, + "depth": 0, + "cell": null, + "change_mark": 0, + "old_domain": null, + "new_domain": null, + "status": null + }, + { + "sequence": 1, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 1, + "change_mark": 1, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 2, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 41, + "change_mark": 2, + "old_domain": 15, + "new_domain": 11, + "status": null + }, + { + "sequence": 3, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 2, + "change_mark": 3, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 4, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 42, + "change_mark": 4, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 5, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 3, + "change_mark": 5, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 6, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 43, + "change_mark": 6, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 7, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 1, + "change_mark": 7, + "old_domain": 10672, + "new_domain": 384, + "status": null + }, + { + "sequence": 8, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 4, + "change_mark": 8, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 9, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 44, + "change_mark": 9, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 10, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 2, + "change_mark": 10, + "old_domain": 10672, + "new_domain": 384, + "status": null + }, + { + "sequence": 11, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 5, + "change_mark": 11, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 12, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 45, + "change_mark": 12, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 13, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 3, + "change_mark": 13, + "old_domain": 10672, + "new_domain": 384, + "status": null + }, + { + "sequence": 14, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 46, + "change_mark": 14, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 15, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 4, + "change_mark": 15, + "old_domain": 10672, + "new_domain": 384, + "status": null + }, + { + "sequence": 16, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 7, + "change_mark": 16, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 17, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 47, + "change_mark": 17, + "old_domain": 8388607, + "new_domain": 5581241, + "status": null + }, + { + "sequence": 18, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 5, + "change_mark": 18, + "old_domain": 10672, + "new_domain": 10624, + "status": null + }, + { + "sequence": 19, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 8, + "change_mark": 19, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 20, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 48, + "change_mark": 20, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 21, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 49, + "change_mark": 21, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 22, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 7, + "change_mark": 22, + "old_domain": 10672, + "new_domain": 384, + "status": null + }, + { + "sequence": 23, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 10, + "change_mark": 23, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 24, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 50, + "change_mark": 24, + "old_domain": 8388607, + "new_domain": 5581241, + "status": null + }, + { + "sequence": 25, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 8, + "change_mark": 25, + "old_domain": 10672, + "new_domain": 10624, + "status": null + }, + { + "sequence": 26, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 11, + "change_mark": 26, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 27, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 51, + "change_mark": 27, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 28, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 12, + "change_mark": 28, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 29, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 52, + "change_mark": 29, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 30, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 10, + "change_mark": 30, + "old_domain": 10672, + "new_domain": 384, + "status": null + }, + { + "sequence": 31, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 53, + "change_mark": 31, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 32, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 11, + "change_mark": 32, + "old_domain": 10672, + "new_domain": 384, + "status": null + }, + { + "sequence": 33, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 14, + "change_mark": 33, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 34, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 54, + "change_mark": 34, + "old_domain": 8388607, + "new_domain": 5581241, + "status": null + }, + { + "sequence": 35, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 12, + "change_mark": 35, + "old_domain": 10672, + "new_domain": 10624, + "status": null + }, + { + "sequence": 36, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 15, + "change_mark": 36, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 37, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 55, + "change_mark": 37, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 38, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 16, + "change_mark": 38, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 39, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 56, + "change_mark": 39, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 40, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 14, + "change_mark": 40, + "old_domain": 10672, + "new_domain": 384, + "status": null + }, + { + "sequence": 41, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 17, + "change_mark": 41, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 42, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 57, + "change_mark": 42, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 43, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 15, + "change_mark": 43, + "old_domain": 10672, + "new_domain": 384, + "status": null + }, + { + "sequence": 44, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 18, + "change_mark": 44, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 45, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 58, + "change_mark": 45, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 46, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 16, + "change_mark": 46, + "old_domain": 10672, + "new_domain": 384, + "status": null + }, + { + "sequence": 47, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 19, + "change_mark": 47, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 48, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 59, + "change_mark": 48, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 49, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 17, + "change_mark": 49, + "old_domain": 10672, + "new_domain": 384, + "status": null + }, + { + "sequence": 50, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 20, + "change_mark": 50, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 51, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 60, + "change_mark": 51, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 52, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 18, + "change_mark": 52, + "old_domain": 10672, + "new_domain": 384, + "status": null + }, + { + "sequence": 53, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 61, + "change_mark": 53, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 54, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 19, + "change_mark": 54, + "old_domain": 10672, + "new_domain": 384, + "status": null + }, + { + "sequence": 55, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 22, + "change_mark": 55, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 56, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 62, + "change_mark": 56, + "old_domain": 8388607, + "new_domain": 5581241, + "status": null + }, + { + "sequence": 57, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 20, + "change_mark": 57, + "old_domain": 10672, + "new_domain": 10624, + "status": null + }, + { + "sequence": 58, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 23, + "change_mark": 58, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 59, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 63, + "change_mark": 59, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 60, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 24, + "change_mark": 60, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 61, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 64, + "change_mark": 61, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 62, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 22, + "change_mark": 62, + "old_domain": 10672, + "new_domain": 384, + "status": null + }, + { + "sequence": 63, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 25, + "change_mark": 63, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 64, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 65, + "change_mark": 64, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 65, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 23, + "change_mark": 65, + "old_domain": 10672, + "new_domain": 384, + "status": null + }, + { + "sequence": 66, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 26, + "change_mark": 66, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 67, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 66, + "change_mark": 67, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 68, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 24, + "change_mark": 68, + "old_domain": 10672, + "new_domain": 384, + "status": null + }, + { + "sequence": 69, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 27, + "change_mark": 69, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 70, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 67, + "change_mark": 70, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 71, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 25, + "change_mark": 71, + "old_domain": 10672, + "new_domain": 384, + "status": null + }, + { + "sequence": 72, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 68, + "change_mark": 72, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 73, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 26, + "change_mark": 73, + "old_domain": 10672, + "new_domain": 384, + "status": null + }, + { + "sequence": 74, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 29, + "change_mark": 74, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 75, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 69, + "change_mark": 75, + "old_domain": 8388607, + "new_domain": 5581241, + "status": null + }, + { + "sequence": 76, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 27, + "change_mark": 76, + "old_domain": 10672, + "new_domain": 10624, + "status": null + }, + { + "sequence": 77, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 30, + "change_mark": 77, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 78, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 70, + "change_mark": 78, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 79, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 31, + "change_mark": 79, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 80, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 71, + "change_mark": 80, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 81, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 29, + "change_mark": 81, + "old_domain": 10672, + "new_domain": 384, + "status": null + }, + { + "sequence": 82, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 32, + "change_mark": 82, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 83, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 72, + "change_mark": 83, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 84, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 30, + "change_mark": 84, + "old_domain": 10672, + "new_domain": 384, + "status": null + }, + { + "sequence": 85, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 33, + "change_mark": 85, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 86, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 73, + "change_mark": 86, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 87, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 31, + "change_mark": 87, + "old_domain": 10672, + "new_domain": 384, + "status": null + }, + { + "sequence": 88, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 34, + "change_mark": 88, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 89, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 74, + "change_mark": 89, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 90, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 32, + "change_mark": 90, + "old_domain": 10672, + "new_domain": 384, + "status": null + }, + { + "sequence": 91, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 35, + "change_mark": 91, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 92, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 75, + "change_mark": 92, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 93, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 33, + "change_mark": 93, + "old_domain": 10672, + "new_domain": 384, + "status": null + }, + { + "sequence": 94, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 76, + "change_mark": 94, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 95, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 34, + "change_mark": 95, + "old_domain": 10672, + "new_domain": 384, + "status": null + }, + { + "sequence": 96, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 37, + "change_mark": 96, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 97, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 77, + "change_mark": 97, + "old_domain": 8388607, + "new_domain": 5581241, + "status": null + }, + { + "sequence": 98, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 35, + "change_mark": 98, + "old_domain": 10672, + "new_domain": 10624, + "status": null + }, + { + "sequence": 99, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 38, + "change_mark": 99, + "old_domain": 10681, + "new_domain": 10672, + "status": null + }, + { + "sequence": 100, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 78, + "change_mark": 100, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 101, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 79, + "change_mark": 101, + "old_domain": 8388607, + "new_domain": 2816505, + "status": null + }, + { + "sequence": 102, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 37, + "change_mark": 102, + "old_domain": 10672, + "new_domain": 384, + "status": null + }, + { + "sequence": 103, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 80, + "change_mark": 103, + "old_domain": 8388607, + "new_domain": 10745, + "status": null + }, + { + "sequence": 104, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 38, + "change_mark": 104, + "old_domain": 10672, + "new_domain": 384, + "status": null + }, + { + "sequence": 105, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 42, + "change_mark": 105, + "old_domain": 2816505, + "new_domain": 2796016, + "status": null + }, + { + "sequence": 106, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 43, + "change_mark": 106, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 107, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 83, + "change_mark": 107, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 108, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 44, + "change_mark": 108, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 109, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 84, + "change_mark": 109, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 110, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 42, + "change_mark": 110, + "old_domain": 2796016, + "new_domain": 2795968, + "status": null + }, + { + "sequence": 111, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 45, + "change_mark": 111, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 112, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 85, + "change_mark": 112, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 113, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 43, + "change_mark": 113, + "old_domain": 2816496, + "new_domain": 2816448, + "status": null + }, + { + "sequence": 114, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 46, + "change_mark": 114, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 115, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 86, + "change_mark": 115, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 116, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 44, + "change_mark": 116, + "old_domain": 2816496, + "new_domain": 2816448, + "status": null + }, + { + "sequence": 117, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 47, + "change_mark": 117, + "old_domain": 5581241, + "new_domain": 5581232, + "status": null + }, + { + "sequence": 118, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 87, + "change_mark": 118, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 119, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 45, + "change_mark": 119, + "old_domain": 2816496, + "new_domain": 2816448, + "status": null + }, + { + "sequence": 120, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 48, + "change_mark": 120, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 121, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 88, + "change_mark": 121, + "old_domain": 8388607, + "new_domain": 2818041, + "status": null + }, + { + "sequence": 122, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 46, + "change_mark": 122, + "old_domain": 2816496, + "new_domain": 2806208, + "status": null + }, + { + "sequence": 123, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 49, + "change_mark": 123, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 124, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 89, + "change_mark": 124, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 125, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 47, + "change_mark": 125, + "old_domain": 5581232, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 126, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 50, + "change_mark": 126, + "old_domain": 5581241, + "new_domain": 5581232, + "status": null + }, + { + "sequence": 127, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 90, + "change_mark": 127, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 128, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 48, + "change_mark": 128, + "old_domain": 2816496, + "new_domain": 2816448, + "status": null + }, + { + "sequence": 129, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 51, + "change_mark": 129, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 130, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 91, + "change_mark": 130, + "old_domain": 8388607, + "new_domain": 2818041, + "status": null + }, + { + "sequence": 131, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 49, + "change_mark": 131, + "old_domain": 2816496, + "new_domain": 2806208, + "status": null + }, + { + "sequence": 132, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 52, + "change_mark": 132, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 133, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 92, + "change_mark": 133, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 134, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 50, + "change_mark": 134, + "old_domain": 5581232, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 135, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 53, + "change_mark": 135, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 136, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 93, + "change_mark": 136, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 137, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 51, + "change_mark": 137, + "old_domain": 2816496, + "new_domain": 2816448, + "status": null + }, + { + "sequence": 138, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 54, + "change_mark": 138, + "old_domain": 5581241, + "new_domain": 5581232, + "status": null + }, + { + "sequence": 139, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 94, + "change_mark": 139, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 140, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 52, + "change_mark": 140, + "old_domain": 2816496, + "new_domain": 2816448, + "status": null + }, + { + "sequence": 141, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 55, + "change_mark": 141, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 142, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 95, + "change_mark": 142, + "old_domain": 8388607, + "new_domain": 2818041, + "status": null + }, + { + "sequence": 143, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 53, + "change_mark": 143, + "old_domain": 2816496, + "new_domain": 2806208, + "status": null + }, + { + "sequence": 144, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 56, + "change_mark": 144, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 145, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 96, + "change_mark": 145, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 146, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 54, + "change_mark": 146, + "old_domain": 5581232, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 147, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 57, + "change_mark": 147, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 148, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 97, + "change_mark": 148, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 149, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 55, + "change_mark": 149, + "old_domain": 2816496, + "new_domain": 2816448, + "status": null + }, + { + "sequence": 150, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 58, + "change_mark": 150, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 151, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 98, + "change_mark": 151, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 152, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 56, + "change_mark": 152, + "old_domain": 2816496, + "new_domain": 2816448, + "status": null + }, + { + "sequence": 153, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 59, + "change_mark": 153, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 154, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 99, + "change_mark": 154, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 155, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 57, + "change_mark": 155, + "old_domain": 2816496, + "new_domain": 2816448, + "status": null + }, + { + "sequence": 156, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 60, + "change_mark": 156, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 157, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 100, + "change_mark": 157, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 158, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 58, + "change_mark": 158, + "old_domain": 2816496, + "new_domain": 2816448, + "status": null + }, + { + "sequence": 159, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 61, + "change_mark": 159, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 160, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 101, + "change_mark": 160, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 161, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 59, + "change_mark": 161, + "old_domain": 2816496, + "new_domain": 2816448, + "status": null + }, + { + "sequence": 162, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 62, + "change_mark": 162, + "old_domain": 5581241, + "new_domain": 5581232, + "status": null + }, + { + "sequence": 163, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 102, + "change_mark": 163, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 164, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 60, + "change_mark": 164, + "old_domain": 2816496, + "new_domain": 2816448, + "status": null + }, + { + "sequence": 165, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 63, + "change_mark": 165, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 166, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 103, + "change_mark": 166, + "old_domain": 8388607, + "new_domain": 2818041, + "status": null + }, + { + "sequence": 167, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 61, + "change_mark": 167, + "old_domain": 2816496, + "new_domain": 2806208, + "status": null + }, + { + "sequence": 168, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 64, + "change_mark": 168, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 169, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 104, + "change_mark": 169, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 170, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 62, + "change_mark": 170, + "old_domain": 5581232, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 171, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 65, + "change_mark": 171, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 172, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 105, + "change_mark": 172, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 173, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 63, + "change_mark": 173, + "old_domain": 2816496, + "new_domain": 2816448, + "status": null + }, + { + "sequence": 174, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 66, + "change_mark": 174, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 175, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 106, + "change_mark": 175, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 176, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 64, + "change_mark": 176, + "old_domain": 2816496, + "new_domain": 2816448, + "status": null + }, + { + "sequence": 177, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 67, + "change_mark": 177, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 178, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 107, + "change_mark": 178, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 179, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 65, + "change_mark": 179, + "old_domain": 2816496, + "new_domain": 2816448, + "status": null + }, + { + "sequence": 180, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 68, + "change_mark": 180, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 181, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 108, + "change_mark": 181, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 182, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 66, + "change_mark": 182, + "old_domain": 2816496, + "new_domain": 2816448, + "status": null + }, + { + "sequence": 183, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 69, + "change_mark": 183, + "old_domain": 5581241, + "new_domain": 5581232, + "status": null + }, + { + "sequence": 184, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 109, + "change_mark": 184, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 185, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 67, + "change_mark": 185, + "old_domain": 2816496, + "new_domain": 2816448, + "status": null + }, + { + "sequence": 186, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 70, + "change_mark": 186, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 187, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 110, + "change_mark": 187, + "old_domain": 8388607, + "new_domain": 2818041, + "status": null + }, + { + "sequence": 188, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 68, + "change_mark": 188, + "old_domain": 2816496, + "new_domain": 2806208, + "status": null + }, + { + "sequence": 189, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 71, + "change_mark": 189, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 190, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 111, + "change_mark": 190, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 191, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 69, + "change_mark": 191, + "old_domain": 5581232, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 192, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 72, + "change_mark": 192, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 193, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 112, + "change_mark": 193, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 194, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 70, + "change_mark": 194, + "old_domain": 2816496, + "new_domain": 2816448, + "status": null + }, + { + "sequence": 195, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 73, + "change_mark": 195, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 196, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 113, + "change_mark": 196, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 197, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 71, + "change_mark": 197, + "old_domain": 2816496, + "new_domain": 2816448, + "status": null + }, + { + "sequence": 198, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 74, + "change_mark": 198, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 199, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 114, + "change_mark": 199, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 200, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 72, + "change_mark": 200, + "old_domain": 2816496, + "new_domain": 2816448, + "status": null + }, + { + "sequence": 201, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 75, + "change_mark": 201, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 202, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 115, + "change_mark": 202, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 203, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 73, + "change_mark": 203, + "old_domain": 2816496, + "new_domain": 2816448, + "status": null + }, + { + "sequence": 204, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 76, + "change_mark": 204, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 205, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 116, + "change_mark": 205, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 206, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 74, + "change_mark": 206, + "old_domain": 2816496, + "new_domain": 2816448, + "status": null + }, + { + "sequence": 207, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 77, + "change_mark": 207, + "old_domain": 5581241, + "new_domain": 5581232, + "status": null + }, + { + "sequence": 208, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 117, + "change_mark": 208, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 209, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 75, + "change_mark": 209, + "old_domain": 2816496, + "new_domain": 2816448, + "status": null + }, + { + "sequence": 210, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 78, + "change_mark": 210, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 211, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 118, + "change_mark": 211, + "old_domain": 8388607, + "new_domain": 2818041, + "status": null + }, + { + "sequence": 212, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 76, + "change_mark": 212, + "old_domain": 2816496, + "new_domain": 2806208, + "status": null + }, + { + "sequence": 213, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 79, + "change_mark": 213, + "old_domain": 2816505, + "new_domain": 2816496, + "status": null + }, + { + "sequence": 214, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 119, + "change_mark": 214, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 215, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 77, + "change_mark": 215, + "old_domain": 5581232, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 216, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 80, + "change_mark": 216, + "old_domain": 10745, + "new_domain": 10736, + "status": null + }, + { + "sequence": 217, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 120, + "change_mark": 217, + "old_domain": 8388607, + "new_domain": 8387065, + "status": null + }, + { + "sequence": 218, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 78, + "change_mark": 218, + "old_domain": 2816496, + "new_domain": 2816448, + "status": null + }, + { + "sequence": 219, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 121, + "change_mark": 219, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 220, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 79, + "change_mark": 220, + "old_domain": 2816496, + "new_domain": 2806208, + "status": null + }, + { + "sequence": 221, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 122, + "change_mark": 221, + "old_domain": 16712, + "new_domain": 328, + "status": null + }, + { + "sequence": 222, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 80, + "change_mark": 222, + "old_domain": 10736, + "new_domain": 448, + "status": null + }, + { + "sequence": 223, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 83, + "change_mark": 223, + "old_domain": 8387065, + "new_domain": 8366576, + "status": null + }, + { + "sequence": 224, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 123, + "change_mark": 224, + "old_domain": 887504, + "new_domain": 2192, + "status": null + }, + { + "sequence": 225, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 84, + "change_mark": 225, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 226, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 124, + "change_mark": 226, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 227, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 85, + "change_mark": 227, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 228, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 125, + "change_mark": 228, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 229, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 83, + "change_mark": 229, + "old_domain": 8366576, + "new_domain": 8366528, + "status": null + }, + { + "sequence": 230, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 86, + "change_mark": 230, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 231, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 126, + "change_mark": 231, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 232, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 84, + "change_mark": 232, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 233, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 87, + "change_mark": 233, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 234, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 127, + "change_mark": 234, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 235, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 85, + "change_mark": 235, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 236, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 88, + "change_mark": 236, + "old_domain": 2818041, + "new_domain": 2818032, + "status": null + }, + { + "sequence": 237, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 128, + "change_mark": 237, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 238, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 86, + "change_mark": 238, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 239, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 89, + "change_mark": 239, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 240, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 129, + "change_mark": 240, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 241, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 87, + "change_mark": 241, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 242, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 90, + "change_mark": 242, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 243, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 130, + "change_mark": 243, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 244, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 88, + "change_mark": 244, + "old_domain": 2818032, + "new_domain": 2817984, + "status": null + }, + { + "sequence": 245, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 91, + "change_mark": 245, + "old_domain": 2818041, + "new_domain": 2818032, + "status": null + }, + { + "sequence": 246, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 131, + "change_mark": 246, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 247, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 89, + "change_mark": 247, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 248, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 92, + "change_mark": 248, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 249, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 132, + "change_mark": 249, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 250, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 90, + "change_mark": 250, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 251, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 93, + "change_mark": 251, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 252, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 133, + "change_mark": 252, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 253, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 91, + "change_mark": 253, + "old_domain": 2818032, + "new_domain": 2817984, + "status": null + }, + { + "sequence": 254, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 94, + "change_mark": 254, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 255, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 134, + "change_mark": 255, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 256, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 92, + "change_mark": 256, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 257, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 95, + "change_mark": 257, + "old_domain": 2818041, + "new_domain": 2818032, + "status": null + }, + { + "sequence": 258, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 135, + "change_mark": 258, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 259, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 93, + "change_mark": 259, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 260, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 96, + "change_mark": 260, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 261, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 136, + "change_mark": 261, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 262, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 94, + "change_mark": 262, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 263, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 97, + "change_mark": 263, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 264, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 137, + "change_mark": 264, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 265, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 95, + "change_mark": 265, + "old_domain": 2818032, + "new_domain": 2817984, + "status": null + }, + { + "sequence": 266, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 98, + "change_mark": 266, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 267, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 138, + "change_mark": 267, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 268, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 96, + "change_mark": 268, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 269, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 99, + "change_mark": 269, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 270, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 139, + "change_mark": 270, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 271, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 97, + "change_mark": 271, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 272, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 100, + "change_mark": 272, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 273, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 140, + "change_mark": 273, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 274, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 98, + "change_mark": 274, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 275, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 101, + "change_mark": 275, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 276, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 141, + "change_mark": 276, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 277, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 99, + "change_mark": 277, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 278, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 102, + "change_mark": 278, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 279, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 142, + "change_mark": 279, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 280, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 100, + "change_mark": 280, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 281, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 103, + "change_mark": 281, + "old_domain": 2818041, + "new_domain": 2818032, + "status": null + }, + { + "sequence": 282, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 143, + "change_mark": 282, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 283, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 101, + "change_mark": 283, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 284, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 104, + "change_mark": 284, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 285, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 144, + "change_mark": 285, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 286, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 102, + "change_mark": 286, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 287, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 105, + "change_mark": 287, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 288, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 145, + "change_mark": 288, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 289, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 103, + "change_mark": 289, + "old_domain": 2818032, + "new_domain": 2817984, + "status": null + }, + { + "sequence": 290, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 106, + "change_mark": 290, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 291, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 146, + "change_mark": 291, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 292, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 104, + "change_mark": 292, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 293, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 107, + "change_mark": 293, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 294, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 147, + "change_mark": 294, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 295, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 105, + "change_mark": 295, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 296, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 108, + "change_mark": 296, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 297, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 148, + "change_mark": 297, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 298, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 106, + "change_mark": 298, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 299, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 109, + "change_mark": 299, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 300, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 149, + "change_mark": 300, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 301, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 107, + "change_mark": 301, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 302, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 110, + "change_mark": 302, + "old_domain": 2818041, + "new_domain": 2818032, + "status": null + }, + { + "sequence": 303, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 150, + "change_mark": 303, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 304, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 108, + "change_mark": 304, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 305, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 111, + "change_mark": 305, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 306, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 151, + "change_mark": 306, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 307, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 109, + "change_mark": 307, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 308, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 112, + "change_mark": 308, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 309, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 152, + "change_mark": 309, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 310, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 110, + "change_mark": 310, + "old_domain": 2818032, + "new_domain": 2817984, + "status": null + }, + { + "sequence": 311, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 113, + "change_mark": 311, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 312, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 153, + "change_mark": 312, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 313, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 111, + "change_mark": 313, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 314, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 114, + "change_mark": 314, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 315, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 154, + "change_mark": 315, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 316, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 112, + "change_mark": 316, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 317, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 115, + "change_mark": 317, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 318, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 155, + "change_mark": 318, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 319, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 113, + "change_mark": 319, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 320, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 116, + "change_mark": 320, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 321, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 156, + "change_mark": 321, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 322, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 114, + "change_mark": 322, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 323, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 117, + "change_mark": 323, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 324, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 157, + "change_mark": 324, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 325, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 115, + "change_mark": 325, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 326, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 118, + "change_mark": 326, + "old_domain": 2818041, + "new_domain": 2818032, + "status": null + }, + { + "sequence": 327, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 158, + "change_mark": 327, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 328, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 116, + "change_mark": 328, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 329, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 119, + "change_mark": 329, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 330, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 159, + "change_mark": 330, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 331, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 117, + "change_mark": 331, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 332, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 120, + "change_mark": 332, + "old_domain": 8387065, + "new_domain": 8387056, + "status": null + }, + { + "sequence": 333, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 160, + "change_mark": 333, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 334, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 118, + "change_mark": 334, + "old_domain": 2818032, + "new_domain": 2817984, + "status": null + }, + { + "sequence": 335, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 121, + "change_mark": 335, + "old_domain": 20952, + "new_domain": 20944, + "status": null + }, + { + "sequence": 336, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 161, + "change_mark": 336, + "old_domain": 1282695, + "new_domain": 1282689, + "status": null + }, + { + "sequence": 337, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 119, + "change_mark": 337, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 338, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 122, + "change_mark": 338, + "old_domain": 328, + "new_domain": 320, + "status": null + }, + { + "sequence": 339, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 120, + "change_mark": 339, + "old_domain": 8387056, + "new_domain": 8387008, + "status": null + }, + { + "sequence": 340, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 121, + "change_mark": 340, + "old_domain": 20944, + "new_domain": 20928, + "status": null + }, + { + "sequence": 341, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 82, + "change_mark": 341, + "old_domain": 15, + "new_domain": 12, + "status": null + }, + { + "sequence": 342, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 124, + "change_mark": 342, + "old_domain": 8388601, + "new_domain": 891600, + "status": null + }, + { + "sequence": 343, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 164, + "change_mark": 343, + "old_domain": 15, + "new_domain": 9, + "status": null + }, + { + "sequence": 344, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 83, + "change_mark": 344, + "old_domain": 8366528, + "new_domain": 5745088, + "status": null + }, + { + "sequence": 345, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 125, + "change_mark": 345, + "old_domain": 8388601, + "new_domain": 8372208, + "status": null + }, + { + "sequence": 346, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 165, + "change_mark": 346, + "old_domain": 8388607, + "new_domain": 3932089, + "status": null + }, + { + "sequence": 347, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 123, + "change_mark": 347, + "old_domain": 2192, + "new_domain": 2176, + "status": null + }, + { + "sequence": 348, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 126, + "change_mark": 348, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 349, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 166, + "change_mark": 349, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 350, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 124, + "change_mark": 350, + "old_domain": 891600, + "new_domain": 891584, + "status": null + }, + { + "sequence": 351, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 127, + "change_mark": 351, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 352, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 167, + "change_mark": 352, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 353, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 125, + "change_mark": 353, + "old_domain": 8372208, + "new_domain": 8372160, + "status": null + }, + { + "sequence": 354, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 128, + "change_mark": 354, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 355, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 168, + "change_mark": 355, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 356, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 126, + "change_mark": 356, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 357, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 129, + "change_mark": 357, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 358, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 169, + "change_mark": 358, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 359, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 127, + "change_mark": 359, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 360, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 130, + "change_mark": 360, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 361, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 170, + "change_mark": 361, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 362, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 128, + "change_mark": 362, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 363, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 131, + "change_mark": 363, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 364, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 171, + "change_mark": 364, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 365, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 129, + "change_mark": 365, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 366, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 132, + "change_mark": 366, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 367, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 172, + "change_mark": 367, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 368, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 130, + "change_mark": 368, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 369, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 133, + "change_mark": 369, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 370, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 173, + "change_mark": 370, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 371, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 131, + "change_mark": 371, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 372, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 134, + "change_mark": 372, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 373, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 174, + "change_mark": 373, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 374, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 132, + "change_mark": 374, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 375, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 135, + "change_mark": 375, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 376, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 175, + "change_mark": 376, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 377, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 133, + "change_mark": 377, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 378, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 136, + "change_mark": 378, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 379, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 176, + "change_mark": 379, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 380, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 134, + "change_mark": 380, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 381, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 137, + "change_mark": 381, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 382, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 177, + "change_mark": 382, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 383, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 135, + "change_mark": 383, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 384, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 138, + "change_mark": 384, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 385, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 178, + "change_mark": 385, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 386, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 136, + "change_mark": 386, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 387, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 139, + "change_mark": 387, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 388, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 179, + "change_mark": 388, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 389, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 137, + "change_mark": 389, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 390, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 140, + "change_mark": 390, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 391, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 180, + "change_mark": 391, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 392, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 138, + "change_mark": 392, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 393, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 141, + "change_mark": 393, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 394, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 181, + "change_mark": 394, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 395, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 139, + "change_mark": 395, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 396, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 142, + "change_mark": 396, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 397, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 182, + "change_mark": 397, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 398, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 140, + "change_mark": 398, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 399, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 143, + "change_mark": 399, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 400, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 183, + "change_mark": 400, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 401, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 141, + "change_mark": 401, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 402, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 144, + "change_mark": 402, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 403, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 184, + "change_mark": 403, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 404, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 142, + "change_mark": 404, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 405, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 145, + "change_mark": 405, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 406, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 185, + "change_mark": 406, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 407, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 143, + "change_mark": 407, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 408, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 146, + "change_mark": 408, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 409, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 186, + "change_mark": 409, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 410, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 144, + "change_mark": 410, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 411, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 147, + "change_mark": 411, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 412, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 187, + "change_mark": 412, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 413, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 145, + "change_mark": 413, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 414, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 148, + "change_mark": 414, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 415, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 188, + "change_mark": 415, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 416, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 146, + "change_mark": 416, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 417, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 149, + "change_mark": 417, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 418, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 189, + "change_mark": 418, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 419, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 147, + "change_mark": 419, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 420, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 150, + "change_mark": 420, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 421, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 190, + "change_mark": 421, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 422, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 148, + "change_mark": 422, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 423, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 151, + "change_mark": 423, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 424, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 191, + "change_mark": 424, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 425, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 149, + "change_mark": 425, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 426, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 152, + "change_mark": 426, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 427, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 192, + "change_mark": 427, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 428, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 150, + "change_mark": 428, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 429, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 153, + "change_mark": 429, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 430, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 193, + "change_mark": 430, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 431, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 151, + "change_mark": 431, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 432, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 154, + "change_mark": 432, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 433, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 194, + "change_mark": 433, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 434, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 152, + "change_mark": 434, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 435, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 155, + "change_mark": 435, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 436, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 195, + "change_mark": 436, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 437, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 153, + "change_mark": 437, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 438, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 156, + "change_mark": 438, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 439, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 196, + "change_mark": 439, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 440, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 154, + "change_mark": 440, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 441, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 157, + "change_mark": 441, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 442, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 197, + "change_mark": 442, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 443, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 155, + "change_mark": 443, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 444, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 158, + "change_mark": 444, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 445, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 198, + "change_mark": 445, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 446, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 156, + "change_mark": 446, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 447, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 159, + "change_mark": 447, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 448, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 199, + "change_mark": 448, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 449, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 157, + "change_mark": 449, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 450, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 160, + "change_mark": 450, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 451, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 200, + "change_mark": 451, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 452, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 158, + "change_mark": 452, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 453, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 161, + "change_mark": 453, + "old_domain": 1282689, + "new_domain": 1282688, + "status": null + }, + { + "sequence": 454, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 201, + "change_mark": 454, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 455, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 159, + "change_mark": 455, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 456, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 120, + "change_mark": 456, + "old_domain": 8387008, + "new_domain": 6158784, + "status": null + }, + { + "sequence": 457, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 202, + "change_mark": 457, + "old_domain": 8388607, + "new_domain": 339897, + "status": null + }, + { + "sequence": 458, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 160, + "change_mark": 458, + "old_domain": 8388592, + "new_domain": 8380352, + "status": null + }, + { + "sequence": 459, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 123, + "change_mark": 459, + "old_domain": 2176, + "new_domain": 128, + "status": null + }, + { + "sequence": 460, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 165, + "change_mark": 460, + "old_domain": 3932089, + "new_domain": 3911600, + "status": null + }, + { + "sequence": 461, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 205, + "change_mark": 461, + "old_domain": 15, + "new_domain": 11, + "status": null + }, + { + "sequence": 462, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 166, + "change_mark": 462, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 463, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 206, + "change_mark": 463, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 464, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 167, + "change_mark": 464, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 465, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 207, + "change_mark": 465, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 466, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 165, + "change_mark": 466, + "old_domain": 3911600, + "new_domain": 3911552, + "status": null + }, + { + "sequence": 467, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 168, + "change_mark": 467, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 468, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 208, + "change_mark": 468, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 469, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 166, + "change_mark": 469, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 470, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 169, + "change_mark": 470, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 471, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 209, + "change_mark": 471, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 472, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 167, + "change_mark": 472, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 473, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 170, + "change_mark": 473, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 474, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 210, + "change_mark": 474, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 475, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 168, + "change_mark": 475, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 476, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 171, + "change_mark": 476, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 477, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 211, + "change_mark": 477, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 478, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 169, + "change_mark": 478, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 479, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 172, + "change_mark": 479, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 480, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 212, + "change_mark": 480, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 481, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 170, + "change_mark": 481, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 482, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 173, + "change_mark": 482, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 483, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 213, + "change_mark": 483, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 484, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 171, + "change_mark": 484, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 485, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 174, + "change_mark": 485, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 486, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 214, + "change_mark": 486, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 487, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 172, + "change_mark": 487, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 488, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 175, + "change_mark": 488, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 489, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 215, + "change_mark": 489, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 490, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 173, + "change_mark": 490, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 491, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 176, + "change_mark": 491, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 492, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 216, + "change_mark": 492, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 493, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 174, + "change_mark": 493, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 494, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 177, + "change_mark": 494, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 495, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 217, + "change_mark": 495, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 496, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 175, + "change_mark": 496, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 497, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 178, + "change_mark": 497, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 498, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 218, + "change_mark": 498, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 499, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 176, + "change_mark": 499, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 500, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 179, + "change_mark": 500, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 501, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 219, + "change_mark": 501, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 502, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 177, + "change_mark": 502, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 503, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 180, + "change_mark": 503, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 504, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 220, + "change_mark": 504, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 505, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 178, + "change_mark": 505, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 506, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 181, + "change_mark": 506, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 507, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 221, + "change_mark": 507, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 508, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 179, + "change_mark": 508, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 509, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 182, + "change_mark": 509, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 510, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 222, + "change_mark": 510, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 511, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 180, + "change_mark": 511, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 512, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 183, + "change_mark": 512, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 513, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 223, + "change_mark": 513, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 514, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 181, + "change_mark": 514, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 515, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 184, + "change_mark": 515, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 516, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 224, + "change_mark": 516, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 517, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 182, + "change_mark": 517, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 518, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 185, + "change_mark": 518, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 519, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 225, + "change_mark": 519, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 520, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 183, + "change_mark": 520, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 521, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 186, + "change_mark": 521, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 522, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 226, + "change_mark": 522, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 523, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 184, + "change_mark": 523, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 524, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 187, + "change_mark": 524, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 525, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 227, + "change_mark": 525, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 526, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 185, + "change_mark": 526, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 527, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 188, + "change_mark": 527, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 528, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 228, + "change_mark": 528, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 529, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 186, + "change_mark": 529, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 530, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 189, + "change_mark": 530, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 531, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 229, + "change_mark": 531, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 532, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 187, + "change_mark": 532, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 533, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 190, + "change_mark": 533, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 534, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 230, + "change_mark": 534, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 535, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 188, + "change_mark": 535, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 536, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 191, + "change_mark": 536, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 537, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 231, + "change_mark": 537, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 538, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 189, + "change_mark": 538, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 539, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 192, + "change_mark": 539, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 540, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 232, + "change_mark": 540, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 541, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 190, + "change_mark": 541, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 542, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 193, + "change_mark": 542, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 543, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 233, + "change_mark": 543, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 544, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 191, + "change_mark": 544, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 545, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 194, + "change_mark": 545, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 546, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 234, + "change_mark": 546, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 547, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 192, + "change_mark": 547, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 548, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 195, + "change_mark": 548, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 549, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 235, + "change_mark": 549, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 550, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 193, + "change_mark": 550, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 551, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 196, + "change_mark": 551, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 552, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 236, + "change_mark": 552, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 553, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 194, + "change_mark": 553, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 554, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 197, + "change_mark": 554, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 555, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 237, + "change_mark": 555, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 556, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 195, + "change_mark": 556, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 557, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 198, + "change_mark": 557, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 558, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 238, + "change_mark": 558, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 559, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 196, + "change_mark": 559, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 560, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 199, + "change_mark": 560, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 561, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 239, + "change_mark": 561, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 562, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 197, + "change_mark": 562, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 563, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 200, + "change_mark": 563, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 564, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 240, + "change_mark": 564, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 565, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 198, + "change_mark": 565, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 566, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 201, + "change_mark": 566, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 567, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 241, + "change_mark": 567, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 568, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 199, + "change_mark": 568, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 569, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 202, + "change_mark": 569, + "old_domain": 339897, + "new_domain": 339888, + "status": null + }, + { + "sequence": 570, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 242, + "change_mark": 570, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 571, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 200, + "change_mark": 571, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 572, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 243, + "change_mark": 572, + "old_domain": 8388607, + "new_domain": 2818041, + "status": null + }, + { + "sequence": 573, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 201, + "change_mark": 573, + "old_domain": 8388592, + "new_domain": 8378304, + "status": null + }, + { + "sequence": 574, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 244, + "change_mark": 574, + "old_domain": 8388607, + "new_domain": 10745, + "status": null + }, + { + "sequence": 575, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 202, + "change_mark": 575, + "old_domain": 339888, + "new_domain": 329600, + "status": null + }, + { + "sequence": 576, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 206, + "change_mark": 576, + "old_domain": 8388601, + "new_domain": 8368112, + "status": null + }, + { + "sequence": 577, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 207, + "change_mark": 577, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 578, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 247, + "change_mark": 578, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 579, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 208, + "change_mark": 579, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 580, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 248, + "change_mark": 580, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 581, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 206, + "change_mark": 581, + "old_domain": 8368112, + "new_domain": 8368064, + "status": null + }, + { + "sequence": 582, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 209, + "change_mark": 582, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 583, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 249, + "change_mark": 583, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 584, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 207, + "change_mark": 584, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 585, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 210, + "change_mark": 585, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 586, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 250, + "change_mark": 586, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 587, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 208, + "change_mark": 587, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 588, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 211, + "change_mark": 588, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 589, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 251, + "change_mark": 589, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 590, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 209, + "change_mark": 590, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 591, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 212, + "change_mark": 591, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 592, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 252, + "change_mark": 592, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 593, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 210, + "change_mark": 593, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 594, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 213, + "change_mark": 594, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 595, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 253, + "change_mark": 595, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 596, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 211, + "change_mark": 596, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 597, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 214, + "change_mark": 597, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 598, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 254, + "change_mark": 598, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 599, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 212, + "change_mark": 599, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 600, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 215, + "change_mark": 600, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 601, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 255, + "change_mark": 601, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 602, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 213, + "change_mark": 602, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 603, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 216, + "change_mark": 603, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 604, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 256, + "change_mark": 604, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 605, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 214, + "change_mark": 605, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 606, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 217, + "change_mark": 606, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 607, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 257, + "change_mark": 607, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 608, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 215, + "change_mark": 608, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 609, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 218, + "change_mark": 609, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 610, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 258, + "change_mark": 610, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 611, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 216, + "change_mark": 611, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 612, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 219, + "change_mark": 612, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 613, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 259, + "change_mark": 613, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 614, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 217, + "change_mark": 614, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 615, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 220, + "change_mark": 615, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 616, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 260, + "change_mark": 616, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 617, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 218, + "change_mark": 617, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 618, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 221, + "change_mark": 618, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 619, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 261, + "change_mark": 619, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 620, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 219, + "change_mark": 620, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 621, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 222, + "change_mark": 621, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 622, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 262, + "change_mark": 622, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 623, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 220, + "change_mark": 623, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 624, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 223, + "change_mark": 624, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 625, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 263, + "change_mark": 625, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 626, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 221, + "change_mark": 626, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 627, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 224, + "change_mark": 627, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 628, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 264, + "change_mark": 628, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 629, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 222, + "change_mark": 629, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 630, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 225, + "change_mark": 630, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 631, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 265, + "change_mark": 631, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 632, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 223, + "change_mark": 632, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 633, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 226, + "change_mark": 633, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 634, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 266, + "change_mark": 634, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 635, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 224, + "change_mark": 635, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 636, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 227, + "change_mark": 636, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 637, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 267, + "change_mark": 637, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 638, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 225, + "change_mark": 638, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 639, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 228, + "change_mark": 639, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 640, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 268, + "change_mark": 640, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 641, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 226, + "change_mark": 641, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 642, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 229, + "change_mark": 642, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 643, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 269, + "change_mark": 643, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 644, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 227, + "change_mark": 644, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 645, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 230, + "change_mark": 645, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 646, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 270, + "change_mark": 646, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 647, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 228, + "change_mark": 647, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 648, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 231, + "change_mark": 648, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 649, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 271, + "change_mark": 649, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 650, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 229, + "change_mark": 650, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 651, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 232, + "change_mark": 651, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 652, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 272, + "change_mark": 652, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 653, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 230, + "change_mark": 653, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 654, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 233, + "change_mark": 654, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 655, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 273, + "change_mark": 655, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 656, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 231, + "change_mark": 656, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 657, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 234, + "change_mark": 657, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 658, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 274, + "change_mark": 658, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 659, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 232, + "change_mark": 659, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 660, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 235, + "change_mark": 660, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 661, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 275, + "change_mark": 661, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 662, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 233, + "change_mark": 662, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 663, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 236, + "change_mark": 663, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 664, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 276, + "change_mark": 664, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 665, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 234, + "change_mark": 665, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 666, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 237, + "change_mark": 666, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 667, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 277, + "change_mark": 667, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 668, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 235, + "change_mark": 668, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 669, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 238, + "change_mark": 669, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 670, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 278, + "change_mark": 670, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 671, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 236, + "change_mark": 671, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 672, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 239, + "change_mark": 672, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 673, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 279, + "change_mark": 673, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 674, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 237, + "change_mark": 674, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 675, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 240, + "change_mark": 675, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 676, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 280, + "change_mark": 676, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 677, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 238, + "change_mark": 677, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 678, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 241, + "change_mark": 678, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 679, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 281, + "change_mark": 679, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 680, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 239, + "change_mark": 680, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 681, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 242, + "change_mark": 681, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 682, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 282, + "change_mark": 682, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 683, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 240, + "change_mark": 683, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 684, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 243, + "change_mark": 684, + "old_domain": 2818041, + "new_domain": 2818032, + "status": null + }, + { + "sequence": 685, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 283, + "change_mark": 685, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 686, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 241, + "change_mark": 686, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 687, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 244, + "change_mark": 687, + "old_domain": 10745, + "new_domain": 10736, + "status": null + }, + { + "sequence": 688, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 284, + "change_mark": 688, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 689, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 242, + "change_mark": 689, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 690, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 285, + "change_mark": 690, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 691, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 243, + "change_mark": 691, + "old_domain": 2818032, + "new_domain": 2807744, + "status": null + }, + { + "sequence": 692, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 286, + "change_mark": 692, + "old_domain": 16712, + "new_domain": 328, + "status": null + }, + { + "sequence": 693, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 244, + "change_mark": 693, + "old_domain": 10736, + "new_domain": 448, + "status": null + }, + { + "sequence": 694, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 247, + "change_mark": 694, + "old_domain": 8388601, + "new_domain": 8368112, + "status": null + }, + { + "sequence": 695, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 287, + "change_mark": 695, + "old_domain": 887504, + "new_domain": 2192, + "status": null + }, + { + "sequence": 696, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 248, + "change_mark": 696, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 697, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 288, + "change_mark": 697, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 698, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 249, + "change_mark": 698, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 699, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 289, + "change_mark": 699, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 700, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 247, + "change_mark": 700, + "old_domain": 8368112, + "new_domain": 8368064, + "status": null + }, + { + "sequence": 701, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 250, + "change_mark": 701, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 702, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 290, + "change_mark": 702, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 703, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 248, + "change_mark": 703, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 704, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 251, + "change_mark": 704, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 705, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 291, + "change_mark": 705, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 706, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 249, + "change_mark": 706, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 707, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 252, + "change_mark": 707, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 708, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 292, + "change_mark": 708, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 709, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 250, + "change_mark": 709, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 710, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 253, + "change_mark": 710, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 711, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 293, + "change_mark": 711, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 712, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 251, + "change_mark": 712, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 713, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 254, + "change_mark": 713, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 714, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 294, + "change_mark": 714, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 715, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 252, + "change_mark": 715, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 716, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 255, + "change_mark": 716, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 717, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 295, + "change_mark": 717, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 718, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 253, + "change_mark": 718, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 719, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 256, + "change_mark": 719, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 720, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 296, + "change_mark": 720, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 721, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 254, + "change_mark": 721, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 722, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 257, + "change_mark": 722, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 723, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 297, + "change_mark": 723, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 724, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 255, + "change_mark": 724, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 725, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 258, + "change_mark": 725, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 726, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 298, + "change_mark": 726, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 727, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 256, + "change_mark": 727, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 728, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 259, + "change_mark": 728, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 729, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 299, + "change_mark": 729, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 730, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 257, + "change_mark": 730, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 731, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 260, + "change_mark": 731, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 732, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 300, + "change_mark": 732, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 733, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 258, + "change_mark": 733, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 734, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 261, + "change_mark": 734, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 735, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 301, + "change_mark": 735, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 736, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 259, + "change_mark": 736, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 737, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 262, + "change_mark": 737, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 738, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 302, + "change_mark": 738, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 739, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 260, + "change_mark": 739, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 740, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 263, + "change_mark": 740, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 741, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 303, + "change_mark": 741, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 742, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 261, + "change_mark": 742, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 743, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 264, + "change_mark": 743, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 744, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 304, + "change_mark": 744, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 745, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 262, + "change_mark": 745, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 746, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 265, + "change_mark": 746, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 747, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 305, + "change_mark": 747, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 748, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 263, + "change_mark": 748, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 749, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 266, + "change_mark": 749, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 750, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 306, + "change_mark": 750, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 751, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 264, + "change_mark": 751, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 752, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 267, + "change_mark": 752, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 753, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 307, + "change_mark": 753, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 754, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 265, + "change_mark": 754, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 755, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 268, + "change_mark": 755, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 756, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 308, + "change_mark": 756, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 757, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 266, + "change_mark": 757, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 758, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 269, + "change_mark": 758, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 759, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 309, + "change_mark": 759, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 760, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 267, + "change_mark": 760, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 761, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 270, + "change_mark": 761, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 762, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 310, + "change_mark": 762, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 763, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 268, + "change_mark": 763, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 764, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 271, + "change_mark": 764, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 765, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 311, + "change_mark": 765, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 766, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 269, + "change_mark": 766, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 767, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 272, + "change_mark": 767, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 768, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 312, + "change_mark": 768, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 769, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 270, + "change_mark": 769, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 770, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 273, + "change_mark": 770, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 771, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 313, + "change_mark": 771, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 772, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 271, + "change_mark": 772, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 773, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 274, + "change_mark": 773, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 774, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 314, + "change_mark": 774, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 775, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 272, + "change_mark": 775, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 776, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 275, + "change_mark": 776, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 777, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 315, + "change_mark": 777, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 778, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 273, + "change_mark": 778, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 779, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 276, + "change_mark": 779, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 780, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 316, + "change_mark": 780, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 781, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 274, + "change_mark": 781, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 782, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 277, + "change_mark": 782, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 783, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 317, + "change_mark": 783, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 784, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 275, + "change_mark": 784, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 785, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 278, + "change_mark": 785, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 786, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 318, + "change_mark": 786, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 787, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 276, + "change_mark": 787, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 788, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 279, + "change_mark": 788, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 789, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 319, + "change_mark": 789, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 790, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 277, + "change_mark": 790, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 791, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 280, + "change_mark": 791, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 792, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 320, + "change_mark": 792, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 793, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 278, + "change_mark": 793, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 794, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 281, + "change_mark": 794, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 795, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 321, + "change_mark": 795, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 796, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 279, + "change_mark": 796, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 797, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 282, + "change_mark": 797, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 798, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 322, + "change_mark": 798, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 799, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 280, + "change_mark": 799, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 800, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 283, + "change_mark": 800, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 801, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 323, + "change_mark": 801, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 802, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 281, + "change_mark": 802, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 803, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 284, + "change_mark": 803, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 804, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 324, + "change_mark": 804, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 805, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 282, + "change_mark": 805, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 806, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 285, + "change_mark": 806, + "old_domain": 20952, + "new_domain": 20944, + "status": null + }, + { + "sequence": 807, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 325, + "change_mark": 807, + "old_domain": 1282695, + "new_domain": 1282689, + "status": null + }, + { + "sequence": 808, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 283, + "change_mark": 808, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 809, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 286, + "change_mark": 809, + "old_domain": 328, + "new_domain": 320, + "status": null + }, + { + "sequence": 810, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 284, + "change_mark": 810, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 811, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 285, + "change_mark": 811, + "old_domain": 20944, + "new_domain": 20928, + "status": null + }, + { + "sequence": 812, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 246, + "change_mark": 812, + "old_domain": 15, + "new_domain": 12, + "status": null + }, + { + "sequence": 813, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 288, + "change_mark": 813, + "old_domain": 8388601, + "new_domain": 891600, + "status": null + }, + { + "sequence": 814, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 328, + "change_mark": 814, + "old_domain": 15, + "new_domain": 9, + "status": null + }, + { + "sequence": 815, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 247, + "change_mark": 815, + "old_domain": 8368064, + "new_domain": 5746624, + "status": null + }, + { + "sequence": 816, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 289, + "change_mark": 816, + "old_domain": 8388601, + "new_domain": 8372208, + "status": null + }, + { + "sequence": 817, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 329, + "change_mark": 817, + "old_domain": 8388607, + "new_domain": 3932089, + "status": null + }, + { + "sequence": 818, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 287, + "change_mark": 818, + "old_domain": 2192, + "new_domain": 2176, + "status": null + }, + { + "sequence": 819, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 290, + "change_mark": 819, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 820, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 330, + "change_mark": 820, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 821, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 288, + "change_mark": 821, + "old_domain": 891600, + "new_domain": 891584, + "status": null + }, + { + "sequence": 822, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 291, + "change_mark": 822, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 823, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 331, + "change_mark": 823, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 824, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 289, + "change_mark": 824, + "old_domain": 8372208, + "new_domain": 8372160, + "status": null + }, + { + "sequence": 825, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 292, + "change_mark": 825, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 826, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 332, + "change_mark": 826, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 827, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 290, + "change_mark": 827, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 828, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 293, + "change_mark": 828, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 829, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 333, + "change_mark": 829, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 830, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 291, + "change_mark": 830, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 831, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 294, + "change_mark": 831, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 832, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 334, + "change_mark": 832, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 833, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 292, + "change_mark": 833, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 834, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 295, + "change_mark": 834, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 835, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 335, + "change_mark": 835, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 836, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 293, + "change_mark": 836, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 837, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 296, + "change_mark": 837, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 838, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 336, + "change_mark": 838, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 839, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 294, + "change_mark": 839, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 840, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 297, + "change_mark": 840, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 841, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 337, + "change_mark": 841, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 842, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 295, + "change_mark": 842, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 843, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 298, + "change_mark": 843, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 844, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 338, + "change_mark": 844, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 845, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 296, + "change_mark": 845, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 846, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 299, + "change_mark": 846, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 847, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 339, + "change_mark": 847, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 848, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 297, + "change_mark": 848, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 849, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 300, + "change_mark": 849, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 850, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 340, + "change_mark": 850, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 851, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 298, + "change_mark": 851, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 852, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 301, + "change_mark": 852, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 853, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 341, + "change_mark": 853, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 854, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 299, + "change_mark": 854, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 855, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 302, + "change_mark": 855, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 856, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 342, + "change_mark": 856, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 857, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 300, + "change_mark": 857, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 858, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 303, + "change_mark": 858, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 859, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 343, + "change_mark": 859, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 860, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 301, + "change_mark": 860, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 861, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 304, + "change_mark": 861, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 862, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 344, + "change_mark": 862, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 863, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 302, + "change_mark": 863, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 864, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 305, + "change_mark": 864, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 865, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 345, + "change_mark": 865, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 866, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 303, + "change_mark": 866, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 867, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 306, + "change_mark": 867, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 868, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 346, + "change_mark": 868, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 869, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 304, + "change_mark": 869, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 870, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 307, + "change_mark": 870, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 871, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 347, + "change_mark": 871, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 872, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 305, + "change_mark": 872, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 873, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 308, + "change_mark": 873, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 874, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 348, + "change_mark": 874, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 875, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 306, + "change_mark": 875, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 876, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 309, + "change_mark": 876, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 877, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 349, + "change_mark": 877, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 878, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 307, + "change_mark": 878, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 879, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 310, + "change_mark": 879, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 880, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 350, + "change_mark": 880, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 881, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 308, + "change_mark": 881, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 882, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 311, + "change_mark": 882, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 883, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 351, + "change_mark": 883, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 884, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 309, + "change_mark": 884, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 885, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 312, + "change_mark": 885, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 886, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 352, + "change_mark": 886, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 887, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 310, + "change_mark": 887, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 888, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 313, + "change_mark": 888, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 889, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 353, + "change_mark": 889, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 890, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 311, + "change_mark": 890, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 891, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 314, + "change_mark": 891, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 892, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 354, + "change_mark": 892, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 893, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 312, + "change_mark": 893, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 894, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 315, + "change_mark": 894, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 895, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 355, + "change_mark": 895, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 896, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 313, + "change_mark": 896, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 897, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 316, + "change_mark": 897, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 898, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 356, + "change_mark": 898, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 899, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 314, + "change_mark": 899, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 900, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 317, + "change_mark": 900, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 901, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 357, + "change_mark": 901, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 902, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 315, + "change_mark": 902, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 903, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 318, + "change_mark": 903, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 904, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 358, + "change_mark": 904, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 905, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 316, + "change_mark": 905, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 906, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 319, + "change_mark": 906, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 907, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 359, + "change_mark": 907, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 908, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 317, + "change_mark": 908, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 909, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 320, + "change_mark": 909, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 910, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 360, + "change_mark": 910, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 911, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 318, + "change_mark": 911, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 912, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 321, + "change_mark": 912, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 913, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 361, + "change_mark": 913, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 914, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 319, + "change_mark": 914, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 915, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 322, + "change_mark": 915, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 916, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 362, + "change_mark": 916, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 917, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 320, + "change_mark": 917, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 918, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 323, + "change_mark": 918, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 919, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 363, + "change_mark": 919, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 920, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 321, + "change_mark": 920, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 921, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 324, + "change_mark": 921, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 922, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 364, + "change_mark": 922, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 923, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 322, + "change_mark": 923, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 924, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 325, + "change_mark": 924, + "old_domain": 1282689, + "new_domain": 1282688, + "status": null + }, + { + "sequence": 925, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 365, + "change_mark": 925, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 926, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 323, + "change_mark": 926, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 927, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 284, + "change_mark": 927, + "old_domain": 8388544, + "new_domain": 6160320, + "status": null + }, + { + "sequence": 928, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 366, + "change_mark": 928, + "old_domain": 8388607, + "new_domain": 339897, + "status": null + }, + { + "sequence": 929, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 324, + "change_mark": 929, + "old_domain": 8388592, + "new_domain": 8380352, + "status": null + }, + { + "sequence": 930, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 287, + "change_mark": 930, + "old_domain": 2176, + "new_domain": 128, + "status": null + }, + { + "sequence": 931, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 329, + "change_mark": 931, + "old_domain": 3932089, + "new_domain": 3911600, + "status": null + }, + { + "sequence": 932, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 369, + "change_mark": 932, + "old_domain": 15, + "new_domain": 11, + "status": null + }, + { + "sequence": 933, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 330, + "change_mark": 933, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 934, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 370, + "change_mark": 934, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 935, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 331, + "change_mark": 935, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 936, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 371, + "change_mark": 936, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 937, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 329, + "change_mark": 937, + "old_domain": 3911600, + "new_domain": 3911552, + "status": null + }, + { + "sequence": 938, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 332, + "change_mark": 938, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 939, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 372, + "change_mark": 939, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 940, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 330, + "change_mark": 940, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 941, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 333, + "change_mark": 941, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 942, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 373, + "change_mark": 942, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 943, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 331, + "change_mark": 943, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 944, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 334, + "change_mark": 944, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 945, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 374, + "change_mark": 945, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 946, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 332, + "change_mark": 946, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 947, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 335, + "change_mark": 947, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 948, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 375, + "change_mark": 948, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 949, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 333, + "change_mark": 949, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 950, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 336, + "change_mark": 950, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 951, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 376, + "change_mark": 951, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 952, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 334, + "change_mark": 952, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 953, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 337, + "change_mark": 953, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 954, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 377, + "change_mark": 954, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 955, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 335, + "change_mark": 955, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 956, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 338, + "change_mark": 956, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 957, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 378, + "change_mark": 957, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 958, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 336, + "change_mark": 958, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 959, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 339, + "change_mark": 959, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 960, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 379, + "change_mark": 960, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 961, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 337, + "change_mark": 961, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 962, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 340, + "change_mark": 962, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 963, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 380, + "change_mark": 963, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 964, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 338, + "change_mark": 964, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 965, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 341, + "change_mark": 965, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 966, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 381, + "change_mark": 966, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 967, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 339, + "change_mark": 967, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 968, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 342, + "change_mark": 968, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 969, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 382, + "change_mark": 969, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 970, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 340, + "change_mark": 970, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 971, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 343, + "change_mark": 971, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 972, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 383, + "change_mark": 972, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 973, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 341, + "change_mark": 973, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 974, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 344, + "change_mark": 974, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 975, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 384, + "change_mark": 975, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 976, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 342, + "change_mark": 976, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 977, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 345, + "change_mark": 977, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 978, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 385, + "change_mark": 978, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 979, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 343, + "change_mark": 979, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 980, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 346, + "change_mark": 980, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 981, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 386, + "change_mark": 981, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 982, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 344, + "change_mark": 982, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 983, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 347, + "change_mark": 983, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 984, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 387, + "change_mark": 984, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 985, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 345, + "change_mark": 985, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 986, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 348, + "change_mark": 986, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 987, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 388, + "change_mark": 987, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 988, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 346, + "change_mark": 988, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 989, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 349, + "change_mark": 989, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 990, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 389, + "change_mark": 990, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 991, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 347, + "change_mark": 991, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 992, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 350, + "change_mark": 992, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 993, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 390, + "change_mark": 993, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 994, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 348, + "change_mark": 994, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 995, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 351, + "change_mark": 995, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 996, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 391, + "change_mark": 996, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 997, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 349, + "change_mark": 997, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 998, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 352, + "change_mark": 998, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 999, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 392, + "change_mark": 999, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 1000, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 350, + "change_mark": 1000, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1001, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 353, + "change_mark": 1001, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1002, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 393, + "change_mark": 1002, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 1003, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 351, + "change_mark": 1003, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1004, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 354, + "change_mark": 1004, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1005, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 394, + "change_mark": 1005, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 1006, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 352, + "change_mark": 1006, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1007, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 355, + "change_mark": 1007, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1008, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 395, + "change_mark": 1008, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 1009, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 353, + "change_mark": 1009, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1010, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 356, + "change_mark": 1010, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1011, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 396, + "change_mark": 1011, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 1012, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 354, + "change_mark": 1012, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1013, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 357, + "change_mark": 1013, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1014, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 397, + "change_mark": 1014, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 1015, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 355, + "change_mark": 1015, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1016, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 358, + "change_mark": 1016, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1017, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 398, + "change_mark": 1017, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 1018, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 356, + "change_mark": 1018, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1019, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 359, + "change_mark": 1019, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1020, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 399, + "change_mark": 1020, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 1021, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 357, + "change_mark": 1021, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1022, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 360, + "change_mark": 1022, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1023, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 400, + "change_mark": 1023, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 1024, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 358, + "change_mark": 1024, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1025, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 361, + "change_mark": 1025, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1026, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 401, + "change_mark": 1026, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 1027, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 359, + "change_mark": 1027, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1028, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 362, + "change_mark": 1028, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1029, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 402, + "change_mark": 1029, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 1030, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 360, + "change_mark": 1030, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1031, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 363, + "change_mark": 1031, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1032, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 403, + "change_mark": 1032, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 1033, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 361, + "change_mark": 1033, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1034, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 364, + "change_mark": 1034, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1035, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 404, + "change_mark": 1035, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 1036, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 362, + "change_mark": 1036, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1037, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 365, + "change_mark": 1037, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1038, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 405, + "change_mark": 1038, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 1039, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 363, + "change_mark": 1039, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1040, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 366, + "change_mark": 1040, + "old_domain": 339897, + "new_domain": 339888, + "status": null + }, + { + "sequence": 1041, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 406, + "change_mark": 1041, + "old_domain": 8388607, + "new_domain": 8388601, + "status": null + }, + { + "sequence": 1042, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 364, + "change_mark": 1042, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1043, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 407, + "change_mark": 1043, + "old_domain": 8388607, + "new_domain": 2818041, + "status": null + }, + { + "sequence": 1044, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 365, + "change_mark": 1044, + "old_domain": 8388592, + "new_domain": 8378304, + "status": null + }, + { + "sequence": 1045, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 408, + "change_mark": 1045, + "old_domain": 8388607, + "new_domain": 10745, + "status": null + }, + { + "sequence": 1046, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 366, + "change_mark": 1046, + "old_domain": 339888, + "new_domain": 329600, + "status": null + }, + { + "sequence": 1047, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 370, + "change_mark": 1047, + "old_domain": 8388601, + "new_domain": 8368112, + "status": null + }, + { + "sequence": 1048, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 371, + "change_mark": 1048, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1049, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 411, + "change_mark": 1049, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1050, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 372, + "change_mark": 1050, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1051, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 412, + "change_mark": 1051, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1052, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 370, + "change_mark": 1052, + "old_domain": 8368112, + "new_domain": 8368064, + "status": null + }, + { + "sequence": 1053, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 373, + "change_mark": 1053, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1054, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 371, + "change_mark": 1054, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1055, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 374, + "change_mark": 1055, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1056, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 414, + "change_mark": 1056, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1057, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 372, + "change_mark": 1057, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1058, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 375, + "change_mark": 1058, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1059, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 415, + "change_mark": 1059, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1060, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 373, + "change_mark": 1060, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1061, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 376, + "change_mark": 1061, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1062, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 416, + "change_mark": 1062, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1063, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 374, + "change_mark": 1063, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1064, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 377, + "change_mark": 1064, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1065, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 375, + "change_mark": 1065, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1066, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 378, + "change_mark": 1066, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1067, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 418, + "change_mark": 1067, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1068, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 376, + "change_mark": 1068, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1069, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 379, + "change_mark": 1069, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1070, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 419, + "change_mark": 1070, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1071, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 377, + "change_mark": 1071, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1072, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 380, + "change_mark": 1072, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1073, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 378, + "change_mark": 1073, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1074, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 381, + "change_mark": 1074, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1075, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 421, + "change_mark": 1075, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1076, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 379, + "change_mark": 1076, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1077, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 382, + "change_mark": 1077, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1078, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 422, + "change_mark": 1078, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1079, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 380, + "change_mark": 1079, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1080, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 383, + "change_mark": 1080, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1081, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 423, + "change_mark": 1081, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1082, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 381, + "change_mark": 1082, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1083, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 384, + "change_mark": 1083, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1084, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 382, + "change_mark": 1084, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1085, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 385, + "change_mark": 1085, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1086, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 425, + "change_mark": 1086, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1087, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 383, + "change_mark": 1087, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1088, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 386, + "change_mark": 1088, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1089, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 426, + "change_mark": 1089, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1090, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 384, + "change_mark": 1090, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1091, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 387, + "change_mark": 1091, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1092, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 427, + "change_mark": 1092, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1093, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 385, + "change_mark": 1093, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1094, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 388, + "change_mark": 1094, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1095, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 428, + "change_mark": 1095, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1096, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 386, + "change_mark": 1096, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1097, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 389, + "change_mark": 1097, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1098, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 429, + "change_mark": 1098, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1099, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 387, + "change_mark": 1099, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1100, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 390, + "change_mark": 1100, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1101, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 430, + "change_mark": 1101, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1102, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 388, + "change_mark": 1102, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1103, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 391, + "change_mark": 1103, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1104, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 431, + "change_mark": 1104, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1105, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 389, + "change_mark": 1105, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1106, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 392, + "change_mark": 1106, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1107, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 390, + "change_mark": 1107, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1108, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 393, + "change_mark": 1108, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1109, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 433, + "change_mark": 1109, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1110, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 391, + "change_mark": 1110, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1111, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 394, + "change_mark": 1111, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1112, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 434, + "change_mark": 1112, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1113, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 392, + "change_mark": 1113, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1114, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 395, + "change_mark": 1114, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1115, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 435, + "change_mark": 1115, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1116, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 393, + "change_mark": 1116, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1117, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 396, + "change_mark": 1117, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1118, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 436, + "change_mark": 1118, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1119, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 394, + "change_mark": 1119, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1120, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 397, + "change_mark": 1120, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1121, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 437, + "change_mark": 1121, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1122, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 395, + "change_mark": 1122, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1123, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 398, + "change_mark": 1123, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1124, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 438, + "change_mark": 1124, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1125, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 396, + "change_mark": 1125, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1126, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 399, + "change_mark": 1126, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1127, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 397, + "change_mark": 1127, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1128, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 400, + "change_mark": 1128, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1129, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 440, + "change_mark": 1129, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1130, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 398, + "change_mark": 1130, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1131, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 401, + "change_mark": 1131, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1132, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 441, + "change_mark": 1132, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1133, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 399, + "change_mark": 1133, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1134, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 402, + "change_mark": 1134, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1135, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 442, + "change_mark": 1135, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1136, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 400, + "change_mark": 1136, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1137, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 403, + "change_mark": 1137, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1138, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 443, + "change_mark": 1138, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1139, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 401, + "change_mark": 1139, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1140, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 404, + "change_mark": 1140, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1141, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 444, + "change_mark": 1141, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1142, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 402, + "change_mark": 1142, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1143, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 405, + "change_mark": 1143, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1144, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 445, + "change_mark": 1144, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1145, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 403, + "change_mark": 1145, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1146, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 406, + "change_mark": 1146, + "old_domain": 8388601, + "new_domain": 8388592, + "status": null + }, + { + "sequence": 1147, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 446, + "change_mark": 1147, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1148, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 404, + "change_mark": 1148, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1149, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 407, + "change_mark": 1149, + "old_domain": 2818041, + "new_domain": 2818032, + "status": null + }, + { + "sequence": 1150, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 447, + "change_mark": 1150, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1151, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 405, + "change_mark": 1151, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1152, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 408, + "change_mark": 1152, + "old_domain": 10745, + "new_domain": 10736, + "status": null + }, + { + "sequence": 1153, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 448, + "change_mark": 1153, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1154, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 406, + "change_mark": 1154, + "old_domain": 8388592, + "new_domain": 8388544, + "status": null + }, + { + "sequence": 1155, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 449, + "change_mark": 1155, + "old_domain": 20956, + "new_domain": 20952, + "status": null + }, + { + "sequence": 1156, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 407, + "change_mark": 1156, + "old_domain": 2818032, + "new_domain": 2807744, + "status": null + }, + { + "sequence": 1157, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 450, + "change_mark": 1157, + "old_domain": 16712, + "new_domain": 328, + "status": null + }, + { + "sequence": 1158, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 408, + "change_mark": 1158, + "old_domain": 10736, + "new_domain": 448, + "status": null + }, + { + "sequence": 1159, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 369, + "change_mark": 1159, + "old_domain": 11, + "new_domain": 10, + "status": null + }, + { + "sequence": 1160, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 411, + "change_mark": 1160, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1161, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 370, + "change_mark": 1161, + "old_domain": 8368064, + "new_domain": 448, + "status": null + }, + { + "sequence": 1162, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 412, + "change_mark": 1162, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1163, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 371, + "change_mark": 1163, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1164, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 411, + "change_mark": 1164, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1165, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 372, + "change_mark": 1165, + "old_domain": 8388544, + "new_domain": 8357376, + "status": null + }, + { + "sequence": 1166, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 414, + "change_mark": 1166, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1167, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 412, + "change_mark": 1167, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1168, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 373, + "change_mark": 1168, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1169, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 415, + "change_mark": 1169, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1170, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 374, + "change_mark": 1170, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1171, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 416, + "change_mark": 1171, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1172, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 414, + "change_mark": 1172, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1173, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 375, + "change_mark": 1173, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1174, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 415, + "change_mark": 1174, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1175, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 376, + "change_mark": 1175, + "old_domain": 8388544, + "new_domain": 8357376, + "status": null + }, + { + "sequence": 1176, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 418, + "change_mark": 1176, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1177, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 416, + "change_mark": 1177, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1178, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 377, + "change_mark": 1178, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1179, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 419, + "change_mark": 1179, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1180, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 378, + "change_mark": 1180, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1181, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 418, + "change_mark": 1181, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1182, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 379, + "change_mark": 1182, + "old_domain": 8388544, + "new_domain": 8357376, + "status": null + }, + { + "sequence": 1183, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 421, + "change_mark": 1183, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1184, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 419, + "change_mark": 1184, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1185, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 380, + "change_mark": 1185, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1186, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 422, + "change_mark": 1186, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1187, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 381, + "change_mark": 1187, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1188, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 423, + "change_mark": 1188, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1189, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 421, + "change_mark": 1189, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1190, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 382, + "change_mark": 1190, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1191, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 422, + "change_mark": 1191, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1192, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 383, + "change_mark": 1192, + "old_domain": 8388544, + "new_domain": 8357376, + "status": null + }, + { + "sequence": 1193, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 425, + "change_mark": 1193, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1194, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 423, + "change_mark": 1194, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1195, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 384, + "change_mark": 1195, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1196, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 426, + "change_mark": 1196, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1197, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 385, + "change_mark": 1197, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1198, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 427, + "change_mark": 1198, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1199, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 425, + "change_mark": 1199, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1200, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 386, + "change_mark": 1200, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1201, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 428, + "change_mark": 1201, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1202, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 426, + "change_mark": 1202, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1203, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 387, + "change_mark": 1203, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1204, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 429, + "change_mark": 1204, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1205, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 427, + "change_mark": 1205, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1206, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 388, + "change_mark": 1206, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1207, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 430, + "change_mark": 1207, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1208, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 428, + "change_mark": 1208, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1209, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 389, + "change_mark": 1209, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1210, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 431, + "change_mark": 1210, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1211, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 429, + "change_mark": 1211, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1212, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 390, + "change_mark": 1212, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1213, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 430, + "change_mark": 1213, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1214, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 391, + "change_mark": 1214, + "old_domain": 8388544, + "new_domain": 8357376, + "status": null + }, + { + "sequence": 1215, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 433, + "change_mark": 1215, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1216, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 431, + "change_mark": 1216, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1217, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 392, + "change_mark": 1217, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1218, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 434, + "change_mark": 1218, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1219, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 393, + "change_mark": 1219, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1220, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 435, + "change_mark": 1220, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1221, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 433, + "change_mark": 1221, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1222, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 394, + "change_mark": 1222, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1223, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 436, + "change_mark": 1223, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1224, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 434, + "change_mark": 1224, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1225, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 395, + "change_mark": 1225, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1226, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 437, + "change_mark": 1226, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1227, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 435, + "change_mark": 1227, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1228, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 396, + "change_mark": 1228, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1229, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 438, + "change_mark": 1229, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1230, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 436, + "change_mark": 1230, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1231, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 397, + "change_mark": 1231, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1232, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 437, + "change_mark": 1232, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1233, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 398, + "change_mark": 1233, + "old_domain": 8388544, + "new_domain": 8357376, + "status": null + }, + { + "sequence": 1234, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 440, + "change_mark": 1234, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1235, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 438, + "change_mark": 1235, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1236, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 399, + "change_mark": 1236, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1237, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 441, + "change_mark": 1237, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1238, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 400, + "change_mark": 1238, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1239, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 442, + "change_mark": 1239, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1240, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 440, + "change_mark": 1240, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1241, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 401, + "change_mark": 1241, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1242, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 443, + "change_mark": 1242, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1243, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 441, + "change_mark": 1243, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1244, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 402, + "change_mark": 1244, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1245, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 444, + "change_mark": 1245, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1246, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 442, + "change_mark": 1246, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1247, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 403, + "change_mark": 1247, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1248, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 445, + "change_mark": 1248, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1249, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 443, + "change_mark": 1249, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1250, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 404, + "change_mark": 1250, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1251, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 446, + "change_mark": 1251, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1252, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 444, + "change_mark": 1252, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1253, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 405, + "change_mark": 1253, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1254, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 447, + "change_mark": 1254, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1255, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 445, + "change_mark": 1255, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1256, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 406, + "change_mark": 1256, + "old_domain": 8388544, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1257, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 448, + "change_mark": 1257, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1258, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 446, + "change_mark": 1258, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1259, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 407, + "change_mark": 1259, + "old_domain": 2807744, + "new_domain": 20928, + "status": null + }, + { + "sequence": 1260, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 449, + "change_mark": 1260, + "old_domain": 20952, + "new_domain": 464, + "status": null + }, + { + "sequence": 1261, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 447, + "change_mark": 1261, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1262, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 450, + "change_mark": 1262, + "old_domain": 328, + "new_domain": 320, + "status": null + }, + { + "sequence": 1263, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 448, + "change_mark": 1263, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1264, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 449, + "change_mark": 1264, + "old_domain": 464, + "new_domain": 448, + "status": null + }, + { + "sequence": 1265, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 42, + "change_mark": 1265, + "old_domain": 2795968, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1266, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 43, + "change_mark": 1266, + "old_domain": 2816448, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1267, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 83, + "change_mark": 1267, + "old_domain": 5745088, + "new_domain": 174464, + "status": null + }, + { + "sequence": 1268, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 44, + "change_mark": 1268, + "old_domain": 2816448, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1269, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 84, + "change_mark": 1269, + "old_domain": 8387008, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1270, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 42, + "change_mark": 1270, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1271, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 45, + "change_mark": 1271, + "old_domain": 2816448, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1272, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 85, + "change_mark": 1272, + "old_domain": 8387008, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1273, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 43, + "change_mark": 1273, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1274, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 46, + "change_mark": 1274, + "old_domain": 2806208, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1275, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 86, + "change_mark": 1275, + "old_domain": 8387008, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1276, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 44, + "change_mark": 1276, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1277, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 87, + "change_mark": 1277, + "old_domain": 8387008, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 1278, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 48, + "change_mark": 1278, + "old_domain": 2816448, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1279, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 88, + "change_mark": 1279, + "old_domain": 2817984, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1280, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 49, + "change_mark": 1280, + "old_domain": 2806208, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1281, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 89, + "change_mark": 1281, + "old_domain": 8387008, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1282, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 47, + "change_mark": 1282, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1283, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 90, + "change_mark": 1283, + "old_domain": 8387008, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 1284, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 51, + "change_mark": 1284, + "old_domain": 2816448, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1285, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 91, + "change_mark": 1285, + "old_domain": 2817984, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1286, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 52, + "change_mark": 1286, + "old_domain": 2816448, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1287, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 92, + "change_mark": 1287, + "old_domain": 8387008, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1288, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 50, + "change_mark": 1288, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1289, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 53, + "change_mark": 1289, + "old_domain": 2806208, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1290, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 93, + "change_mark": 1290, + "old_domain": 8387008, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1291, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 51, + "change_mark": 1291, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1292, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 94, + "change_mark": 1292, + "old_domain": 8387008, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 1293, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 55, + "change_mark": 1293, + "old_domain": 2816448, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1294, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 95, + "change_mark": 1294, + "old_domain": 2817984, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1295, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 56, + "change_mark": 1295, + "old_domain": 2816448, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1296, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 96, + "change_mark": 1296, + "old_domain": 8387008, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1297, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 54, + "change_mark": 1297, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1298, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 57, + "change_mark": 1298, + "old_domain": 2816448, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1299, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 97, + "change_mark": 1299, + "old_domain": 8387008, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1300, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 55, + "change_mark": 1300, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1301, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 58, + "change_mark": 1301, + "old_domain": 2816448, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1302, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 98, + "change_mark": 1302, + "old_domain": 8387008, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1303, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 56, + "change_mark": 1303, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1304, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 59, + "change_mark": 1304, + "old_domain": 2816448, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1305, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 99, + "change_mark": 1305, + "old_domain": 8387008, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1306, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 57, + "change_mark": 1306, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1307, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 60, + "change_mark": 1307, + "old_domain": 2816448, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1308, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 100, + "change_mark": 1308, + "old_domain": 8387008, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1309, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 58, + "change_mark": 1309, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1310, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 61, + "change_mark": 1310, + "old_domain": 2806208, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1311, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 101, + "change_mark": 1311, + "old_domain": 8387008, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1312, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 59, + "change_mark": 1312, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1313, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 102, + "change_mark": 1313, + "old_domain": 8387008, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 1314, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 63, + "change_mark": 1314, + "old_domain": 2816448, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1315, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 103, + "change_mark": 1315, + "old_domain": 2817984, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1316, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 64, + "change_mark": 1316, + "old_domain": 2816448, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1317, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 104, + "change_mark": 1317, + "old_domain": 8387008, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1318, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 62, + "change_mark": 1318, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1319, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 65, + "change_mark": 1319, + "old_domain": 2816448, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1320, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 105, + "change_mark": 1320, + "old_domain": 8387008, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1321, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 63, + "change_mark": 1321, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1322, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 66, + "change_mark": 1322, + "old_domain": 2816448, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1323, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 106, + "change_mark": 1323, + "old_domain": 8387008, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1324, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 64, + "change_mark": 1324, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1325, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 67, + "change_mark": 1325, + "old_domain": 2816448, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1326, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 107, + "change_mark": 1326, + "old_domain": 8387008, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1327, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 65, + "change_mark": 1327, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1328, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 68, + "change_mark": 1328, + "old_domain": 2806208, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1329, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 108, + "change_mark": 1329, + "old_domain": 8387008, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1330, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 66, + "change_mark": 1330, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1331, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 109, + "change_mark": 1331, + "old_domain": 8387008, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 1332, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 70, + "change_mark": 1332, + "old_domain": 2816448, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1333, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 110, + "change_mark": 1333, + "old_domain": 2817984, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1334, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 71, + "change_mark": 1334, + "old_domain": 2816448, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1335, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 111, + "change_mark": 1335, + "old_domain": 8387008, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1336, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 69, + "change_mark": 1336, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1337, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 72, + "change_mark": 1337, + "old_domain": 2816448, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1338, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 112, + "change_mark": 1338, + "old_domain": 8387008, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1339, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 70, + "change_mark": 1339, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1340, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 73, + "change_mark": 1340, + "old_domain": 2816448, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1341, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 113, + "change_mark": 1341, + "old_domain": 8387008, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1342, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 71, + "change_mark": 1342, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1343, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 74, + "change_mark": 1343, + "old_domain": 2816448, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1344, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 114, + "change_mark": 1344, + "old_domain": 8387008, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1345, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 72, + "change_mark": 1345, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1346, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 75, + "change_mark": 1346, + "old_domain": 2816448, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1347, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 115, + "change_mark": 1347, + "old_domain": 8387008, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1348, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 73, + "change_mark": 1348, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1349, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 76, + "change_mark": 1349, + "old_domain": 2806208, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1350, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 116, + "change_mark": 1350, + "old_domain": 8387008, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1351, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 74, + "change_mark": 1351, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1352, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 117, + "change_mark": 1352, + "old_domain": 8387008, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 1353, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 78, + "change_mark": 1353, + "old_domain": 2816448, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1354, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 118, + "change_mark": 1354, + "old_domain": 2817984, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1355, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 79, + "change_mark": 1355, + "old_domain": 2806208, + "new_domain": 384, + "status": null + }, + { + "sequence": 1356, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 119, + "change_mark": 1356, + "old_domain": 8387008, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1357, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 77, + "change_mark": 1357, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1358, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 120, + "change_mark": 1358, + "old_domain": 6158784, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1359, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 78, + "change_mark": 1359, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1360, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 121, + "change_mark": 1360, + "old_domain": 20928, + "new_domain": 384, + "status": null + }, + { + "sequence": 1361, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 83, + "change_mark": 1361, + "old_domain": 174464, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1362, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 84, + "change_mark": 1362, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1363, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 124, + "change_mark": 1363, + "old_domain": 891584, + "new_domain": 563328, + "status": null + }, + { + "sequence": 1364, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 85, + "change_mark": 1364, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1365, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 125, + "change_mark": 1365, + "old_domain": 8372160, + "new_domain": 2800000, + "status": null + }, + { + "sequence": 1366, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 83, + "change_mark": 1366, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1367, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 126, + "change_mark": 1367, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1368, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 84, + "change_mark": 1368, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1369, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 127, + "change_mark": 1369, + "old_domain": 8388544, + "new_domain": 8386944, + "status": null + }, + { + "sequence": 1370, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 88, + "change_mark": 1370, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1371, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 128, + "change_mark": 1371, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1372, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 86, + "change_mark": 1372, + "old_domain": 2816384, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1373, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 129, + "change_mark": 1373, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1374, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 87, + "change_mark": 1374, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1375, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 130, + "change_mark": 1375, + "old_domain": 8388544, + "new_domain": 8386944, + "status": null + }, + { + "sequence": 1376, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 91, + "change_mark": 1376, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1377, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 131, + "change_mark": 1377, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1378, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 89, + "change_mark": 1378, + "old_domain": 2816384, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1379, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 92, + "change_mark": 1379, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1380, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 132, + "change_mark": 1380, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1381, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 90, + "change_mark": 1381, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1382, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 133, + "change_mark": 1382, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1383, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 91, + "change_mark": 1383, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1384, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 134, + "change_mark": 1384, + "old_domain": 8388544, + "new_domain": 8386944, + "status": null + }, + { + "sequence": 1385, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 95, + "change_mark": 1385, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1386, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 135, + "change_mark": 1386, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1387, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 93, + "change_mark": 1387, + "old_domain": 2816384, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1388, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 96, + "change_mark": 1388, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1389, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 136, + "change_mark": 1389, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1390, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 94, + "change_mark": 1390, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1391, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 97, + "change_mark": 1391, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1392, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 137, + "change_mark": 1392, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1393, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 95, + "change_mark": 1393, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1394, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 98, + "change_mark": 1394, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1395, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 138, + "change_mark": 1395, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1396, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 96, + "change_mark": 1396, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1397, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 99, + "change_mark": 1397, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1398, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 139, + "change_mark": 1398, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1399, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 97, + "change_mark": 1399, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1400, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 100, + "change_mark": 1400, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1401, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 140, + "change_mark": 1401, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1402, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 98, + "change_mark": 1402, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1403, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 141, + "change_mark": 1403, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1404, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 99, + "change_mark": 1404, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1405, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 142, + "change_mark": 1405, + "old_domain": 8388544, + "new_domain": 8386944, + "status": null + }, + { + "sequence": 1406, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 103, + "change_mark": 1406, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1407, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 143, + "change_mark": 1407, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1408, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 101, + "change_mark": 1408, + "old_domain": 2816384, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1409, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 104, + "change_mark": 1409, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1410, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 144, + "change_mark": 1410, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1411, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 102, + "change_mark": 1411, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1412, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 105, + "change_mark": 1412, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1413, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 145, + "change_mark": 1413, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1414, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 103, + "change_mark": 1414, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1415, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 106, + "change_mark": 1415, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1416, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 146, + "change_mark": 1416, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1417, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 104, + "change_mark": 1417, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1418, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 107, + "change_mark": 1418, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1419, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 147, + "change_mark": 1419, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1420, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 105, + "change_mark": 1420, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1421, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 148, + "change_mark": 1421, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1422, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 106, + "change_mark": 1422, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1423, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 149, + "change_mark": 1423, + "old_domain": 8388544, + "new_domain": 8386944, + "status": null + }, + { + "sequence": 1424, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 110, + "change_mark": 1424, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1425, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 150, + "change_mark": 1425, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1426, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 108, + "change_mark": 1426, + "old_domain": 2816384, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1427, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 111, + "change_mark": 1427, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1428, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 151, + "change_mark": 1428, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1429, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 109, + "change_mark": 1429, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1430, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 112, + "change_mark": 1430, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1431, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 152, + "change_mark": 1431, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1432, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 110, + "change_mark": 1432, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1433, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 113, + "change_mark": 1433, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1434, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 153, + "change_mark": 1434, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1435, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 111, + "change_mark": 1435, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1436, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 114, + "change_mark": 1436, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1437, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 154, + "change_mark": 1437, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1438, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 112, + "change_mark": 1438, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1439, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 115, + "change_mark": 1439, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1440, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 155, + "change_mark": 1440, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1441, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 113, + "change_mark": 1441, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1442, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 156, + "change_mark": 1442, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1443, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 114, + "change_mark": 1443, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1444, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 157, + "change_mark": 1444, + "old_domain": 8388544, + "new_domain": 8386944, + "status": null + }, + { + "sequence": 1445, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 118, + "change_mark": 1445, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1446, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 158, + "change_mark": 1446, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1447, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 116, + "change_mark": 1447, + "old_domain": 2816384, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1448, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 119, + "change_mark": 1448, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1449, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 159, + "change_mark": 1449, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1450, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 117, + "change_mark": 1450, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1451, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 160, + "change_mark": 1451, + "old_domain": 8380352, + "new_domain": 2808192, + "status": null + }, + { + "sequence": 1452, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 118, + "change_mark": 1452, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1453, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 161, + "change_mark": 1453, + "old_domain": 1282688, + "new_domain": 168064, + "status": null + }, + { + "sequence": 1454, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 119, + "change_mark": 1454, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1455, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 120, + "change_mark": 1455, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1456, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 124, + "change_mark": 1456, + "old_domain": 563328, + "new_domain": 2176, + "status": null + }, + { + "sequence": 1457, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 125, + "change_mark": 1457, + "old_domain": 2800000, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1458, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 125, + "change_mark": 1458, + "old_domain": 10624, + "new_domain": 2176, + "status": null + }, + { + "sequence": 1459, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 165, + "change_mark": 1459, + "old_domain": 3911552, + "new_domain": 2795904, + "status": null + }, + { + "sequence": 1460, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 126, + "change_mark": 1460, + "old_domain": 2816384, + "new_domain": 563328, + "status": null + }, + { + "sequence": 1461, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 166, + "change_mark": 1461, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1462, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 124, + "change_mark": 1462, + "old_domain": 2176, + "new_domain": 128, + "status": null + }, + { + "sequence": 1463, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 127, + "change_mark": 1463, + "old_domain": 8386944, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 1464, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 167, + "change_mark": 1464, + "old_domain": 8388544, + "new_domain": 3930496, + "status": null + }, + { + "sequence": 1465, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 128, + "change_mark": 1465, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1466, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 168, + "change_mark": 1466, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1467, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 126, + "change_mark": 1467, + "old_domain": 563328, + "new_domain": 561280, + "status": null + }, + { + "sequence": 1468, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 169, + "change_mark": 1468, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1469, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 127, + "change_mark": 1469, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1470, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 130, + "change_mark": 1470, + "old_domain": 8386944, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 1471, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 170, + "change_mark": 1471, + "old_domain": 8388544, + "new_domain": 8388480, + "status": null + }, + { + "sequence": 1472, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 131, + "change_mark": 1472, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1473, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 171, + "change_mark": 1473, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1474, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 129, + "change_mark": 1474, + "old_domain": 2817920, + "new_domain": 2807680, + "status": null + }, + { + "sequence": 1475, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 132, + "change_mark": 1475, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1476, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 172, + "change_mark": 1476, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1477, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 130, + "change_mark": 1477, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1478, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 173, + "change_mark": 1478, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1479, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 131, + "change_mark": 1479, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1480, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 134, + "change_mark": 1480, + "old_domain": 8386944, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 1481, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 174, + "change_mark": 1481, + "old_domain": 8388544, + "new_domain": 8386944, + "status": null + }, + { + "sequence": 1482, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 135, + "change_mark": 1482, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1483, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 175, + "change_mark": 1483, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1484, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 133, + "change_mark": 1484, + "old_domain": 2816384, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1485, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 136, + "change_mark": 1485, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1486, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 176, + "change_mark": 1486, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1487, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 134, + "change_mark": 1487, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1488, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 137, + "change_mark": 1488, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1489, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 177, + "change_mark": 1489, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1490, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 135, + "change_mark": 1490, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1491, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 138, + "change_mark": 1491, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1492, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 178, + "change_mark": 1492, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1493, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 136, + "change_mark": 1493, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1494, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 139, + "change_mark": 1494, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1495, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 179, + "change_mark": 1495, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1496, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 137, + "change_mark": 1496, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1497, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 140, + "change_mark": 1497, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1498, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 180, + "change_mark": 1498, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1499, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 138, + "change_mark": 1499, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1500, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 181, + "change_mark": 1500, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1501, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 139, + "change_mark": 1501, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1502, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 142, + "change_mark": 1502, + "old_domain": 8386944, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 1503, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 182, + "change_mark": 1503, + "old_domain": 8388544, + "new_domain": 8386944, + "status": null + }, + { + "sequence": 1504, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 143, + "change_mark": 1504, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1505, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 183, + "change_mark": 1505, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1506, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 141, + "change_mark": 1506, + "old_domain": 2816384, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1507, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 144, + "change_mark": 1507, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1508, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 184, + "change_mark": 1508, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1509, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 142, + "change_mark": 1509, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1510, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 145, + "change_mark": 1510, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1511, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 185, + "change_mark": 1511, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1512, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 143, + "change_mark": 1512, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1513, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 146, + "change_mark": 1513, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1514, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 186, + "change_mark": 1514, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1515, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 144, + "change_mark": 1515, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1516, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 147, + "change_mark": 1516, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1517, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 187, + "change_mark": 1517, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1518, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 145, + "change_mark": 1518, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1519, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 188, + "change_mark": 1519, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1520, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 146, + "change_mark": 1520, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1521, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 149, + "change_mark": 1521, + "old_domain": 8386944, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 1522, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 189, + "change_mark": 1522, + "old_domain": 8388544, + "new_domain": 8386944, + "status": null + }, + { + "sequence": 1523, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 150, + "change_mark": 1523, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1524, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 190, + "change_mark": 1524, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1525, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 148, + "change_mark": 1525, + "old_domain": 2816384, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1526, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 151, + "change_mark": 1526, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1527, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 191, + "change_mark": 1527, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1528, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 149, + "change_mark": 1528, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1529, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 152, + "change_mark": 1529, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1530, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 192, + "change_mark": 1530, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1531, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 150, + "change_mark": 1531, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1532, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 153, + "change_mark": 1532, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1533, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 193, + "change_mark": 1533, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1534, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 151, + "change_mark": 1534, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1535, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 154, + "change_mark": 1535, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1536, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 194, + "change_mark": 1536, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1537, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 152, + "change_mark": 1537, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1538, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 155, + "change_mark": 1538, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1539, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 195, + "change_mark": 1539, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1540, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 153, + "change_mark": 1540, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1541, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 196, + "change_mark": 1541, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1542, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 154, + "change_mark": 1542, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1543, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 157, + "change_mark": 1543, + "old_domain": 8386944, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 1544, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 197, + "change_mark": 1544, + "old_domain": 8388544, + "new_domain": 8386944, + "status": null + }, + { + "sequence": 1545, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 158, + "change_mark": 1545, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1546, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 198, + "change_mark": 1546, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1547, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 156, + "change_mark": 1547, + "old_domain": 2816384, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1548, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 159, + "change_mark": 1548, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1549, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 199, + "change_mark": 1549, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1550, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 157, + "change_mark": 1550, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1551, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 160, + "change_mark": 1551, + "old_domain": 2808192, + "new_domain": 2432, + "status": null + }, + { + "sequence": 1552, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 200, + "change_mark": 1552, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1553, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 158, + "change_mark": 1553, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1554, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 161, + "change_mark": 1554, + "old_domain": 168064, + "new_domain": 128, + "status": null + }, + { + "sequence": 1555, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 201, + "change_mark": 1555, + "old_domain": 8378304, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1556, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 159, + "change_mark": 1556, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1557, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 202, + "change_mark": 1557, + "old_domain": 329600, + "new_domain": 384, + "status": null + }, + { + "sequence": 1558, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 160, + "change_mark": 1558, + "old_domain": 2432, + "new_domain": 128, + "status": null + }, + { + "sequence": 1559, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 41, + "change_mark": 1559, + "old_domain": 11, + "new_domain": 10, + "status": null + }, + { + "sequence": 1560, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 165, + "change_mark": 1560, + "old_domain": 2795904, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1561, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 206, + "change_mark": 1561, + "old_domain": 8368064, + "new_domain": 2795904, + "status": null + }, + { + "sequence": 1562, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 167, + "change_mark": 1562, + "old_domain": 3930496, + "new_domain": 1124736, + "status": null + }, + { + "sequence": 1563, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 207, + "change_mark": 1563, + "old_domain": 8388544, + "new_domain": 8386944, + "status": null + }, + { + "sequence": 1564, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 168, + "change_mark": 1564, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1565, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 208, + "change_mark": 1565, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1566, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 166, + "change_mark": 1566, + "old_domain": 2816384, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1567, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 209, + "change_mark": 1567, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1568, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 167, + "change_mark": 1568, + "old_domain": 1124736, + "new_domain": 1114496, + "status": null + }, + { + "sequence": 1569, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 170, + "change_mark": 1569, + "old_domain": 8388480, + "new_domain": 5582720, + "status": null + }, + { + "sequence": 1570, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 210, + "change_mark": 1570, + "old_domain": 8388544, + "new_domain": 8388480, + "status": null + }, + { + "sequence": 1571, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 171, + "change_mark": 1571, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1572, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 211, + "change_mark": 1572, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1573, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 169, + "change_mark": 1573, + "old_domain": 2817920, + "new_domain": 2807680, + "status": null + }, + { + "sequence": 1574, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 172, + "change_mark": 1574, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1575, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 212, + "change_mark": 1575, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1576, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 170, + "change_mark": 1576, + "old_domain": 5582720, + "new_domain": 5572480, + "status": null + }, + { + "sequence": 1577, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 213, + "change_mark": 1577, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1578, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 171, + "change_mark": 1578, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1579, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 174, + "change_mark": 1579, + "old_domain": 8386944, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 1580, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 214, + "change_mark": 1580, + "old_domain": 8388544, + "new_domain": 8388480, + "status": null + }, + { + "sequence": 1581, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 175, + "change_mark": 1581, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1582, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 215, + "change_mark": 1582, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1583, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 173, + "change_mark": 1583, + "old_domain": 2817920, + "new_domain": 2807680, + "status": null + }, + { + "sequence": 1584, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 176, + "change_mark": 1584, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1585, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 216, + "change_mark": 1585, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1586, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 174, + "change_mark": 1586, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1587, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 177, + "change_mark": 1587, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1588, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 217, + "change_mark": 1588, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1589, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 175, + "change_mark": 1589, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1590, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 178, + "change_mark": 1590, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1591, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 218, + "change_mark": 1591, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1592, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 176, + "change_mark": 1592, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1593, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 179, + "change_mark": 1593, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1594, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 219, + "change_mark": 1594, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1595, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 177, + "change_mark": 1595, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1596, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 180, + "change_mark": 1596, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1597, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 220, + "change_mark": 1597, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1598, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 178, + "change_mark": 1598, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1599, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 221, + "change_mark": 1599, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1600, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 179, + "change_mark": 1600, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1601, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 182, + "change_mark": 1601, + "old_domain": 8386944, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 1602, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 222, + "change_mark": 1602, + "old_domain": 8388544, + "new_domain": 8386944, + "status": null + }, + { + "sequence": 1603, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 183, + "change_mark": 1603, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1604, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 223, + "change_mark": 1604, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1605, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 181, + "change_mark": 1605, + "old_domain": 2816384, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1606, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 184, + "change_mark": 1606, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1607, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 224, + "change_mark": 1607, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1608, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 182, + "change_mark": 1608, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1609, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 185, + "change_mark": 1609, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1610, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 225, + "change_mark": 1610, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1611, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 183, + "change_mark": 1611, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1612, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 186, + "change_mark": 1612, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1613, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 226, + "change_mark": 1613, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1614, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 184, + "change_mark": 1614, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1615, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 187, + "change_mark": 1615, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1616, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 227, + "change_mark": 1616, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1617, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 185, + "change_mark": 1617, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1618, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 228, + "change_mark": 1618, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1619, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 186, + "change_mark": 1619, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1620, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 189, + "change_mark": 1620, + "old_domain": 8386944, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 1621, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 229, + "change_mark": 1621, + "old_domain": 8388544, + "new_domain": 8386944, + "status": null + }, + { + "sequence": 1622, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 190, + "change_mark": 1622, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1623, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 230, + "change_mark": 1623, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1624, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 188, + "change_mark": 1624, + "old_domain": 2816384, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1625, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 191, + "change_mark": 1625, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1626, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 231, + "change_mark": 1626, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1627, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 189, + "change_mark": 1627, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1628, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 192, + "change_mark": 1628, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1629, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 232, + "change_mark": 1629, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1630, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 190, + "change_mark": 1630, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1631, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 193, + "change_mark": 1631, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1632, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 233, + "change_mark": 1632, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1633, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 191, + "change_mark": 1633, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1634, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 194, + "change_mark": 1634, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1635, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 234, + "change_mark": 1635, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1636, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 192, + "change_mark": 1636, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1637, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 195, + "change_mark": 1637, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1638, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 235, + "change_mark": 1638, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1639, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 193, + "change_mark": 1639, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1640, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 236, + "change_mark": 1640, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1641, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 194, + "change_mark": 1641, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1642, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 197, + "change_mark": 1642, + "old_domain": 8386944, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 1643, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 237, + "change_mark": 1643, + "old_domain": 8388544, + "new_domain": 8386944, + "status": null + }, + { + "sequence": 1644, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 198, + "change_mark": 1644, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1645, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 238, + "change_mark": 1645, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1646, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 196, + "change_mark": 1646, + "old_domain": 2816384, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1647, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 199, + "change_mark": 1647, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1648, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 239, + "change_mark": 1648, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1649, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 197, + "change_mark": 1649, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1650, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 200, + "change_mark": 1650, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1651, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 240, + "change_mark": 1651, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1652, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 198, + "change_mark": 1652, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1653, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 201, + "change_mark": 1653, + "old_domain": 2806144, + "new_domain": 384, + "status": null + }, + { + "sequence": 1654, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 159, + "change_mark": 1654, + "old_domain": 1920, + "new_domain": 640, + "status": null + }, + { + "sequence": 1655, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 241, + "change_mark": 1655, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1656, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 199, + "change_mark": 1656, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1657, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 242, + "change_mark": 1657, + "old_domain": 8388544, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1658, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 200, + "change_mark": 1658, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1659, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 158, + "change_mark": 1659, + "old_domain": 1920, + "new_domain": 640, + "status": null + }, + { + "sequence": 1660, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 243, + "change_mark": 1660, + "old_domain": 2807744, + "new_domain": 384, + "status": null + }, + { + "sequence": 1661, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 207, + "change_mark": 1661, + "old_domain": 8386944, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 1662, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 247, + "change_mark": 1662, + "old_domain": 5746624, + "new_domain": 5745024, + "status": null + }, + { + "sequence": 1663, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 208, + "change_mark": 1663, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1664, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 248, + "change_mark": 1664, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1665, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 206, + "change_mark": 1665, + "old_domain": 2795904, + "new_domain": 2785664, + "status": null + }, + { + "sequence": 1666, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 249, + "change_mark": 1666, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1667, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 207, + "change_mark": 1667, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1668, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 210, + "change_mark": 1668, + "old_domain": 8388480, + "new_domain": 5582720, + "status": null + }, + { + "sequence": 1669, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 250, + "change_mark": 1669, + "old_domain": 8388544, + "new_domain": 8388480, + "status": null + }, + { + "sequence": 1670, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 211, + "change_mark": 1670, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1671, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 251, + "change_mark": 1671, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1672, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 209, + "change_mark": 1672, + "old_domain": 2817920, + "new_domain": 2807680, + "status": null + }, + { + "sequence": 1673, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 212, + "change_mark": 1673, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1674, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 252, + "change_mark": 1674, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1675, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 210, + "change_mark": 1675, + "old_domain": 5582720, + "new_domain": 5572480, + "status": null + }, + { + "sequence": 1676, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 253, + "change_mark": 1676, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1677, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 211, + "change_mark": 1677, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1678, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 214, + "change_mark": 1678, + "old_domain": 8388480, + "new_domain": 5582720, + "status": null + }, + { + "sequence": 1679, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 254, + "change_mark": 1679, + "old_domain": 8388544, + "new_domain": 8388480, + "status": null + }, + { + "sequence": 1680, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 215, + "change_mark": 1680, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1681, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 255, + "change_mark": 1681, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1682, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 213, + "change_mark": 1682, + "old_domain": 2817920, + "new_domain": 2807680, + "status": null + }, + { + "sequence": 1683, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 216, + "change_mark": 1683, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1684, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 256, + "change_mark": 1684, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1685, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 214, + "change_mark": 1685, + "old_domain": 5582720, + "new_domain": 5572480, + "status": null + }, + { + "sequence": 1686, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 217, + "change_mark": 1686, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1687, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 257, + "change_mark": 1687, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1688, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 215, + "change_mark": 1688, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1689, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 218, + "change_mark": 1689, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1690, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 258, + "change_mark": 1690, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1691, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 216, + "change_mark": 1691, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1692, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 219, + "change_mark": 1692, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1693, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 259, + "change_mark": 1693, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1694, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 217, + "change_mark": 1694, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1695, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 220, + "change_mark": 1695, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1696, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 260, + "change_mark": 1696, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1697, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 218, + "change_mark": 1697, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1698, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 261, + "change_mark": 1698, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1699, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 219, + "change_mark": 1699, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1700, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 222, + "change_mark": 1700, + "old_domain": 8386944, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 1701, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 262, + "change_mark": 1701, + "old_domain": 8388544, + "new_domain": 8386944, + "status": null + }, + { + "sequence": 1702, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 223, + "change_mark": 1702, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1703, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 263, + "change_mark": 1703, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1704, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 221, + "change_mark": 1704, + "old_domain": 2816384, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1705, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 224, + "change_mark": 1705, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1706, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 264, + "change_mark": 1706, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1707, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 222, + "change_mark": 1707, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1708, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 225, + "change_mark": 1708, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1709, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 265, + "change_mark": 1709, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1710, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 223, + "change_mark": 1710, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1711, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 226, + "change_mark": 1711, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1712, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 266, + "change_mark": 1712, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1713, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 224, + "change_mark": 1713, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1714, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 227, + "change_mark": 1714, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1715, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 267, + "change_mark": 1715, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1716, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 225, + "change_mark": 1716, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1717, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 268, + "change_mark": 1717, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1718, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 226, + "change_mark": 1718, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1719, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 229, + "change_mark": 1719, + "old_domain": 8386944, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 1720, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 269, + "change_mark": 1720, + "old_domain": 8388544, + "new_domain": 8386944, + "status": null + }, + { + "sequence": 1721, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 230, + "change_mark": 1721, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1722, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 270, + "change_mark": 1722, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1723, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 228, + "change_mark": 1723, + "old_domain": 2816384, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1724, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 231, + "change_mark": 1724, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1725, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 271, + "change_mark": 1725, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1726, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 229, + "change_mark": 1726, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1727, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 232, + "change_mark": 1727, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1728, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 272, + "change_mark": 1728, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1729, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 230, + "change_mark": 1729, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1730, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 233, + "change_mark": 1730, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1731, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 273, + "change_mark": 1731, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1732, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 231, + "change_mark": 1732, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1733, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 234, + "change_mark": 1733, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1734, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 274, + "change_mark": 1734, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1735, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 232, + "change_mark": 1735, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1736, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 235, + "change_mark": 1736, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1737, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 275, + "change_mark": 1737, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1738, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 233, + "change_mark": 1738, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1739, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 276, + "change_mark": 1739, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1740, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 234, + "change_mark": 1740, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1741, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 237, + "change_mark": 1741, + "old_domain": 8386944, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 1742, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 277, + "change_mark": 1742, + "old_domain": 8388544, + "new_domain": 8386944, + "status": null + }, + { + "sequence": 1743, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 238, + "change_mark": 1743, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1744, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 278, + "change_mark": 1744, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1745, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 236, + "change_mark": 1745, + "old_domain": 2816384, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1746, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 239, + "change_mark": 1746, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1747, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 279, + "change_mark": 1747, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1748, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 237, + "change_mark": 1748, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1749, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 240, + "change_mark": 1749, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1750, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 280, + "change_mark": 1750, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1751, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 238, + "change_mark": 1751, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1752, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 241, + "change_mark": 1752, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1753, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 281, + "change_mark": 1753, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1754, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 239, + "change_mark": 1754, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1755, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 282, + "change_mark": 1755, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1756, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 240, + "change_mark": 1756, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1757, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 283, + "change_mark": 1757, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1758, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 241, + "change_mark": 1758, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1759, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 284, + "change_mark": 1759, + "old_domain": 6160320, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1760, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 242, + "change_mark": 1760, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1761, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 285, + "change_mark": 1761, + "old_domain": 20928, + "new_domain": 384, + "status": null + }, + { + "sequence": 1762, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 247, + "change_mark": 1762, + "old_domain": 5745024, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 1763, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 248, + "change_mark": 1763, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1764, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 288, + "change_mark": 1764, + "old_domain": 891584, + "new_domain": 563840, + "status": null + }, + { + "sequence": 1765, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 289, + "change_mark": 1765, + "old_domain": 8372160, + "new_domain": 2801536, + "status": null + }, + { + "sequence": 1766, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 247, + "change_mark": 1766, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1767, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 250, + "change_mark": 1767, + "old_domain": 8388480, + "new_domain": 5582720, + "status": null + }, + { + "sequence": 1768, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 290, + "change_mark": 1768, + "old_domain": 8388544, + "new_domain": 8388480, + "status": null + }, + { + "sequence": 1769, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 251, + "change_mark": 1769, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1770, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 291, + "change_mark": 1770, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1771, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 249, + "change_mark": 1771, + "old_domain": 2817920, + "new_domain": 2807680, + "status": null + }, + { + "sequence": 1772, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 252, + "change_mark": 1772, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1773, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 292, + "change_mark": 1773, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1774, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 250, + "change_mark": 1774, + "old_domain": 5582720, + "new_domain": 5572480, + "status": null + }, + { + "sequence": 1775, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 293, + "change_mark": 1775, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1776, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 251, + "change_mark": 1776, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1777, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 254, + "change_mark": 1777, + "old_domain": 8388480, + "new_domain": 5582720, + "status": null + }, + { + "sequence": 1778, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 294, + "change_mark": 1778, + "old_domain": 8388544, + "new_domain": 8388480, + "status": null + }, + { + "sequence": 1779, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 255, + "change_mark": 1779, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1780, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 295, + "change_mark": 1780, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1781, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 253, + "change_mark": 1781, + "old_domain": 2817920, + "new_domain": 2807680, + "status": null + }, + { + "sequence": 1782, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 256, + "change_mark": 1782, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1783, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 296, + "change_mark": 1783, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1784, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 254, + "change_mark": 1784, + "old_domain": 5582720, + "new_domain": 5572480, + "status": null + }, + { + "sequence": 1785, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 257, + "change_mark": 1785, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1786, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 297, + "change_mark": 1786, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1787, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 255, + "change_mark": 1787, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1788, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 258, + "change_mark": 1788, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1789, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 298, + "change_mark": 1789, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1790, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 256, + "change_mark": 1790, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1791, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 259, + "change_mark": 1791, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1792, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 299, + "change_mark": 1792, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1793, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 257, + "change_mark": 1793, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1794, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 260, + "change_mark": 1794, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1795, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 300, + "change_mark": 1795, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1796, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 258, + "change_mark": 1796, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1797, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 301, + "change_mark": 1797, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1798, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 259, + "change_mark": 1798, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1799, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 262, + "change_mark": 1799, + "old_domain": 8386944, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 1800, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 302, + "change_mark": 1800, + "old_domain": 8388544, + "new_domain": 8386944, + "status": null + }, + { + "sequence": 1801, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 263, + "change_mark": 1801, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1802, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 303, + "change_mark": 1802, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1803, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 261, + "change_mark": 1803, + "old_domain": 2816384, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1804, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 264, + "change_mark": 1804, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1805, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 304, + "change_mark": 1805, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1806, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 262, + "change_mark": 1806, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1807, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 265, + "change_mark": 1807, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1808, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 305, + "change_mark": 1808, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1809, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 263, + "change_mark": 1809, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1810, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 266, + "change_mark": 1810, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1811, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 306, + "change_mark": 1811, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1812, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 264, + "change_mark": 1812, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1813, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 267, + "change_mark": 1813, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1814, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 307, + "change_mark": 1814, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1815, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 265, + "change_mark": 1815, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1816, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 308, + "change_mark": 1816, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1817, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 266, + "change_mark": 1817, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1818, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 269, + "change_mark": 1818, + "old_domain": 8386944, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 1819, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 309, + "change_mark": 1819, + "old_domain": 8388544, + "new_domain": 8386944, + "status": null + }, + { + "sequence": 1820, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 270, + "change_mark": 1820, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1821, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 310, + "change_mark": 1821, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1822, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 268, + "change_mark": 1822, + "old_domain": 2816384, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1823, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 271, + "change_mark": 1823, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1824, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 311, + "change_mark": 1824, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1825, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 269, + "change_mark": 1825, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1826, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 272, + "change_mark": 1826, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1827, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 312, + "change_mark": 1827, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1828, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 270, + "change_mark": 1828, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1829, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 273, + "change_mark": 1829, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1830, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 313, + "change_mark": 1830, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1831, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 271, + "change_mark": 1831, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1832, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 274, + "change_mark": 1832, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1833, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 314, + "change_mark": 1833, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1834, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 272, + "change_mark": 1834, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1835, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 275, + "change_mark": 1835, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1836, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 315, + "change_mark": 1836, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1837, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 273, + "change_mark": 1837, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1838, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 316, + "change_mark": 1838, + "old_domain": 8388544, + "new_domain": 2816384, + "status": null + }, + { + "sequence": 1839, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 274, + "change_mark": 1839, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1840, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 277, + "change_mark": 1840, + "old_domain": 8386944, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 1841, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 317, + "change_mark": 1841, + "old_domain": 8388544, + "new_domain": 8386944, + "status": null + }, + { + "sequence": 1842, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 278, + "change_mark": 1842, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1843, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 318, + "change_mark": 1843, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1844, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 276, + "change_mark": 1844, + "old_domain": 2816384, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1845, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 279, + "change_mark": 1845, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1846, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 319, + "change_mark": 1846, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1847, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 277, + "change_mark": 1847, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1848, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 280, + "change_mark": 1848, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1849, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 320, + "change_mark": 1849, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1850, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 278, + "change_mark": 1850, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1851, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 281, + "change_mark": 1851, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1852, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 321, + "change_mark": 1852, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1853, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 279, + "change_mark": 1853, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1854, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 282, + "change_mark": 1854, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1855, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 322, + "change_mark": 1855, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1856, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 280, + "change_mark": 1856, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1857, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 283, + "change_mark": 1857, + "old_domain": 2816384, + "new_domain": 10624, + "status": null + }, + { + "sequence": 1858, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 323, + "change_mark": 1858, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1859, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 281, + "change_mark": 1859, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1860, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 324, + "change_mark": 1860, + "old_domain": 8380352, + "new_domain": 2808192, + "status": null + }, + { + "sequence": 1861, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 282, + "change_mark": 1861, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1862, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 325, + "change_mark": 1862, + "old_domain": 1282688, + "new_domain": 168064, + "status": null + }, + { + "sequence": 1863, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 283, + "change_mark": 1863, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1864, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 284, + "change_mark": 1864, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 1865, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 288, + "change_mark": 1865, + "old_domain": 563840, + "new_domain": 2688, + "status": null + }, + { + "sequence": 1866, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 289, + "change_mark": 1866, + "old_domain": 2801536, + "new_domain": 563840, + "status": null + }, + { + "sequence": 1867, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 329, + "change_mark": 1867, + "old_domain": 3911552, + "new_domain": 2797440, + "status": null + }, + { + "sequence": 1868, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 290, + "change_mark": 1868, + "old_domain": 8388480, + "new_domain": 5582720, + "status": null + }, + { + "sequence": 1869, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 330, + "change_mark": 1869, + "old_domain": 8388544, + "new_domain": 3932032, + "status": null + }, + { + "sequence": 1870, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 291, + "change_mark": 1870, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1871, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 331, + "change_mark": 1871, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1872, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 289, + "change_mark": 1872, + "old_domain": 563840, + "new_domain": 561792, + "status": null + }, + { + "sequence": 1873, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 292, + "change_mark": 1873, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1874, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 332, + "change_mark": 1874, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1875, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 290, + "change_mark": 1875, + "old_domain": 5582720, + "new_domain": 5572480, + "status": null + }, + { + "sequence": 1876, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 333, + "change_mark": 1876, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1877, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 291, + "change_mark": 1877, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1878, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 294, + "change_mark": 1878, + "old_domain": 8388480, + "new_domain": 5582720, + "status": null + }, + { + "sequence": 1879, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 334, + "change_mark": 1879, + "old_domain": 8388544, + "new_domain": 8388480, + "status": null + }, + { + "sequence": 1880, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 295, + "change_mark": 1880, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1881, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 335, + "change_mark": 1881, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1882, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 293, + "change_mark": 1882, + "old_domain": 2817920, + "new_domain": 2807680, + "status": null + }, + { + "sequence": 1883, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 296, + "change_mark": 1883, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1884, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 336, + "change_mark": 1884, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1885, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 294, + "change_mark": 1885, + "old_domain": 5582720, + "new_domain": 5572480, + "status": null + }, + { + "sequence": 1886, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 297, + "change_mark": 1886, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1887, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 337, + "change_mark": 1887, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1888, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 295, + "change_mark": 1888, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1889, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 298, + "change_mark": 1889, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1890, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 338, + "change_mark": 1890, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1891, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 296, + "change_mark": 1891, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1892, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 299, + "change_mark": 1892, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1893, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 339, + "change_mark": 1893, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1894, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 297, + "change_mark": 1894, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1895, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 300, + "change_mark": 1895, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1896, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 340, + "change_mark": 1896, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1897, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 298, + "change_mark": 1897, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1898, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 341, + "change_mark": 1898, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1899, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 299, + "change_mark": 1899, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1900, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 302, + "change_mark": 1900, + "old_domain": 8386944, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 1901, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 342, + "change_mark": 1901, + "old_domain": 8388544, + "new_domain": 8386944, + "status": null + }, + { + "sequence": 1902, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 303, + "change_mark": 1902, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1903, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 343, + "change_mark": 1903, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1904, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 301, + "change_mark": 1904, + "old_domain": 2816384, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1905, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 304, + "change_mark": 1905, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1906, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 344, + "change_mark": 1906, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1907, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 302, + "change_mark": 1907, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1908, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 305, + "change_mark": 1908, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1909, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 345, + "change_mark": 1909, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1910, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 303, + "change_mark": 1910, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1911, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 306, + "change_mark": 1911, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1912, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 346, + "change_mark": 1912, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1913, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 304, + "change_mark": 1913, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1914, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 307, + "change_mark": 1914, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1915, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 347, + "change_mark": 1915, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1916, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 305, + "change_mark": 1916, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1917, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 348, + "change_mark": 1917, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1918, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 306, + "change_mark": 1918, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1919, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 309, + "change_mark": 1919, + "old_domain": 8386944, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 1920, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 349, + "change_mark": 1920, + "old_domain": 8388544, + "new_domain": 8388480, + "status": null + }, + { + "sequence": 1921, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 310, + "change_mark": 1921, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1922, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 350, + "change_mark": 1922, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1923, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 308, + "change_mark": 1923, + "old_domain": 2817920, + "new_domain": 2807680, + "status": null + }, + { + "sequence": 1924, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 311, + "change_mark": 1924, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1925, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 351, + "change_mark": 1925, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1926, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 309, + "change_mark": 1926, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1927, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 312, + "change_mark": 1927, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1928, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 352, + "change_mark": 1928, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1929, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 310, + "change_mark": 1929, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1930, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 313, + "change_mark": 1930, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1931, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 353, + "change_mark": 1931, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1932, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 311, + "change_mark": 1932, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1933, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 314, + "change_mark": 1933, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1934, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 354, + "change_mark": 1934, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1935, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 312, + "change_mark": 1935, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1936, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 315, + "change_mark": 1936, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1937, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 355, + "change_mark": 1937, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1938, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 313, + "change_mark": 1938, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1939, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 356, + "change_mark": 1939, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1940, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 314, + "change_mark": 1940, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1941, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 317, + "change_mark": 1941, + "old_domain": 8386944, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 1942, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 357, + "change_mark": 1942, + "old_domain": 8388544, + "new_domain": 8386944, + "status": null + }, + { + "sequence": 1943, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 318, + "change_mark": 1943, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1944, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 358, + "change_mark": 1944, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1945, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 316, + "change_mark": 1945, + "old_domain": 2816384, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1946, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 319, + "change_mark": 1946, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1947, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 359, + "change_mark": 1947, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1948, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 317, + "change_mark": 1948, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 1949, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 320, + "change_mark": 1949, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1950, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 360, + "change_mark": 1950, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1951, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 318, + "change_mark": 1951, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1952, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 321, + "change_mark": 1952, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1953, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 361, + "change_mark": 1953, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1954, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 319, + "change_mark": 1954, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1955, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 322, + "change_mark": 1955, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1956, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 362, + "change_mark": 1956, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1957, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 320, + "change_mark": 1957, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1958, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 323, + "change_mark": 1958, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1959, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 363, + "change_mark": 1959, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1960, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 321, + "change_mark": 1960, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1961, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 324, + "change_mark": 1961, + "old_domain": 2808192, + "new_domain": 2432, + "status": null + }, + { + "sequence": 1962, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 364, + "change_mark": 1962, + "old_domain": 8388544, + "new_domain": 2817920, + "status": null + }, + { + "sequence": 1963, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 322, + "change_mark": 1963, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1964, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 325, + "change_mark": 1964, + "old_domain": 168064, + "new_domain": 128, + "status": null + }, + { + "sequence": 1965, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 365, + "change_mark": 1965, + "old_domain": 8378304, + "new_domain": 2806144, + "status": null + }, + { + "sequence": 1966, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 323, + "change_mark": 1966, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1967, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 366, + "change_mark": 1967, + "old_domain": 329600, + "new_domain": 384, + "status": null + }, + { + "sequence": 1968, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 324, + "change_mark": 1968, + "old_domain": 2432, + "new_domain": 128, + "status": null + }, + { + "sequence": 1969, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 205, + "change_mark": 1969, + "old_domain": 11, + "new_domain": 10, + "status": null + }, + { + "sequence": 1970, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 330, + "change_mark": 1970, + "old_domain": 3932032, + "new_domain": 1126272, + "status": null + }, + { + "sequence": 1971, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 370, + "change_mark": 1971, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 1972, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 331, + "change_mark": 1972, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1973, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 371, + "change_mark": 1973, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 1974, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 329, + "change_mark": 1974, + "old_domain": 2797440, + "new_domain": 2787200, + "status": null + }, + { + "sequence": 1975, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 332, + "change_mark": 1975, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1976, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 372, + "change_mark": 1976, + "old_domain": 8357376, + "new_domain": 2786816, + "status": null + }, + { + "sequence": 1977, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 330, + "change_mark": 1977, + "old_domain": 1126272, + "new_domain": 1116032, + "status": null + }, + { + "sequence": 1978, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 373, + "change_mark": 1978, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 1979, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 331, + "change_mark": 1979, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1980, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 334, + "change_mark": 1980, + "old_domain": 8388480, + "new_domain": 5582720, + "status": null + }, + { + "sequence": 1981, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 374, + "change_mark": 1981, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 1982, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 335, + "change_mark": 1982, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1983, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 375, + "change_mark": 1983, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 1984, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 333, + "change_mark": 1984, + "old_domain": 2817920, + "new_domain": 2807680, + "status": null + }, + { + "sequence": 1985, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 336, + "change_mark": 1985, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1986, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 376, + "change_mark": 1986, + "old_domain": 8357376, + "new_domain": 2786816, + "status": null + }, + { + "sequence": 1987, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 334, + "change_mark": 1987, + "old_domain": 5582720, + "new_domain": 5572480, + "status": null + }, + { + "sequence": 1988, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 337, + "change_mark": 1988, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1989, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 377, + "change_mark": 1989, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 1990, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 335, + "change_mark": 1990, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1991, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 338, + "change_mark": 1991, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1992, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 378, + "change_mark": 1992, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 1993, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 336, + "change_mark": 1993, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1994, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 339, + "change_mark": 1994, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1995, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 379, + "change_mark": 1995, + "old_domain": 8357376, + "new_domain": 2786816, + "status": null + }, + { + "sequence": 1996, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 337, + "change_mark": 1996, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 1997, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 340, + "change_mark": 1997, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 1998, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 380, + "change_mark": 1998, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 1999, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 338, + "change_mark": 1999, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 2000, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 381, + "change_mark": 2000, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2001, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 339, + "change_mark": 2001, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 2002, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 342, + "change_mark": 2002, + "old_domain": 8386944, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 2003, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 382, + "change_mark": 2003, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2004, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 343, + "change_mark": 2004, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 2005, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 383, + "change_mark": 2005, + "old_domain": 8357376, + "new_domain": 2786816, + "status": null + }, + { + "sequence": 2006, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 341, + "change_mark": 2006, + "old_domain": 2817920, + "new_domain": 2807680, + "status": null + }, + { + "sequence": 2007, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 344, + "change_mark": 2007, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 2008, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 384, + "change_mark": 2008, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2009, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 342, + "change_mark": 2009, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 2010, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 345, + "change_mark": 2010, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 2011, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 385, + "change_mark": 2011, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2012, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 343, + "change_mark": 2012, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 2013, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 346, + "change_mark": 2013, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 2014, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 386, + "change_mark": 2014, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2015, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 344, + "change_mark": 2015, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 2016, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 347, + "change_mark": 2016, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 2017, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 387, + "change_mark": 2017, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2018, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 345, + "change_mark": 2018, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 2019, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 388, + "change_mark": 2019, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2020, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 346, + "change_mark": 2020, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 2021, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 349, + "change_mark": 2021, + "old_domain": 8388480, + "new_domain": 5582720, + "status": null + }, + { + "sequence": 2022, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 389, + "change_mark": 2022, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2023, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 350, + "change_mark": 2023, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 2024, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 390, + "change_mark": 2024, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2025, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 348, + "change_mark": 2025, + "old_domain": 2817920, + "new_domain": 2807680, + "status": null + }, + { + "sequence": 2026, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 351, + "change_mark": 2026, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 2027, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 391, + "change_mark": 2027, + "old_domain": 8357376, + "new_domain": 2786816, + "status": null + }, + { + "sequence": 2028, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 349, + "change_mark": 2028, + "old_domain": 5582720, + "new_domain": 5572480, + "status": null + }, + { + "sequence": 2029, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 352, + "change_mark": 2029, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 2030, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 392, + "change_mark": 2030, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2031, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 350, + "change_mark": 2031, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 2032, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 353, + "change_mark": 2032, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 2033, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 393, + "change_mark": 2033, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2034, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 351, + "change_mark": 2034, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 2035, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 354, + "change_mark": 2035, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 2036, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 394, + "change_mark": 2036, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2037, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 352, + "change_mark": 2037, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 2038, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 355, + "change_mark": 2038, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 2039, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 395, + "change_mark": 2039, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2040, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 353, + "change_mark": 2040, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 2041, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 396, + "change_mark": 2041, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2042, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 354, + "change_mark": 2042, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 2043, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 357, + "change_mark": 2043, + "old_domain": 8386944, + "new_domain": 5581184, + "status": null + }, + { + "sequence": 2044, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 397, + "change_mark": 2044, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2045, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 358, + "change_mark": 2045, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 2046, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 398, + "change_mark": 2046, + "old_domain": 8357376, + "new_domain": 2786816, + "status": null + }, + { + "sequence": 2047, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 356, + "change_mark": 2047, + "old_domain": 2817920, + "new_domain": 2807680, + "status": null + }, + { + "sequence": 2048, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 359, + "change_mark": 2048, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 2049, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 399, + "change_mark": 2049, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2050, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 357, + "change_mark": 2050, + "old_domain": 5581184, + "new_domain": 5570944, + "status": null + }, + { + "sequence": 2051, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 360, + "change_mark": 2051, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 2052, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 400, + "change_mark": 2052, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2053, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 358, + "change_mark": 2053, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 2054, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 361, + "change_mark": 2054, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 2055, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 401, + "change_mark": 2055, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2056, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 359, + "change_mark": 2056, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 2057, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 362, + "change_mark": 2057, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 2058, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 402, + "change_mark": 2058, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2059, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 360, + "change_mark": 2059, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 2060, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 363, + "change_mark": 2060, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 2061, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 403, + "change_mark": 2061, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2062, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 361, + "change_mark": 2062, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 2063, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 364, + "change_mark": 2063, + "old_domain": 2817920, + "new_domain": 12160, + "status": null + }, + { + "sequence": 2064, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 404, + "change_mark": 2064, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2065, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 362, + "change_mark": 2065, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 2066, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 365, + "change_mark": 2066, + "old_domain": 2806144, + "new_domain": 384, + "status": null + }, + { + "sequence": 2067, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 323, + "change_mark": 2067, + "old_domain": 1920, + "new_domain": 640, + "status": null + }, + { + "sequence": 2068, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 405, + "change_mark": 2068, + "old_domain": 20928, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2069, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 363, + "change_mark": 2069, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 2070, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 406, + "change_mark": 2070, + "old_domain": 20928, + "new_domain": 384, + "status": null + }, + { + "sequence": 2071, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 364, + "change_mark": 2071, + "old_domain": 12160, + "new_domain": 1920, + "status": null + }, + { + "sequence": 2072, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 322, + "change_mark": 2072, + "old_domain": 1920, + "new_domain": 640, + "status": null + }, + { + "sequence": 2073, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 407, + "change_mark": 2073, + "old_domain": 20928, + "new_domain": 384, + "status": null + }, + { + "sequence": 2074, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 371, + "change_mark": 2074, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2075, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 329, + "change_mark": 2075, + "old_domain": 2787200, + "new_domain": 384, + "status": null + }, + { + "sequence": 2076, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 411, + "change_mark": 2076, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2077, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 372, + "change_mark": 2077, + "old_domain": 2786816, + "new_domain": 1536, + "status": null + }, + { + "sequence": 2078, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 330, + "change_mark": 2078, + "old_domain": 1116032, + "new_domain": 384, + "status": null + }, + { + "sequence": 2079, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 412, + "change_mark": 2079, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2080, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 288, + "change_mark": 2080, + "old_domain": 2688, + "new_domain": 128, + "status": null + }, + { + "sequence": 2081, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 331, + "change_mark": 2081, + "old_domain": 1920, + "new_domain": 1536, + "status": null + }, + { + "sequence": 2082, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 373, + "change_mark": 2082, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2083, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 413, + "change_mark": 2083, + "old_domain": 5572096, + "new_domain": 1536, + "status": null + }, + { + "sequence": 2084, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 289, + "change_mark": 2084, + "old_domain": 561792, + "new_domain": 4224, + "status": null + }, + { + "sequence": 2085, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 374, + "change_mark": 2085, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2086, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 332, + "change_mark": 2086, + "old_domain": 12160, + "new_domain": 384, + "status": null + }, + { + "sequence": 2087, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 414, + "change_mark": 2087, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2088, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 290, + "change_mark": 2088, + "old_domain": 5572480, + "new_domain": 5572096, + "status": null + }, + { + "sequence": 2089, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 375, + "change_mark": 2089, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2090, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 333, + "change_mark": 2090, + "old_domain": 2807680, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2091, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 415, + "change_mark": 2091, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2092, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 291, + "change_mark": 2092, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2093, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 333, + "change_mark": 2093, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2094, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 376, + "change_mark": 2094, + "old_domain": 2786816, + "new_domain": 1536, + "status": null + }, + { + "sequence": 2095, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 334, + "change_mark": 2095, + "old_domain": 5572480, + "new_domain": 384, + "status": null + }, + { + "sequence": 2096, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 416, + "change_mark": 2096, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2097, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 292, + "change_mark": 2097, + "old_domain": 12160, + "new_domain": 384, + "status": null + }, + { + "sequence": 2098, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 377, + "change_mark": 2098, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2099, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 335, + "change_mark": 2099, + "old_domain": 1920, + "new_domain": 1536, + "status": null + }, + { + "sequence": 2100, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 417, + "change_mark": 2100, + "old_domain": 5572096, + "new_domain": 1536, + "status": null + }, + { + "sequence": 2101, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 293, + "change_mark": 2101, + "old_domain": 2807680, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2102, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 378, + "change_mark": 2102, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2103, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 336, + "change_mark": 2103, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2104, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 418, + "change_mark": 2104, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2105, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 294, + "change_mark": 2105, + "old_domain": 5572480, + "new_domain": 5572096, + "status": null + }, + { + "sequence": 2106, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 379, + "change_mark": 2106, + "old_domain": 2786816, + "new_domain": 1536, + "status": null + }, + { + "sequence": 2107, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 337, + "change_mark": 2107, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2108, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 419, + "change_mark": 2108, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2109, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 295, + "change_mark": 2109, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2110, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 380, + "change_mark": 2110, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2111, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 338, + "change_mark": 2111, + "old_domain": 1920, + "new_domain": 1536, + "status": null + }, + { + "sequence": 2112, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 420, + "change_mark": 2112, + "old_domain": 5572096, + "new_domain": 1536, + "status": null + }, + { + "sequence": 2113, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 296, + "change_mark": 2113, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2114, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 339, + "change_mark": 2114, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2115, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 381, + "change_mark": 2115, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2116, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 421, + "change_mark": 2116, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2117, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 297, + "change_mark": 2117, + "old_domain": 1920, + "new_domain": 1536, + "status": null + }, + { + "sequence": 2118, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 382, + "change_mark": 2118, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2119, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 340, + "change_mark": 2119, + "old_domain": 12160, + "new_domain": 384, + "status": null + }, + { + "sequence": 2120, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 422, + "change_mark": 2120, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2121, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 298, + "change_mark": 2121, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2122, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 383, + "change_mark": 2122, + "old_domain": 2786816, + "new_domain": 1536, + "status": null + }, + { + "sequence": 2123, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 341, + "change_mark": 2123, + "old_domain": 2807680, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2124, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 423, + "change_mark": 2124, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2125, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 299, + "change_mark": 2125, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2126, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 341, + "change_mark": 2126, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2127, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 384, + "change_mark": 2127, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2128, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 342, + "change_mark": 2128, + "old_domain": 5570944, + "new_domain": 5570560, + "status": null + }, + { + "sequence": 2129, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 424, + "change_mark": 2129, + "old_domain": 5572096, + "new_domain": 1536, + "status": null + }, + { + "sequence": 2130, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 300, + "change_mark": 2130, + "old_domain": 12160, + "new_domain": 384, + "status": null + }, + { + "sequence": 2131, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 385, + "change_mark": 2131, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2132, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 343, + "change_mark": 2132, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2133, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 425, + "change_mark": 2133, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2134, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 301, + "change_mark": 2134, + "old_domain": 2806144, + "new_domain": 2785280, + "status": null + }, + { + "sequence": 2135, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 386, + "change_mark": 2135, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2136, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 344, + "change_mark": 2136, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2137, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 426, + "change_mark": 2137, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2138, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 302, + "change_mark": 2138, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2139, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 387, + "change_mark": 2139, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2140, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 345, + "change_mark": 2140, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2141, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 427, + "change_mark": 2141, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2142, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 303, + "change_mark": 2142, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2143, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 346, + "change_mark": 2143, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2144, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 388, + "change_mark": 2144, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2145, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 428, + "change_mark": 2145, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2146, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 304, + "change_mark": 2146, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2147, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 389, + "change_mark": 2147, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2148, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 347, + "change_mark": 2148, + "old_domain": 12160, + "new_domain": 384, + "status": null + }, + { + "sequence": 2149, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 429, + "change_mark": 2149, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2150, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 305, + "change_mark": 2150, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2151, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 390, + "change_mark": 2151, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2152, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 348, + "change_mark": 2152, + "old_domain": 2807680, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2153, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 430, + "change_mark": 2153, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2154, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 306, + "change_mark": 2154, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2155, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 348, + "change_mark": 2155, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2156, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 391, + "change_mark": 2156, + "old_domain": 2786816, + "new_domain": 1536, + "status": null + }, + { + "sequence": 2157, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 349, + "change_mark": 2157, + "old_domain": 5572480, + "new_domain": 384, + "status": null + }, + { + "sequence": 2158, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 431, + "change_mark": 2158, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2159, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 307, + "change_mark": 2159, + "old_domain": 12160, + "new_domain": 384, + "status": null + }, + { + "sequence": 2160, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 392, + "change_mark": 2160, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2161, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 350, + "change_mark": 2161, + "old_domain": 1920, + "new_domain": 1536, + "status": null + }, + { + "sequence": 2162, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 432, + "change_mark": 2162, + "old_domain": 5572096, + "new_domain": 1536, + "status": null + }, + { + "sequence": 2163, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 308, + "change_mark": 2163, + "old_domain": 2807680, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2164, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 393, + "change_mark": 2164, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2165, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 351, + "change_mark": 2165, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2166, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 433, + "change_mark": 2166, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2167, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 309, + "change_mark": 2167, + "old_domain": 5570944, + "new_domain": 5570560, + "status": null + }, + { + "sequence": 2168, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 394, + "change_mark": 2168, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2169, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 352, + "change_mark": 2169, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2170, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 434, + "change_mark": 2170, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2171, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 310, + "change_mark": 2171, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2172, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 395, + "change_mark": 2172, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2173, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 353, + "change_mark": 2173, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2174, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 435, + "change_mark": 2174, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2175, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 311, + "change_mark": 2175, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2176, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 354, + "change_mark": 2176, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2177, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 396, + "change_mark": 2177, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2178, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 436, + "change_mark": 2178, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2179, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 312, + "change_mark": 2179, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2180, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 397, + "change_mark": 2180, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2181, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 355, + "change_mark": 2181, + "old_domain": 12160, + "new_domain": 384, + "status": null + }, + { + "sequence": 2182, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 437, + "change_mark": 2182, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2183, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 313, + "change_mark": 2183, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2184, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 398, + "change_mark": 2184, + "old_domain": 2786816, + "new_domain": 1536, + "status": null + }, + { + "sequence": 2185, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 356, + "change_mark": 2185, + "old_domain": 2807680, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2186, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 438, + "change_mark": 2186, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2187, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 314, + "change_mark": 2187, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2188, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 356, + "change_mark": 2188, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2189, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 399, + "change_mark": 2189, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2190, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 357, + "change_mark": 2190, + "old_domain": 5570944, + "new_domain": 5570560, + "status": null + }, + { + "sequence": 2191, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 439, + "change_mark": 2191, + "old_domain": 5572096, + "new_domain": 1536, + "status": null + }, + { + "sequence": 2192, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 315, + "change_mark": 2192, + "old_domain": 12160, + "new_domain": 384, + "status": null + }, + { + "sequence": 2193, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 400, + "change_mark": 2193, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2194, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 358, + "change_mark": 2194, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2195, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 440, + "change_mark": 2195, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2196, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 316, + "change_mark": 2196, + "old_domain": 2806144, + "new_domain": 2785280, + "status": null + }, + { + "sequence": 2197, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 401, + "change_mark": 2197, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2198, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 359, + "change_mark": 2198, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2199, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 441, + "change_mark": 2199, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2200, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 317, + "change_mark": 2200, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2201, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 402, + "change_mark": 2201, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2202, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 360, + "change_mark": 2202, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2203, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 442, + "change_mark": 2203, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2204, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 318, + "change_mark": 2204, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2205, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 403, + "change_mark": 2205, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2206, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 361, + "change_mark": 2206, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2207, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 443, + "change_mark": 2207, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2208, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 319, + "change_mark": 2208, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2209, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 404, + "change_mark": 2209, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2210, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 362, + "change_mark": 2210, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2211, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 444, + "change_mark": 2211, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2212, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 320, + "change_mark": 2212, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2213, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 405, + "change_mark": 2213, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2214, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 363, + "change_mark": 2214, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2215, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 445, + "change_mark": 2215, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2216, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 321, + "change_mark": 2216, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2217, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 364, + "change_mark": 2217, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2218, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 446, + "change_mark": 2218, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2219, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 322, + "change_mark": 2219, + "old_domain": 640, + "new_domain": 128, + "status": null + }, + { + "sequence": 2220, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 447, + "change_mark": 2220, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2221, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 323, + "change_mark": 2221, + "old_domain": 640, + "new_domain": 128, + "status": null + }, + { + "sequence": 2222, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 448, + "change_mark": 2222, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2223, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 449, + "change_mark": 2223, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2224, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 157, + "change_mark": 2224, + "old_domain": 5570944, + "new_domain": 1114240, + "status": null + }, + { + "sequence": 2225, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 116, + "change_mark": 2225, + "old_domain": 2806144, + "new_domain": 577920, + "status": null + }, + { + "sequence": 2226, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 247, + "change_mark": 2226, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2227, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 289, + "change_mark": 2227, + "old_domain": 4224, + "new_domain": 128, + "status": null + }, + { + "sequence": 2228, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 248, + "change_mark": 2228, + "old_domain": 12160, + "new_domain": 384, + "status": null + }, + { + "sequence": 2229, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 290, + "change_mark": 2229, + "old_domain": 5572096, + "new_domain": 328192, + "status": null + }, + { + "sequence": 2230, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 206, + "change_mark": 2230, + "old_domain": 2785664, + "new_domain": 384, + "status": null + }, + { + "sequence": 2231, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 249, + "change_mark": 2231, + "old_domain": 2807680, + "new_domain": 165376, + "status": null + }, + { + "sequence": 2232, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 250, + "change_mark": 2232, + "old_domain": 5572480, + "new_domain": 384, + "status": null + }, + { + "sequence": 2233, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 208, + "change_mark": 2233, + "old_domain": 12160, + "new_domain": 11776, + "status": null + }, + { + "sequence": 2234, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 251, + "change_mark": 2234, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2235, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 293, + "change_mark": 2235, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2236, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 209, + "change_mark": 2236, + "old_domain": 2807680, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2237, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 252, + "change_mark": 2237, + "old_domain": 12160, + "new_domain": 384, + "status": null + }, + { + "sequence": 2238, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 210, + "change_mark": 2238, + "old_domain": 5572480, + "new_domain": 384, + "status": null + }, + { + "sequence": 2239, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 253, + "change_mark": 2239, + "old_domain": 2807680, + "new_domain": 2786816, + "status": null + }, + { + "sequence": 2240, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 254, + "change_mark": 2240, + "old_domain": 5572480, + "new_domain": 384, + "status": null + }, + { + "sequence": 2241, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 212, + "change_mark": 2241, + "old_domain": 12160, + "new_domain": 11776, + "status": null + }, + { + "sequence": 2242, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 255, + "change_mark": 2242, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2243, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 213, + "change_mark": 2243, + "old_domain": 2807680, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2244, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 256, + "change_mark": 2244, + "old_domain": 1920, + "new_domain": 1536, + "status": null + }, + { + "sequence": 2245, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 214, + "change_mark": 2245, + "old_domain": 5572480, + "new_domain": 384, + "status": null + }, + { + "sequence": 2246, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 257, + "change_mark": 2246, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2247, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 215, + "change_mark": 2247, + "old_domain": 1920, + "new_domain": 1536, + "status": null + }, + { + "sequence": 2248, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 258, + "change_mark": 2248, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2249, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 216, + "change_mark": 2249, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2250, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 259, + "change_mark": 2250, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2251, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 217, + "change_mark": 2251, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2252, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 260, + "change_mark": 2252, + "old_domain": 10624, + "new_domain": 10240, + "status": null + }, + { + "sequence": 2253, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 218, + "change_mark": 2253, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2254, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 261, + "change_mark": 2254, + "old_domain": 2806144, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2255, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 262, + "change_mark": 2255, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2256, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 263, + "change_mark": 2256, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2257, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 221, + "change_mark": 2257, + "old_domain": 2806144, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2258, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 264, + "change_mark": 2258, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2259, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 222, + "change_mark": 2259, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2260, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 265, + "change_mark": 2260, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2261, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 223, + "change_mark": 2261, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2262, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 266, + "change_mark": 2262, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2263, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 308, + "change_mark": 2263, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2264, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 224, + "change_mark": 2264, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2265, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 267, + "change_mark": 2265, + "old_domain": 12160, + "new_domain": 384, + "status": null + }, + { + "sequence": 2266, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 225, + "change_mark": 2266, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2267, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 268, + "change_mark": 2267, + "old_domain": 2806144, + "new_domain": 2785280, + "status": null + }, + { + "sequence": 2268, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 269, + "change_mark": 2268, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2269, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 227, + "change_mark": 2269, + "old_domain": 10624, + "new_domain": 10240, + "status": null + }, + { + "sequence": 2270, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 270, + "change_mark": 2270, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2271, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 228, + "change_mark": 2271, + "old_domain": 2806144, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2272, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 271, + "change_mark": 2272, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2273, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 229, + "change_mark": 2273, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2274, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 272, + "change_mark": 2274, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2275, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 230, + "change_mark": 2275, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2276, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 273, + "change_mark": 2276, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2277, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 231, + "change_mark": 2277, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2278, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 274, + "change_mark": 2278, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2279, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 232, + "change_mark": 2279, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2280, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 275, + "change_mark": 2280, + "old_domain": 10624, + "new_domain": 10240, + "status": null + }, + { + "sequence": 2281, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 233, + "change_mark": 2281, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2282, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 276, + "change_mark": 2282, + "old_domain": 2806144, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2283, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 277, + "change_mark": 2283, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2284, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 278, + "change_mark": 2284, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2285, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 236, + "change_mark": 2285, + "old_domain": 2806144, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2286, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 279, + "change_mark": 2286, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2287, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 237, + "change_mark": 2287, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2288, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 280, + "change_mark": 2288, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2289, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 238, + "change_mark": 2289, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2290, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 281, + "change_mark": 2290, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2291, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 321, + "change_mark": 2291, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2292, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 239, + "change_mark": 2292, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2293, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 282, + "change_mark": 2293, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2294, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 240, + "change_mark": 2294, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2295, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 241, + "change_mark": 2295, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2296, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 320, + "change_mark": 2296, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2297, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 319, + "change_mark": 2297, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2298, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 318, + "change_mark": 2298, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2299, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 207, + "change_mark": 2299, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2300, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 165, + "change_mark": 2300, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 2301, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 168, + "change_mark": 2301, + "old_domain": 12160, + "new_domain": 10624, + "status": null + }, + { + "sequence": 2302, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 211, + "change_mark": 2302, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2303, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 169, + "change_mark": 2303, + "old_domain": 2807680, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2304, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 172, + "change_mark": 2304, + "old_domain": 12160, + "new_domain": 10624, + "status": null + }, + { + "sequence": 2305, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 173, + "change_mark": 2305, + "old_domain": 2807680, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2306, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 174, + "change_mark": 2306, + "old_domain": 5570944, + "new_domain": 5570560, + "status": null + }, + { + "sequence": 2307, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 175, + "change_mark": 2307, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2308, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 176, + "change_mark": 2308, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2309, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 261, + "change_mark": 2309, + "old_domain": 20864, + "new_domain": 20480, + "status": null + }, + { + "sequence": 2310, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 177, + "change_mark": 2310, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2311, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 220, + "change_mark": 2311, + "old_domain": 10624, + "new_domain": 10240, + "status": null + }, + { + "sequence": 2312, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 181, + "change_mark": 2312, + "old_domain": 2806144, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2313, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 182, + "change_mark": 2313, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2314, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 183, + "change_mark": 2314, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2315, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 226, + "change_mark": 2315, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2316, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 184, + "change_mark": 2316, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2317, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 228, + "change_mark": 2317, + "old_domain": 20864, + "new_domain": 20480, + "status": null + }, + { + "sequence": 2318, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 187, + "change_mark": 2318, + "old_domain": 10624, + "new_domain": 10240, + "status": null + }, + { + "sequence": 2319, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 188, + "change_mark": 2319, + "old_domain": 2806144, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2320, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 189, + "change_mark": 2320, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2321, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 190, + "change_mark": 2321, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2322, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 191, + "change_mark": 2322, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2323, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 276, + "change_mark": 2323, + "old_domain": 20864, + "new_domain": 20480, + "status": null + }, + { + "sequence": 2324, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 192, + "change_mark": 2324, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2325, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 235, + "change_mark": 2325, + "old_domain": 10624, + "new_domain": 10240, + "status": null + }, + { + "sequence": 2326, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 196, + "change_mark": 2326, + "old_domain": 2806144, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2327, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 197, + "change_mark": 2327, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2328, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 198, + "change_mark": 2328, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2329, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 199, + "change_mark": 2329, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2330, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 200, + "change_mark": 2330, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2331, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 317, + "change_mark": 2331, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2332, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 166, + "change_mark": 2332, + "old_domain": 2806144, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2333, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 166, + "change_mark": 2333, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2334, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 127, + "change_mark": 2334, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2335, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 170, + "change_mark": 2335, + "old_domain": 5572480, + "new_domain": 384, + "status": null + }, + { + "sequence": 2336, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 128, + "change_mark": 2336, + "old_domain": 12160, + "new_domain": 10624, + "status": null + }, + { + "sequence": 2337, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 131, + "change_mark": 2337, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2338, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 132, + "change_mark": 2338, + "old_domain": 12160, + "new_domain": 10624, + "status": null + }, + { + "sequence": 2339, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 133, + "change_mark": 2339, + "old_domain": 2806144, + "new_domain": 2785280, + "status": null + }, + { + "sequence": 2340, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 134, + "change_mark": 2340, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2341, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 135, + "change_mark": 2341, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2342, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 136, + "change_mark": 2342, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2343, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 221, + "change_mark": 2343, + "old_domain": 20864, + "new_domain": 20480, + "status": null + }, + { + "sequence": 2344, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 141, + "change_mark": 2344, + "old_domain": 2806144, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2345, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 142, + "change_mark": 2345, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2346, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 185, + "change_mark": 2346, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2347, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 143, + "change_mark": 2347, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2348, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 188, + "change_mark": 2348, + "old_domain": 20864, + "new_domain": 20480, + "status": null + }, + { + "sequence": 2349, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 147, + "change_mark": 2349, + "old_domain": 10624, + "new_domain": 10240, + "status": null + }, + { + "sequence": 2350, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 148, + "change_mark": 2350, + "old_domain": 2806144, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2351, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 149, + "change_mark": 2351, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2352, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 150, + "change_mark": 2352, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2353, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 151, + "change_mark": 2353, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2354, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 236, + "change_mark": 2354, + "old_domain": 20864, + "new_domain": 20480, + "status": null + }, + { + "sequence": 2355, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 156, + "change_mark": 2355, + "old_domain": 2806144, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2356, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 157, + "change_mark": 2356, + "old_domain": 1114240, + "new_domain": 128, + "status": null + }, + { + "sequence": 2357, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 158, + "change_mark": 2357, + "old_domain": 640, + "new_domain": 128, + "status": null + }, + { + "sequence": 2358, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 159, + "change_mark": 2358, + "old_domain": 640, + "new_domain": 128, + "status": null + }, + { + "sequence": 2359, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 316, + "change_mark": 2359, + "old_domain": 2785280, + "new_domain": 163840, + "status": null + }, + { + "sequence": 2360, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 125, + "change_mark": 2360, + "old_domain": 2176, + "new_domain": 128, + "status": null + }, + { + "sequence": 2361, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 86, + "change_mark": 2361, + "old_domain": 2806144, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2362, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 129, + "change_mark": 2362, + "old_domain": 2807680, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2363, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 87, + "change_mark": 2363, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2364, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 90, + "change_mark": 2364, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2365, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 91, + "change_mark": 2365, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2366, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 92, + "change_mark": 2366, + "old_domain": 10624, + "new_domain": 10240, + "status": null + }, + { + "sequence": 2367, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 132, + "change_mark": 2367, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 2368, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 93, + "change_mark": 2368, + "old_domain": 2806144, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2369, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 94, + "change_mark": 2369, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2370, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 95, + "change_mark": 2370, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2371, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 180, + "change_mark": 2371, + "old_domain": 10624, + "new_domain": 10240, + "status": null + }, + { + "sequence": 2372, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 101, + "change_mark": 2372, + "old_domain": 2806144, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2373, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 144, + "change_mark": 2373, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2374, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 102, + "change_mark": 2374, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2375, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 148, + "change_mark": 2375, + "old_domain": 20864, + "new_domain": 20480, + "status": null + }, + { + "sequence": 2376, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 107, + "change_mark": 2376, + "old_domain": 10624, + "new_domain": 10240, + "status": null + }, + { + "sequence": 2377, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 108, + "change_mark": 2377, + "old_domain": 2806144, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2378, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 109, + "change_mark": 2378, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2379, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 110, + "change_mark": 2379, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2380, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 195, + "change_mark": 2380, + "old_domain": 10624, + "new_domain": 10240, + "status": null + }, + { + "sequence": 2381, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 116, + "change_mark": 2381, + "old_domain": 577920, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2382, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 156, + "change_mark": 2382, + "old_domain": 20864, + "new_domain": 4224, + "status": null + }, + { + "sequence": 2383, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 117, + "change_mark": 2383, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2384, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 118, + "change_mark": 2384, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2385, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 357, + "change_mark": 2385, + "old_domain": 5570560, + "new_domain": 327680, + "status": null + }, + { + "sequence": 2386, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 126, + "change_mark": 2386, + "old_domain": 561280, + "new_domain": 557184, + "status": null + }, + { + "sequence": 2387, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 88, + "change_mark": 2387, + "old_domain": 12160, + "new_domain": 10624, + "status": null + }, + { + "sequence": 2388, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 46, + "change_mark": 2388, + "old_domain": 2806144, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2389, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 49, + "change_mark": 2389, + "old_domain": 2806144, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2390, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 50, + "change_mark": 2390, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2391, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 93, + "change_mark": 2391, + "old_domain": 20864, + "new_domain": 20480, + "status": null + }, + { + "sequence": 2392, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 173, + "change_mark": 2392, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2393, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 52, + "change_mark": 2393, + "old_domain": 10624, + "new_domain": 10240, + "status": null + }, + { + "sequence": 2394, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 53, + "change_mark": 2394, + "old_domain": 2806144, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2395, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 54, + "change_mark": 2395, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2396, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 181, + "change_mark": 2396, + "old_domain": 20864, + "new_domain": 20480, + "status": null + }, + { + "sequence": 2397, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 103, + "change_mark": 2397, + "old_domain": 1920, + "new_domain": 384, + "status": null + }, + { + "sequence": 2398, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 61, + "change_mark": 2398, + "old_domain": 2806144, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2399, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 108, + "change_mark": 2399, + "old_domain": 20864, + "new_domain": 20480, + "status": null + }, + { + "sequence": 2400, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 67, + "change_mark": 2400, + "old_domain": 10624, + "new_domain": 10240, + "status": null + }, + { + "sequence": 2401, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 68, + "change_mark": 2401, + "old_domain": 2806144, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2402, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 69, + "change_mark": 2402, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2403, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 196, + "change_mark": 2403, + "old_domain": 20864, + "new_domain": 20480, + "status": null + }, + { + "sequence": 2404, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 155, + "change_mark": 2404, + "old_domain": 10624, + "new_domain": 2176, + "status": null + }, + { + "sequence": 2405, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 76, + "change_mark": 2405, + "old_domain": 2806144, + "new_domain": 20864, + "status": null + }, + { + "sequence": 2406, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 77, + "change_mark": 2406, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2407, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 356, + "change_mark": 2407, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2408, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 47, + "change_mark": 2408, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2409, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 9, + "change_mark": 2409, + "old_domain": 2805760, + "new_domain": 20480, + "status": null + }, + { + "sequence": 2410, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 172, + "change_mark": 2410, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 2411, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 53, + "change_mark": 2411, + "old_domain": 20864, + "new_domain": 20480, + "status": null + }, + { + "sequence": 2412, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 12, + "change_mark": 2412, + "old_domain": 10624, + "new_domain": 10240, + "status": null + }, + { + "sequence": 2413, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 13, + "change_mark": 2413, + "old_domain": 2805760, + "new_domain": 20480, + "status": null + }, + { + "sequence": 2414, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 140, + "change_mark": 2414, + "old_domain": 10624, + "new_domain": 10240, + "status": null + }, + { + "sequence": 2415, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 62, + "change_mark": 2415, + "old_domain": 5570944, + "new_domain": 384, + "status": null + }, + { + "sequence": 2416, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 68, + "change_mark": 2416, + "old_domain": 20864, + "new_domain": 20480, + "status": null + }, + { + "sequence": 2417, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 27, + "change_mark": 2417, + "old_domain": 10624, + "new_domain": 10240, + "status": null + }, + { + "sequence": 2418, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 28, + "change_mark": 2418, + "old_domain": 2805760, + "new_domain": 20480, + "status": null + }, + { + "sequence": 2419, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 155, + "change_mark": 2419, + "old_domain": 2176, + "new_domain": 2048, + "status": null + }, + { + "sequence": 2420, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 156, + "change_mark": 2420, + "old_domain": 4224, + "new_domain": 4096, + "status": null + }, + { + "sequence": 2421, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 154, + "change_mark": 2421, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2422, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 36, + "change_mark": 2422, + "old_domain": 2805760, + "new_domain": 20480, + "status": null + }, + { + "sequence": 2423, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 355, + "change_mark": 2423, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2424, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 6, + "change_mark": 2424, + "old_domain": 2805760, + "new_domain": 20480, + "status": null + }, + { + "sequence": 2425, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 8, + "change_mark": 2425, + "old_domain": 10624, + "new_domain": 10240, + "status": null + }, + { + "sequence": 2426, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 213, + "change_mark": 2426, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2427, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 141, + "change_mark": 2427, + "old_domain": 20864, + "new_domain": 20480, + "status": null + }, + { + "sequence": 2428, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 21, + "change_mark": 2428, + "old_domain": 2805760, + "new_domain": 20480, + "status": null + }, + { + "sequence": 2429, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 115, + "change_mark": 2429, + "old_domain": 10624, + "new_domain": 10240, + "status": null + }, + { + "sequence": 2430, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 153, + "change_mark": 2430, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2431, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 35, + "change_mark": 2431, + "old_domain": 10624, + "new_domain": 10240, + "status": null + }, + { + "sequence": 2432, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 354, + "change_mark": 2432, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2433, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 5, + "change_mark": 2433, + "old_domain": 10624, + "new_domain": 10240, + "status": null + }, + { + "sequence": 2434, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 49, + "change_mark": 2434, + "old_domain": 20864, + "new_domain": 20480, + "status": null + }, + { + "sequence": 2435, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 212, + "change_mark": 2435, + "old_domain": 11776, + "new_domain": 1536, + "status": null + }, + { + "sequence": 2436, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 100, + "change_mark": 2436, + "old_domain": 10624, + "new_domain": 10240, + "status": null + }, + { + "sequence": 2437, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 20, + "change_mark": 2437, + "old_domain": 10624, + "new_domain": 10240, + "status": null + }, + { + "sequence": 2438, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 116, + "change_mark": 2438, + "old_domain": 20864, + "new_domain": 20480, + "status": null + }, + { + "sequence": 2439, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 152, + "change_mark": 2439, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2440, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 76, + "change_mark": 2440, + "old_domain": 20864, + "new_domain": 20480, + "status": null + }, + { + "sequence": 2441, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 353, + "change_mark": 2441, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2442, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 46, + "change_mark": 2442, + "old_domain": 20864, + "new_domain": 20480, + "status": null + }, + { + "sequence": 2443, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 48, + "change_mark": 2443, + "old_domain": 10624, + "new_domain": 10240, + "status": null + }, + { + "sequence": 2444, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 171, + "change_mark": 2444, + "old_domain": 1920, + "new_domain": 1536, + "status": null + }, + { + "sequence": 2445, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 253, + "change_mark": 2445, + "old_domain": 2786816, + "new_domain": 1536, + "status": null + }, + { + "sequence": 2446, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 101, + "change_mark": 2446, + "old_domain": 20864, + "new_domain": 20480, + "status": null + }, + { + "sequence": 2447, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 61, + "change_mark": 2447, + "old_domain": 20864, + "new_domain": 20480, + "status": null + }, + { + "sequence": 2448, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 75, + "change_mark": 2448, + "old_domain": 10624, + "new_domain": 10240, + "status": null + }, + { + "sequence": 2449, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 151, + "change_mark": 2449, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2450, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 352, + "change_mark": 2450, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2451, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 45, + "change_mark": 2451, + "old_domain": 10624, + "new_domain": 10240, + "status": null + }, + { + "sequence": 2452, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 89, + "change_mark": 2452, + "old_domain": 2806144, + "new_domain": 2805760, + "status": null + }, + { + "sequence": 2453, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 130, + "change_mark": 2453, + "old_domain": 5570944, + "new_domain": 5570560, + "status": null + }, + { + "sequence": 2454, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 294, + "change_mark": 2454, + "old_domain": 5572096, + "new_domain": 1536, + "status": null + }, + { + "sequence": 2455, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 60, + "change_mark": 2455, + "old_domain": 10624, + "new_domain": 10240, + "status": null + }, + { + "sequence": 2456, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 150, + "change_mark": 2456, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2457, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 351, + "change_mark": 2457, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2458, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 86, + "change_mark": 2458, + "old_domain": 20864, + "new_domain": 20480, + "status": null + }, + { + "sequence": 2459, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 89, + "change_mark": 2459, + "old_domain": 2805760, + "new_domain": 2785280, + "status": null + }, + { + "sequence": 2460, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 149, + "change_mark": 2460, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2461, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 350, + "change_mark": 2461, + "old_domain": 1536, + "new_domain": 512, + "status": null + }, + { + "sequence": 2462, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 85, + "change_mark": 2462, + "old_domain": 10624, + "new_domain": 10240, + "status": null + }, + { + "sequence": 2463, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 88, + "change_mark": 2463, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 2464, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 148, + "change_mark": 2464, + "old_domain": 20480, + "new_domain": 4096, + "status": null + }, + { + "sequence": 2465, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 349, + "change_mark": 2465, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2466, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 126, + "change_mark": 2466, + "old_domain": 557184, + "new_domain": 557056, + "status": null + }, + { + "sequence": 2467, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 129, + "change_mark": 2467, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2468, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 147, + "change_mark": 2468, + "old_domain": 10240, + "new_domain": 2048, + "status": null + }, + { + "sequence": 2469, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 348, + "change_mark": 2469, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2470, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 167, + "change_mark": 2470, + "old_domain": 1114496, + "new_domain": 1114112, + "status": null + }, + { + "sequence": 2471, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 128, + "change_mark": 2471, + "old_domain": 10624, + "new_domain": 384, + "status": null + }, + { + "sequence": 2472, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 146, + "change_mark": 2472, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2473, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 347, + "change_mark": 2473, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2474, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 168, + "change_mark": 2474, + "old_domain": 10624, + "new_domain": 2176, + "status": null + }, + { + "sequence": 2475, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 208, + "change_mark": 2475, + "old_domain": 11776, + "new_domain": 1536, + "status": null + }, + { + "sequence": 2476, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 169, + "change_mark": 2476, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2477, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 145, + "change_mark": 2477, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2478, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 346, + "change_mark": 2478, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2479, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 169, + "change_mark": 2479, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2480, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 209, + "change_mark": 2480, + "old_domain": 20864, + "new_domain": 384, + "status": null + }, + { + "sequence": 2481, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 249, + "change_mark": 2481, + "old_domain": 165376, + "new_domain": 1536, + "status": null + }, + { + "sequence": 2482, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 170, + "change_mark": 2482, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2483, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 168, + "change_mark": 2483, + "old_domain": 2176, + "new_domain": 128, + "status": null + }, + { + "sequence": 2484, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 144, + "change_mark": 2484, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2485, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 345, + "change_mark": 2485, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2486, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 290, + "change_mark": 2486, + "old_domain": 328192, + "new_domain": 512, + "status": null + }, + { + "sequence": 2487, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 171, + "change_mark": 2487, + "old_domain": 1536, + "new_domain": 512, + "status": null + }, + { + "sequence": 2488, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 143, + "change_mark": 2488, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2489, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 344, + "change_mark": 2489, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2490, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 291, + "change_mark": 2490, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2491, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 172, + "change_mark": 2491, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2492, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 142, + "change_mark": 2492, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2493, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 343, + "change_mark": 2493, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2494, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 292, + "change_mark": 2494, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2495, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 173, + "change_mark": 2495, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2496, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 141, + "change_mark": 2496, + "old_domain": 20480, + "new_domain": 4096, + "status": null + }, + { + "sequence": 2497, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 342, + "change_mark": 2497, + "old_domain": 5570560, + "new_domain": 1114112, + "status": null + }, + { + "sequence": 2498, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 293, + "change_mark": 2498, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2499, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 174, + "change_mark": 2499, + "old_domain": 5570560, + "new_domain": 327680, + "status": null + }, + { + "sequence": 2500, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 140, + "change_mark": 2500, + "old_domain": 10240, + "new_domain": 2048, + "status": null + }, + { + "sequence": 2501, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 301, + "change_mark": 2501, + "old_domain": 2785280, + "new_domain": 557056, + "status": null + }, + { + "sequence": 2502, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 294, + "change_mark": 2502, + "old_domain": 1536, + "new_domain": 512, + "status": null + }, + { + "sequence": 2503, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 133, + "change_mark": 2503, + "old_domain": 2785280, + "new_domain": 163840, + "status": null + }, + { + "sequence": 2504, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 139, + "change_mark": 2504, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2505, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 300, + "change_mark": 2505, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2506, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 295, + "change_mark": 2506, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2507, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 134, + "change_mark": 2507, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2508, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 138, + "change_mark": 2508, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2509, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 299, + "change_mark": 2509, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2510, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 296, + "change_mark": 2510, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2511, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 135, + "change_mark": 2511, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2512, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 137, + "change_mark": 2512, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2513, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 298, + "change_mark": 2513, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2514, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 297, + "change_mark": 2514, + "old_domain": 1536, + "new_domain": 512, + "status": null + }, + { + "sequence": 2515, + "kind": "domain_reduction", + "phase": "initial", + "reason": "propagation", + "depth": 0, + "cell": 136, + "change_mark": 2515, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2516, + "kind": "propagation", + "phase": "initial", + "reason": null, + "depth": 0, + "cell": null, + "change_mark": 2515, + "old_domain": null, + "new_domain": null, + "status": null + }, + { + "sequence": 2517, + "kind": "decision", + "phase": "search", + "reason": null, + "depth": 1, + "cell": 0, + "change_mark": 2515, + "old_domain": 9, + "new_domain": 1, + "status": null + }, + { + "sequence": 2518, + "kind": "domain_reduction", + "phase": "search", + "reason": "decision", + "depth": 1, + "cell": 0, + "change_mark": 2516, + "old_domain": 9, + "new_domain": 1, + "status": null + }, + { + "sequence": 2519, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 1, + "change_mark": 2517, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2520, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 41, + "change_mark": 2518, + "old_domain": 10, + "new_domain": 2, + "status": null + }, + { + "sequence": 2521, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 2, + "change_mark": 2519, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2522, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 42, + "change_mark": 2520, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2523, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 82, + "change_mark": 2521, + "old_domain": 12, + "new_domain": 4, + "status": null + }, + { + "sequence": 2524, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 3, + "change_mark": 2522, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2525, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 43, + "change_mark": 2523, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2526, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 83, + "change_mark": 2524, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2527, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 4, + "change_mark": 2525, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2528, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 44, + "change_mark": 2526, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2529, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 84, + "change_mark": 2527, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2530, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 5, + "change_mark": 2528, + "old_domain": 10240, + "new_domain": 2048, + "status": null + }, + { + "sequence": 2531, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 45, + "change_mark": 2529, + "old_domain": 10240, + "new_domain": 2048, + "status": null + }, + { + "sequence": 2532, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 85, + "change_mark": 2530, + "old_domain": 10240, + "new_domain": 2048, + "status": null + }, + { + "sequence": 2533, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 6, + "change_mark": 2531, + "old_domain": 20480, + "new_domain": 4096, + "status": null + }, + { + "sequence": 2534, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 46, + "change_mark": 2532, + "old_domain": 20480, + "new_domain": 4096, + "status": null + }, + { + "sequence": 2535, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 86, + "change_mark": 2533, + "old_domain": 20480, + "new_domain": 4096, + "status": null + }, + { + "sequence": 2536, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 7, + "change_mark": 2534, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2537, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 47, + "change_mark": 2535, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2538, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 87, + "change_mark": 2536, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2539, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 8, + "change_mark": 2537, + "old_domain": 10240, + "new_domain": 2048, + "status": null + }, + { + "sequence": 2540, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 48, + "change_mark": 2538, + "old_domain": 10240, + "new_domain": 2048, + "status": null + }, + { + "sequence": 2541, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 88, + "change_mark": 2539, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2542, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 9, + "change_mark": 2540, + "old_domain": 20480, + "new_domain": 4096, + "status": null + }, + { + "sequence": 2543, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 49, + "change_mark": 2541, + "old_domain": 20480, + "new_domain": 4096, + "status": null + }, + { + "sequence": 2544, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 89, + "change_mark": 2542, + "old_domain": 2785280, + "new_domain": 557056, + "status": null + }, + { + "sequence": 2545, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 10, + "change_mark": 2543, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2546, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 50, + "change_mark": 2544, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2547, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 130, + "change_mark": 2545, + "old_domain": 5570560, + "new_domain": 1114112, + "status": null + }, + { + "sequence": 2548, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 11, + "change_mark": 2546, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2549, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 51, + "change_mark": 2547, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2550, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 131, + "change_mark": 2548, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2551, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 12, + "change_mark": 2549, + "old_domain": 10240, + "new_domain": 2048, + "status": null + }, + { + "sequence": 2552, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 52, + "change_mark": 2550, + "old_domain": 10240, + "new_domain": 2048, + "status": null + }, + { + "sequence": 2553, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 132, + "change_mark": 2551, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2554, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 13, + "change_mark": 2552, + "old_domain": 20480, + "new_domain": 4096, + "status": null + }, + { + "sequence": 2555, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 53, + "change_mark": 2553, + "old_domain": 20480, + "new_domain": 4096, + "status": null + }, + { + "sequence": 2556, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 133, + "change_mark": 2554, + "old_domain": 163840, + "new_domain": 32768, + "status": null + }, + { + "sequence": 2557, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 14, + "change_mark": 2555, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2558, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 54, + "change_mark": 2556, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2559, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 174, + "change_mark": 2557, + "old_domain": 327680, + "new_domain": 65536, + "status": null + }, + { + "sequence": 2560, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 15, + "change_mark": 2558, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2561, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 55, + "change_mark": 2559, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2562, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 175, + "change_mark": 2560, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2563, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 16, + "change_mark": 2561, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2564, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 56, + "change_mark": 2562, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2565, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 176, + "change_mark": 2563, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2566, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 17, + "change_mark": 2564, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2567, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 57, + "change_mark": 2565, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2568, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 177, + "change_mark": 2566, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2569, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 18, + "change_mark": 2567, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2570, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 58, + "change_mark": 2568, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2571, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 178, + "change_mark": 2569, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2572, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 19, + "change_mark": 2570, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2573, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 59, + "change_mark": 2571, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2574, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 179, + "change_mark": 2572, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2575, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 20, + "change_mark": 2573, + "old_domain": 10240, + "new_domain": 2048, + "status": null + }, + { + "sequence": 2576, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 60, + "change_mark": 2574, + "old_domain": 10240, + "new_domain": 2048, + "status": null + }, + { + "sequence": 2577, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 180, + "change_mark": 2575, + "old_domain": 10240, + "new_domain": 2048, + "status": null + }, + { + "sequence": 2578, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 21, + "change_mark": 2576, + "old_domain": 20480, + "new_domain": 4096, + "status": null + }, + { + "sequence": 2579, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 61, + "change_mark": 2577, + "old_domain": 20480, + "new_domain": 4096, + "status": null + }, + { + "sequence": 2580, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 181, + "change_mark": 2578, + "old_domain": 20480, + "new_domain": 4096, + "status": null + }, + { + "sequence": 2581, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 22, + "change_mark": 2579, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2582, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 62, + "change_mark": 2580, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2583, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 182, + "change_mark": 2581, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2584, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 23, + "change_mark": 2582, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2585, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 63, + "change_mark": 2583, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2586, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 183, + "change_mark": 2584, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2587, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 24, + "change_mark": 2585, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2588, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 64, + "change_mark": 2586, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2589, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 184, + "change_mark": 2587, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2590, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 25, + "change_mark": 2588, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2591, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 65, + "change_mark": 2589, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2592, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 185, + "change_mark": 2590, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2593, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 26, + "change_mark": 2591, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2594, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 66, + "change_mark": 2592, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2595, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 186, + "change_mark": 2593, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2596, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 27, + "change_mark": 2594, + "old_domain": 10240, + "new_domain": 2048, + "status": null + }, + { + "sequence": 2597, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 67, + "change_mark": 2595, + "old_domain": 10240, + "new_domain": 2048, + "status": null + }, + { + "sequence": 2598, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 187, + "change_mark": 2596, + "old_domain": 10240, + "new_domain": 2048, + "status": null + }, + { + "sequence": 2599, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 28, + "change_mark": 2597, + "old_domain": 20480, + "new_domain": 4096, + "status": null + }, + { + "sequence": 2600, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 68, + "change_mark": 2598, + "old_domain": 20480, + "new_domain": 4096, + "status": null + }, + { + "sequence": 2601, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 188, + "change_mark": 2599, + "old_domain": 20480, + "new_domain": 4096, + "status": null + }, + { + "sequence": 2602, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 29, + "change_mark": 2600, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2603, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 69, + "change_mark": 2601, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2604, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 189, + "change_mark": 2602, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2605, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 30, + "change_mark": 2603, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2606, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 70, + "change_mark": 2604, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2607, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 190, + "change_mark": 2605, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2608, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 31, + "change_mark": 2606, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2609, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 71, + "change_mark": 2607, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2610, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 191, + "change_mark": 2608, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2611, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 32, + "change_mark": 2609, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2612, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 72, + "change_mark": 2610, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2613, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 192, + "change_mark": 2611, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2614, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 33, + "change_mark": 2612, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2615, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 73, + "change_mark": 2613, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2616, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 193, + "change_mark": 2614, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2617, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 34, + "change_mark": 2615, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2618, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 74, + "change_mark": 2616, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2619, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 194, + "change_mark": 2617, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2620, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 35, + "change_mark": 2618, + "old_domain": 10240, + "new_domain": 2048, + "status": null + }, + { + "sequence": 2621, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 75, + "change_mark": 2619, + "old_domain": 10240, + "new_domain": 2048, + "status": null + }, + { + "sequence": 2622, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 195, + "change_mark": 2620, + "old_domain": 10240, + "new_domain": 2048, + "status": null + }, + { + "sequence": 2623, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 36, + "change_mark": 2621, + "old_domain": 20480, + "new_domain": 4096, + "status": null + }, + { + "sequence": 2624, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 76, + "change_mark": 2622, + "old_domain": 20480, + "new_domain": 4096, + "status": null + }, + { + "sequence": 2625, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 196, + "change_mark": 2623, + "old_domain": 20480, + "new_domain": 4096, + "status": null + }, + { + "sequence": 2626, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 37, + "change_mark": 2624, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2627, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 77, + "change_mark": 2625, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2628, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 197, + "change_mark": 2626, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2629, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 38, + "change_mark": 2627, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2630, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 78, + "change_mark": 2628, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2631, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 198, + "change_mark": 2629, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2632, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 39, + "change_mark": 2630, + "old_domain": 48, + "new_domain": 16, + "status": null + }, + { + "sequence": 2633, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 79, + "change_mark": 2631, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2634, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 199, + "change_mark": 2632, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2635, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 80, + "change_mark": 2633, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2636, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 80, + "change_mark": 2634, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2637, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 200, + "change_mark": 2635, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2638, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 81, + "change_mark": 2636, + "old_domain": 48, + "new_domain": 16, + "status": null + }, + { + "sequence": 2639, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 201, + "change_mark": 2637, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2640, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 122, + "change_mark": 2638, + "old_domain": 320, + "new_domain": 256, + "status": null + }, + { + "sequence": 2641, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 202, + "change_mark": 2639, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2642, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 121, + "change_mark": 2640, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2643, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 203, + "change_mark": 2641, + "old_domain": 48, + "new_domain": 16, + "status": null + }, + { + "sequence": 2644, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 120, + "change_mark": 2642, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2645, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 244, + "change_mark": 2643, + "old_domain": 448, + "new_domain": 384, + "status": null + }, + { + "sequence": 2646, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 119, + "change_mark": 2644, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2647, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 118, + "change_mark": 2645, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2648, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 117, + "change_mark": 2646, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2649, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 116, + "change_mark": 2647, + "old_domain": 20480, + "new_domain": 16384, + "status": null + }, + { + "sequence": 2650, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 115, + "change_mark": 2648, + "old_domain": 10240, + "new_domain": 8192, + "status": null + }, + { + "sequence": 2651, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 114, + "change_mark": 2649, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2652, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 113, + "change_mark": 2650, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2653, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 112, + "change_mark": 2651, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2654, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 111, + "change_mark": 2652, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2655, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 110, + "change_mark": 2653, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2656, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 109, + "change_mark": 2654, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2657, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 108, + "change_mark": 2655, + "old_domain": 20480, + "new_domain": 16384, + "status": null + }, + { + "sequence": 2658, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 107, + "change_mark": 2656, + "old_domain": 10240, + "new_domain": 8192, + "status": null + }, + { + "sequence": 2659, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 106, + "change_mark": 2657, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2660, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 105, + "change_mark": 2658, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2661, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 104, + "change_mark": 2659, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2662, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 103, + "change_mark": 2660, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2663, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 102, + "change_mark": 2661, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2664, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 101, + "change_mark": 2662, + "old_domain": 20480, + "new_domain": 16384, + "status": null + }, + { + "sequence": 2665, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 100, + "change_mark": 2663, + "old_domain": 10240, + "new_domain": 8192, + "status": null + }, + { + "sequence": 2666, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 99, + "change_mark": 2664, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2667, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 98, + "change_mark": 2665, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2668, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 97, + "change_mark": 2666, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2669, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 96, + "change_mark": 2667, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2670, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 95, + "change_mark": 2668, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2671, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 94, + "change_mark": 2669, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2672, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 93, + "change_mark": 2670, + "old_domain": 20480, + "new_domain": 16384, + "status": null + }, + { + "sequence": 2673, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 92, + "change_mark": 2671, + "old_domain": 10240, + "new_domain": 8192, + "status": null + }, + { + "sequence": 2674, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 91, + "change_mark": 2672, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2675, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 90, + "change_mark": 2673, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2676, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 89, + "change_mark": 2674, + "old_domain": 557056, + "new_domain": 524288, + "status": null + }, + { + "sequence": 2677, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 130, + "change_mark": 2675, + "old_domain": 1114112, + "new_domain": 1048576, + "status": null + }, + { + "sequence": 2678, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 129, + "change_mark": 2676, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2679, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 128, + "change_mark": 2677, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2680, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 127, + "change_mark": 2678, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2681, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 126, + "change_mark": 2679, + "old_domain": 557056, + "new_domain": 524288, + "status": null + }, + { + "sequence": 2682, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 167, + "change_mark": 2680, + "old_domain": 1114112, + "new_domain": 1048576, + "status": null + }, + { + "sequence": 2683, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 166, + "change_mark": 2681, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2684, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 165, + "change_mark": 2682, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2685, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 164, + "change_mark": 2683, + "old_domain": 9, + "new_domain": 8, + "status": null + }, + { + "sequence": 2686, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 205, + "change_mark": 2684, + "old_domain": 10, + "new_domain": 8, + "status": null + }, + { + "sequence": 2687, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 206, + "change_mark": 2685, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2688, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 246, + "change_mark": 2686, + "old_domain": 12, + "new_domain": 8, + "status": null + }, + { + "sequence": 2689, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 207, + "change_mark": 2687, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2690, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 247, + "change_mark": 2688, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2691, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 208, + "change_mark": 2689, + "old_domain": 1536, + "new_domain": 1024, + "status": null + }, + { + "sequence": 2692, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 248, + "change_mark": 2690, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2693, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 209, + "change_mark": 2691, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2694, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 249, + "change_mark": 2692, + "old_domain": 1536, + "new_domain": 1024, + "status": null + }, + { + "sequence": 2695, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 210, + "change_mark": 2693, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2696, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 250, + "change_mark": 2694, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2697, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 211, + "change_mark": 2695, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2698, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 251, + "change_mark": 2696, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2699, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 212, + "change_mark": 2697, + "old_domain": 1536, + "new_domain": 1024, + "status": null + }, + { + "sequence": 2700, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 252, + "change_mark": 2698, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2701, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 213, + "change_mark": 2699, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2702, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 253, + "change_mark": 2700, + "old_domain": 1536, + "new_domain": 1024, + "status": null + }, + { + "sequence": 2703, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 214, + "change_mark": 2701, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2704, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 254, + "change_mark": 2702, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2705, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 215, + "change_mark": 2703, + "old_domain": 1536, + "new_domain": 1024, + "status": null + }, + { + "sequence": 2706, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 255, + "change_mark": 2704, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2707, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 216, + "change_mark": 2705, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2708, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 256, + "change_mark": 2706, + "old_domain": 1536, + "new_domain": 1024, + "status": null + }, + { + "sequence": 2709, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 217, + "change_mark": 2707, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2710, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 257, + "change_mark": 2708, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2711, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 218, + "change_mark": 2709, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2712, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 258, + "change_mark": 2710, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2713, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 219, + "change_mark": 2711, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2714, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 259, + "change_mark": 2712, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2715, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 220, + "change_mark": 2713, + "old_domain": 10240, + "new_domain": 8192, + "status": null + }, + { + "sequence": 2716, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 260, + "change_mark": 2714, + "old_domain": 10240, + "new_domain": 8192, + "status": null + }, + { + "sequence": 2717, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 221, + "change_mark": 2715, + "old_domain": 20480, + "new_domain": 16384, + "status": null + }, + { + "sequence": 2718, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 261, + "change_mark": 2716, + "old_domain": 20480, + "new_domain": 16384, + "status": null + }, + { + "sequence": 2719, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 222, + "change_mark": 2717, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2720, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 262, + "change_mark": 2718, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2721, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 223, + "change_mark": 2719, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2722, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 263, + "change_mark": 2720, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2723, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 224, + "change_mark": 2721, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2724, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 264, + "change_mark": 2722, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2725, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 225, + "change_mark": 2723, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2726, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 265, + "change_mark": 2724, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2727, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 226, + "change_mark": 2725, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2728, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 266, + "change_mark": 2726, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2729, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 227, + "change_mark": 2727, + "old_domain": 10240, + "new_domain": 8192, + "status": null + }, + { + "sequence": 2730, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 267, + "change_mark": 2728, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2731, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 228, + "change_mark": 2729, + "old_domain": 20480, + "new_domain": 16384, + "status": null + }, + { + "sequence": 2732, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 268, + "change_mark": 2730, + "old_domain": 2785280, + "new_domain": 2228224, + "status": null + }, + { + "sequence": 2733, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 229, + "change_mark": 2731, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2734, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 309, + "change_mark": 2732, + "old_domain": 5570560, + "new_domain": 4456448, + "status": null + }, + { + "sequence": 2735, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 230, + "change_mark": 2733, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2736, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 310, + "change_mark": 2734, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2737, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 231, + "change_mark": 2735, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2738, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 311, + "change_mark": 2736, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2739, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 232, + "change_mark": 2737, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2740, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 312, + "change_mark": 2738, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2741, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 233, + "change_mark": 2739, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2742, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 313, + "change_mark": 2740, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2743, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 234, + "change_mark": 2741, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2744, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 314, + "change_mark": 2742, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2745, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 235, + "change_mark": 2743, + "old_domain": 10240, + "new_domain": 8192, + "status": null + }, + { + "sequence": 2746, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 315, + "change_mark": 2744, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2747, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 236, + "change_mark": 2745, + "old_domain": 20480, + "new_domain": 16384, + "status": null + }, + { + "sequence": 2748, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 316, + "change_mark": 2746, + "old_domain": 163840, + "new_domain": 131072, + "status": null + }, + { + "sequence": 2749, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 237, + "change_mark": 2747, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2750, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 357, + "change_mark": 2748, + "old_domain": 327680, + "new_domain": 262144, + "status": null + }, + { + "sequence": 2751, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 238, + "change_mark": 2749, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2752, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 358, + "change_mark": 2750, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2753, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 239, + "change_mark": 2751, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2754, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 359, + "change_mark": 2752, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2755, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 240, + "change_mark": 2753, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2756, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 360, + "change_mark": 2754, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2757, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 241, + "change_mark": 2755, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2758, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 361, + "change_mark": 2756, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2759, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 242, + "change_mark": 2757, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2760, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 362, + "change_mark": 2758, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2761, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 243, + "change_mark": 2759, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2762, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 363, + "change_mark": 2760, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2763, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 244, + "change_mark": 2761, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2764, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 364, + "change_mark": 2762, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2765, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 245, + "change_mark": 2763, + "old_domain": 48, + "new_domain": 32, + "status": null + }, + { + "sequence": 2766, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 365, + "change_mark": 2764, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2767, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 286, + "change_mark": 2765, + "old_domain": 320, + "new_domain": 64, + "status": null + }, + { + "sequence": 2768, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 366, + "change_mark": 2766, + "old_domain": 384, + "new_domain": 256, + "status": null + }, + { + "sequence": 2769, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 285, + "change_mark": 2767, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2770, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 367, + "change_mark": 2768, + "old_domain": 48, + "new_domain": 32, + "status": null + }, + { + "sequence": 2771, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 284, + "change_mark": 2769, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2772, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 408, + "change_mark": 2770, + "old_domain": 448, + "new_domain": 64, + "status": null + }, + { + "sequence": 2773, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 283, + "change_mark": 2771, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2774, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 409, + "change_mark": 2772, + "old_domain": 48, + "new_domain": 32, + "status": null + }, + { + "sequence": 2775, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 407, + "change_mark": 2773, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2776, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 282, + "change_mark": 2774, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2777, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 450, + "change_mark": 2775, + "old_domain": 320, + "new_domain": 64, + "status": null + }, + { + "sequence": 2778, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 406, + "change_mark": 2776, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2779, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 281, + "change_mark": 2777, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2780, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 449, + "change_mark": 2778, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2781, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 405, + "change_mark": 2779, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2782, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 280, + "change_mark": 2780, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2783, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 448, + "change_mark": 2781, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2784, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 404, + "change_mark": 2782, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2785, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 279, + "change_mark": 2783, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2786, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 447, + "change_mark": 2784, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2787, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 403, + "change_mark": 2785, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2788, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 278, + "change_mark": 2786, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2789, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 446, + "change_mark": 2787, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2790, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 402, + "change_mark": 2788, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2791, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 277, + "change_mark": 2789, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2792, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 445, + "change_mark": 2790, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2793, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 401, + "change_mark": 2791, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2794, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 276, + "change_mark": 2792, + "old_domain": 20480, + "new_domain": 4096, + "status": null + }, + { + "sequence": 2795, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 444, + "change_mark": 2793, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2796, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 400, + "change_mark": 2794, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2797, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 275, + "change_mark": 2795, + "old_domain": 10240, + "new_domain": 2048, + "status": null + }, + { + "sequence": 2798, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 443, + "change_mark": 2796, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2799, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 399, + "change_mark": 2797, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2800, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 274, + "change_mark": 2798, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2801, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 442, + "change_mark": 2799, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2802, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 398, + "change_mark": 2800, + "old_domain": 1536, + "new_domain": 512, + "status": null + }, + { + "sequence": 2803, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 273, + "change_mark": 2801, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2804, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 441, + "change_mark": 2802, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2805, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 397, + "change_mark": 2803, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2806, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 272, + "change_mark": 2804, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2807, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 440, + "change_mark": 2805, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2808, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 396, + "change_mark": 2806, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2809, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 271, + "change_mark": 2807, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2810, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 439, + "change_mark": 2808, + "old_domain": 1536, + "new_domain": 512, + "status": null + }, + { + "sequence": 2811, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 395, + "change_mark": 2809, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2812, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 270, + "change_mark": 2810, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2813, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 438, + "change_mark": 2811, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2814, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 394, + "change_mark": 2812, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2815, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 269, + "change_mark": 2813, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2816, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 437, + "change_mark": 2814, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2817, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 393, + "change_mark": 2815, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2818, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 268, + "change_mark": 2816, + "old_domain": 2228224, + "new_domain": 131072, + "status": null + }, + { + "sequence": 2819, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 436, + "change_mark": 2817, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2820, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 392, + "change_mark": 2818, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2821, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 309, + "change_mark": 2819, + "old_domain": 4456448, + "new_domain": 262144, + "status": null + }, + { + "sequence": 2822, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 435, + "change_mark": 2820, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2823, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 391, + "change_mark": 2821, + "old_domain": 1536, + "new_domain": 512, + "status": null + }, + { + "sequence": 2824, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 308, + "change_mark": 2822, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2825, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 434, + "change_mark": 2823, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2826, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 390, + "change_mark": 2824, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2827, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 307, + "change_mark": 2825, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2828, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 433, + "change_mark": 2826, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2829, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 389, + "change_mark": 2827, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2830, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 306, + "change_mark": 2828, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2831, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 432, + "change_mark": 2829, + "old_domain": 1536, + "new_domain": 512, + "status": null + }, + { + "sequence": 2832, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 388, + "change_mark": 2830, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2833, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 305, + "change_mark": 2831, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2834, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 431, + "change_mark": 2832, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2835, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 387, + "change_mark": 2833, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2836, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 304, + "change_mark": 2834, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2837, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 430, + "change_mark": 2835, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2838, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 386, + "change_mark": 2836, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2839, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 303, + "change_mark": 2837, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2840, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 429, + "change_mark": 2838, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2841, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 385, + "change_mark": 2839, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2842, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 302, + "change_mark": 2840, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2843, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 428, + "change_mark": 2841, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2844, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 384, + "change_mark": 2842, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2845, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 301, + "change_mark": 2843, + "old_domain": 557056, + "new_domain": 32768, + "status": null + }, + { + "sequence": 2846, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 427, + "change_mark": 2844, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2847, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 383, + "change_mark": 2845, + "old_domain": 1536, + "new_domain": 512, + "status": null + }, + { + "sequence": 2848, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 342, + "change_mark": 2846, + "old_domain": 1114112, + "new_domain": 65536, + "status": null + }, + { + "sequence": 2849, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 426, + "change_mark": 2847, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2850, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 382, + "change_mark": 2848, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2851, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 341, + "change_mark": 2849, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2852, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 425, + "change_mark": 2850, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2853, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 381, + "change_mark": 2851, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2854, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 340, + "change_mark": 2852, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2855, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 424, + "change_mark": 2853, + "old_domain": 1536, + "new_domain": 512, + "status": null + }, + { + "sequence": 2856, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 380, + "change_mark": 2854, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2857, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 339, + "change_mark": 2855, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2858, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 423, + "change_mark": 2856, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2859, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 379, + "change_mark": 2857, + "old_domain": 1536, + "new_domain": 512, + "status": null + }, + { + "sequence": 2860, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 338, + "change_mark": 2858, + "old_domain": 1536, + "new_domain": 512, + "status": null + }, + { + "sequence": 2861, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 422, + "change_mark": 2859, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2862, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 378, + "change_mark": 2860, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2863, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 337, + "change_mark": 2861, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2864, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 421, + "change_mark": 2862, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2865, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 377, + "change_mark": 2863, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2866, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 336, + "change_mark": 2864, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2867, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 420, + "change_mark": 2865, + "old_domain": 1536, + "new_domain": 512, + "status": null + }, + { + "sequence": 2868, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 376, + "change_mark": 2866, + "old_domain": 1536, + "new_domain": 512, + "status": null + }, + { + "sequence": 2869, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 335, + "change_mark": 2867, + "old_domain": 1536, + "new_domain": 512, + "status": null + }, + { + "sequence": 2870, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 419, + "change_mark": 2868, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2871, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 375, + "change_mark": 2869, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2872, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 334, + "change_mark": 2870, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2873, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 418, + "change_mark": 2871, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2874, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 374, + "change_mark": 2872, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2875, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 333, + "change_mark": 2873, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2876, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 417, + "change_mark": 2874, + "old_domain": 1536, + "new_domain": 512, + "status": null + }, + { + "sequence": 2877, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 373, + "change_mark": 2875, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2878, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 332, + "change_mark": 2876, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2879, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 416, + "change_mark": 2877, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2880, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 372, + "change_mark": 2878, + "old_domain": 1536, + "new_domain": 512, + "status": null + }, + { + "sequence": 2881, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 331, + "change_mark": 2879, + "old_domain": 1536, + "new_domain": 512, + "status": null + }, + { + "sequence": 2882, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 415, + "change_mark": 2880, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2883, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 371, + "change_mark": 2881, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2884, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 330, + "change_mark": 2882, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2885, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 414, + "change_mark": 2883, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2886, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 370, + "change_mark": 2884, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2887, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 329, + "change_mark": 2885, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2888, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 413, + "change_mark": 2886, + "old_domain": 1536, + "new_domain": 512, + "status": null + }, + { + "sequence": 2889, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 369, + "change_mark": 2887, + "old_domain": 10, + "new_domain": 2, + "status": null + }, + { + "sequence": 2890, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 328, + "change_mark": 2888, + "old_domain": 9, + "new_domain": 1, + "status": null + }, + { + "sequence": 2891, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 412, + "change_mark": 2889, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2892, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 410, + "change_mark": 2890, + "old_domain": 12, + "new_domain": 4, + "status": null + }, + { + "sequence": 2893, + "kind": "domain_reduction", + "phase": "search", + "reason": "propagation", + "depth": 1, + "cell": 411, + "change_mark": 2891, + "old_domain": 384, + "new_domain": 128, + "status": null + }, + { + "sequence": 2894, + "kind": "propagation", + "phase": "search", + "reason": null, + "depth": 1, + "cell": 0, + "change_mark": 2891, + "old_domain": null, + "new_domain": null, + "status": null + }, + { + "sequence": 2895, + "kind": "result", + "phase": null, + "reason": null, + "depth": 1, + "cell": null, + "change_mark": 2891, + "old_domain": null, + "new_domain": null, + "status": "sat" + } + ], + "checkpoints": [ + { + "event_sequence": 127, + "change_mark": 127, + "domains": [ + 9, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 10624, + 2805760, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 48, + 0, + 11, + 2795968, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816496, + 2816496, + 5581232, + 2816505, + 2816505, + 2816505, + 5581241, + 2816505, + 2816505, + 2816505, + 2816505, + 2816505, + 2816505, + 2816505, + 5581241, + 2816505, + 2816505, + 2816505, + 2816505, + 2816505, + 2816505, + 5581241, + 2816505, + 2816505, + 2816505, + 2816505, + 2816505, + 2816505, + 2816505, + 5581241, + 2816505, + 2816505, + 10745, + 48, + 15, + 8387065, + 8387065, + 8387065, + 8387065, + 8387065, + 2818041, + 8387065, + 8387065, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 20956, + 16712, + 887504, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 1282695, + 0, + 0, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 48, + 0, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 48, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 20956, + 16712, + 887504, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 1282695, + 0, + 0, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 48, + 0, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 48, + 12, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 16712 + ] + }, + { + "event_sequence": 255, + "change_mark": 255, + "domains": [ + 9, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 10624, + 2805760, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 48, + 0, + 11, + 2795968, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2806208, + 448, + 48, + 15, + 8366528, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 2817984, + 8387056, + 8387056, + 8387056, + 2818041, + 8387065, + 8387065, + 8387065, + 8387065, + 8387065, + 8387065, + 8387065, + 2818041, + 8387065, + 8387065, + 8387065, + 8387065, + 8387065, + 8387065, + 2818041, + 8387065, + 8387065, + 8387065, + 8387065, + 8387065, + 8387065, + 8387065, + 2818041, + 8387065, + 8387065, + 20952, + 328, + 2192, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 1282695, + 0, + 0, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 48, + 0, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 48, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 20956, + 16712, + 887504, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 1282695, + 0, + 0, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 48, + 0, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 48, + 12, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 16712 + ] + }, + { + "event_sequence": 383, + "change_mark": 383, + "domains": [ + 9, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 10624, + 2805760, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 48, + 0, + 11, + 2795968, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2806208, + 448, + 48, + 12, + 5745088, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 20928, + 320, + 2176, + 891584, + 8372160, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388592, + 8388592, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 1282689, + 0, + 0, + 9, + 3932089, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 48, + 0, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 48, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 20956, + 16712, + 887504, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 1282695, + 0, + 0, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 48, + 0, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 48, + 12, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 16712 + ] + }, + { + "event_sequence": 511, + "change_mark": 511, + "domains": [ + 9, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 10624, + 2805760, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 48, + 0, + 11, + 2795968, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2806208, + 448, + 48, + 12, + 5745088, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 6158784, + 20928, + 320, + 128, + 891584, + 8372160, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8380352, + 1282688, + 0, + 0, + 9, + 3911552, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388592, + 8388592, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 339897, + 48, + 0, + 11, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 48, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 20956, + 16712, + 887504, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 1282695, + 0, + 0, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 48, + 0, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 48, + 12, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 16712 + ] + }, + { + "event_sequence": 639, + "change_mark": 639, + "domains": [ + 9, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 10624, + 2805760, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 48, + 0, + 11, + 2795968, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2806208, + 448, + 48, + 12, + 5745088, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 6158784, + 20928, + 320, + 128, + 891584, + 8372160, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8380352, + 1282688, + 0, + 0, + 9, + 3911552, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8378304, + 329600, + 48, + 0, + 11, + 8368064, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388592, + 8388592, + 8388592, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 2818041, + 10745, + 48, + 15, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 20956, + 16712, + 887504, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 1282695, + 0, + 0, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 48, + 0, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 48, + 12, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 16712 + ] + }, + { + "event_sequence": 767, + "change_mark": 767, + "domains": [ + 9, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 10624, + 2805760, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 48, + 0, + 11, + 2795968, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2806208, + 448, + 48, + 12, + 5745088, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 6158784, + 20928, + 320, + 128, + 891584, + 8372160, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8380352, + 1282688, + 0, + 0, + 9, + 3911552, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8378304, + 329600, + 48, + 0, + 11, + 8368064, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 2807744, + 448, + 48, + 15, + 8368064, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388592, + 8388592, + 8388592, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 20952, + 328, + 2192, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 1282695, + 0, + 0, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 48, + 0, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 48, + 12, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 16712 + ] + }, + { + "event_sequence": 895, + "change_mark": 895, + "domains": [ + 9, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 10624, + 2805760, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 48, + 0, + 11, + 2795968, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2806208, + 448, + 48, + 12, + 5745088, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 6158784, + 20928, + 320, + 128, + 891584, + 8372160, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8380352, + 1282688, + 0, + 0, + 9, + 3911552, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8378304, + 329600, + 48, + 0, + 11, + 8368064, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 2807744, + 448, + 48, + 12, + 5746624, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 20928, + 320, + 2176, + 891584, + 8372160, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388592, + 8388592, + 8388592, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 1282689, + 0, + 0, + 9, + 3932089, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 48, + 0, + 15, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 48, + 12, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 16712 + ] + }, + { + "event_sequence": 1023, + "change_mark": 1023, + "domains": [ + 9, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 10624, + 2805760, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 48, + 0, + 11, + 2795968, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2806208, + 448, + 48, + 12, + 5745088, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 6158784, + 20928, + 320, + 128, + 891584, + 8372160, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8380352, + 1282688, + 0, + 0, + 9, + 3911552, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8378304, + 329600, + 48, + 0, + 11, + 8368064, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 2807744, + 448, + 48, + 12, + 5746624, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 6160320, + 20928, + 320, + 128, + 891584, + 8372160, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8380352, + 1282688, + 0, + 0, + 9, + 3911552, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388592, + 8388592, + 8388592, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 339897, + 48, + 0, + 11, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388601, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 8388607, + 48, + 12, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 5572096, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 20956, + 16712 + ] + }, + { + "event_sequence": 1151, + "change_mark": 1151, + "domains": [ + 9, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 10624, + 2805760, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 48, + 0, + 11, + 2795968, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2806208, + 448, + 48, + 12, + 5745088, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 6158784, + 20928, + 320, + 128, + 891584, + 8372160, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8380352, + 1282688, + 0, + 0, + 9, + 3911552, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8378304, + 329600, + 48, + 0, + 11, + 8368064, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 2807744, + 448, + 48, + 12, + 5746624, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 6160320, + 20928, + 320, + 128, + 891584, + 8372160, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8380352, + 1282688, + 0, + 0, + 9, + 3911552, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8378304, + 329600, + 48, + 0, + 11, + 8368064, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388592, + 2818032, + 10745, + 48, + 12, + 20952, + 20952, + 5572096, + 20952, + 20952, + 20952, + 5572096, + 20952, + 20952, + 5572096, + 20952, + 20952, + 20952, + 5572096, + 20952, + 20952, + 20952, + 20952, + 20952, + 20952, + 20952, + 5572096, + 20952, + 20952, + 20952, + 20952, + 20952, + 20952, + 5572096, + 20952, + 20952, + 20952, + 20952, + 20952, + 20952, + 20952, + 20952, + 20956, + 20956, + 16712 + ] + }, + { + "event_sequence": 1279, + "change_mark": 1279, + "domains": [ + 9, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 10624, + 2805760, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 48, + 0, + 11, + 384, + 384, + 384, + 10624, + 2806144, + 5581184, + 10624, + 2806208, + 5581184, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2816448, + 2806208, + 5581184, + 2816448, + 2806208, + 448, + 48, + 12, + 174464, + 2816384, + 2816384, + 2816384, + 5581184, + 2817920, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 8387008, + 2817984, + 8387008, + 6158784, + 20928, + 320, + 128, + 891584, + 8372160, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8380352, + 1282688, + 0, + 0, + 9, + 3911552, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8378304, + 329600, + 48, + 0, + 11, + 8368064, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 2807744, + 448, + 48, + 12, + 5746624, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 6160320, + 20928, + 320, + 128, + 891584, + 8372160, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8380352, + 1282688, + 0, + 0, + 9, + 3911552, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8378304, + 329600, + 48, + 0, + 10, + 448, + 20928, + 8357376, + 20928, + 20928, + 20928, + 8357376, + 20928, + 20928, + 8357376, + 20928, + 20928, + 20928, + 8357376, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 8357376, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 8357376, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 448, + 48, + 12, + 448, + 448, + 5572096, + 448, + 448, + 448, + 5572096, + 448, + 448, + 5572096, + 448, + 448, + 448, + 5572096, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 5572096, + 448, + 448, + 448, + 448, + 448, + 448, + 5572096, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 320 + ] + }, + { + "event_sequence": 1407, + "change_mark": 1407, + "domains": [ + 9, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 10624, + 2805760, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 48, + 0, + 11, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 10624, + 2806144, + 5570944, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 448, + 48, + 12, + 384, + 384, + 10624, + 2806144, + 5570944, + 12160, + 2806144, + 5570944, + 1920, + 10624, + 2806144, + 5570944, + 1920, + 384, + 384, + 384, + 384, + 10624, + 2816384, + 5581184, + 12160, + 2816384, + 2816384, + 2816384, + 2816384, + 2816384, + 5581184, + 2817920, + 2816384, + 2816384, + 2816384, + 2816384, + 2816384, + 2816384, + 5581184, + 2817920, + 2816384, + 10624, + 384, + 320, + 128, + 563328, + 2800000, + 2816384, + 8386944, + 2817920, + 2817920, + 8386944, + 2817920, + 2817920, + 2816384, + 8386944, + 2817920, + 2817920, + 2816384, + 2816384, + 2816384, + 2816384, + 2816384, + 8386944, + 2817920, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8380352, + 1282688, + 0, + 0, + 9, + 3911552, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8378304, + 329600, + 48, + 0, + 11, + 8368064, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 2807744, + 448, + 48, + 12, + 5746624, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 6160320, + 20928, + 320, + 128, + 891584, + 8372160, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8380352, + 1282688, + 0, + 0, + 9, + 3911552, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8378304, + 329600, + 48, + 0, + 10, + 448, + 20928, + 8357376, + 20928, + 20928, + 20928, + 8357376, + 20928, + 20928, + 8357376, + 20928, + 20928, + 20928, + 8357376, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 8357376, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 8357376, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 448, + 48, + 12, + 448, + 448, + 5572096, + 448, + 448, + 448, + 5572096, + 448, + 448, + 5572096, + 448, + 448, + 448, + 5572096, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 5572096, + 448, + 448, + 448, + 448, + 448, + 448, + 5572096, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 320 + ] + }, + { + "event_sequence": 1535, + "change_mark": 1535, + "domains": [ + 9, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 10624, + 2805760, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 48, + 0, + 11, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 10624, + 2806144, + 5570944, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 448, + 48, + 12, + 384, + 384, + 10624, + 2806144, + 5570944, + 12160, + 2806144, + 5570944, + 1920, + 10624, + 2806144, + 5570944, + 1920, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 384, + 384, + 384, + 320, + 128, + 128, + 2176, + 561280, + 5570944, + 12160, + 2807680, + 5570944, + 1920, + 12160, + 2806144, + 5570944, + 1920, + 1920, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 10624, + 10624, + 10624, + 2816384, + 2816384, + 8386944, + 2817920, + 2817920, + 2808192, + 168064, + 0, + 0, + 9, + 2795904, + 2816384, + 3930496, + 2817920, + 2817920, + 8388480, + 2817920, + 2817920, + 2817920, + 8386944, + 2817920, + 2817920, + 2817920, + 2816384, + 2816384, + 2816384, + 2816384, + 8386944, + 2817920, + 2817920, + 2817920, + 2816384, + 2816384, + 2816384, + 8386944, + 2817920, + 2817920, + 2817920, + 2816384, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8378304, + 329600, + 48, + 0, + 11, + 8368064, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 2807744, + 448, + 48, + 12, + 5746624, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 6160320, + 20928, + 320, + 128, + 891584, + 8372160, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8380352, + 1282688, + 0, + 0, + 9, + 3911552, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8378304, + 329600, + 48, + 0, + 10, + 448, + 20928, + 8357376, + 20928, + 20928, + 20928, + 8357376, + 20928, + 20928, + 8357376, + 20928, + 20928, + 20928, + 8357376, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 8357376, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 8357376, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 448, + 48, + 12, + 448, + 448, + 5572096, + 448, + 448, + 448, + 5572096, + 448, + 448, + 5572096, + 448, + 448, + 448, + 5572096, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 5572096, + 448, + 448, + 448, + 448, + 448, + 448, + 5572096, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 320 + ] + }, + { + "event_sequence": 1663, + "change_mark": 1663, + "domains": [ + 9, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 10624, + 2805760, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 48, + 0, + 10, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 10624, + 2806144, + 5570944, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 448, + 48, + 12, + 384, + 384, + 10624, + 2806144, + 5570944, + 12160, + 2806144, + 5570944, + 1920, + 10624, + 2806144, + 5570944, + 1920, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 384, + 384, + 384, + 320, + 128, + 128, + 2176, + 561280, + 5570944, + 12160, + 2807680, + 5570944, + 1920, + 12160, + 2806144, + 5570944, + 1920, + 1920, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 640, + 640, + 128, + 128, + 0, + 0, + 9, + 10624, + 2806144, + 1114496, + 12160, + 2807680, + 5572480, + 1920, + 12160, + 2807680, + 5570944, + 1920, + 1920, + 1920, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 384, + 384, + 48, + 0, + 11, + 2795904, + 5581184, + 12160, + 2817920, + 8388480, + 2817920, + 2817920, + 2817920, + 8388480, + 2817920, + 2817920, + 2817920, + 2817920, + 2816384, + 2816384, + 2816384, + 8386944, + 2817920, + 2817920, + 2817920, + 2817920, + 2816384, + 2816384, + 8386944, + 2817920, + 2817920, + 2817920, + 2817920, + 2816384, + 2816384, + 2816384, + 8386944, + 2817920, + 2817920, + 2817920, + 2817920, + 10624, + 384, + 448, + 48, + 12, + 5745024, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 6160320, + 20928, + 320, + 128, + 891584, + 8372160, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8380352, + 1282688, + 0, + 0, + 9, + 3911552, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8378304, + 329600, + 48, + 0, + 10, + 448, + 20928, + 8357376, + 20928, + 20928, + 20928, + 8357376, + 20928, + 20928, + 8357376, + 20928, + 20928, + 20928, + 8357376, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 8357376, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 8357376, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 448, + 48, + 12, + 448, + 448, + 5572096, + 448, + 448, + 448, + 5572096, + 448, + 448, + 5572096, + 448, + 448, + 448, + 5572096, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 5572096, + 448, + 448, + 448, + 448, + 448, + 448, + 5572096, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 320 + ] + }, + { + "event_sequence": 1791, + "change_mark": 1791, + "domains": [ + 9, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 10624, + 2805760, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 48, + 0, + 10, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 10624, + 2806144, + 5570944, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 448, + 48, + 12, + 384, + 384, + 10624, + 2806144, + 5570944, + 12160, + 2806144, + 5570944, + 1920, + 10624, + 2806144, + 5570944, + 1920, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 384, + 384, + 384, + 320, + 128, + 128, + 2176, + 561280, + 5570944, + 12160, + 2807680, + 5570944, + 1920, + 12160, + 2806144, + 5570944, + 1920, + 1920, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 640, + 640, + 128, + 128, + 0, + 0, + 9, + 10624, + 2806144, + 1114496, + 12160, + 2807680, + 5572480, + 1920, + 12160, + 2807680, + 5570944, + 1920, + 1920, + 1920, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 384, + 384, + 48, + 0, + 11, + 2785664, + 5570944, + 12160, + 2807680, + 5572480, + 1920, + 12160, + 2807680, + 5572480, + 1920, + 1920, + 1920, + 1920, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 1920, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 1920, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 1920, + 384, + 384, + 448, + 48, + 12, + 5570944, + 12160, + 2807680, + 5572480, + 1920, + 12160, + 2807680, + 5572480, + 1920, + 1920, + 12160, + 12160, + 12160, + 2816384, + 2816384, + 8386944, + 2817920, + 2817920, + 2817920, + 2817920, + 2817920, + 2816384, + 8386944, + 2817920, + 2817920, + 2817920, + 2817920, + 2817920, + 2816384, + 2816384, + 8386944, + 2817920, + 2817920, + 2817920, + 2817920, + 2817920, + 2816384, + 10624, + 384, + 320, + 128, + 563840, + 2801536, + 8388480, + 2817920, + 2817920, + 2817920, + 8388480, + 2817920, + 2817920, + 2817920, + 2817920, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8380352, + 1282688, + 0, + 0, + 9, + 3911552, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8378304, + 329600, + 48, + 0, + 10, + 448, + 20928, + 8357376, + 20928, + 20928, + 20928, + 8357376, + 20928, + 20928, + 8357376, + 20928, + 20928, + 20928, + 8357376, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 8357376, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 8357376, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 448, + 48, + 12, + 448, + 448, + 5572096, + 448, + 448, + 448, + 5572096, + 448, + 448, + 5572096, + 448, + 448, + 448, + 5572096, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 5572096, + 448, + 448, + 448, + 448, + 448, + 448, + 5572096, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 320 + ] + }, + { + "event_sequence": 1919, + "change_mark": 1919, + "domains": [ + 9, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 10624, + 2805760, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 48, + 0, + 10, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 10624, + 2806144, + 5570944, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 448, + 48, + 12, + 384, + 384, + 10624, + 2806144, + 5570944, + 12160, + 2806144, + 5570944, + 1920, + 10624, + 2806144, + 5570944, + 1920, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 384, + 384, + 384, + 320, + 128, + 128, + 2176, + 561280, + 5570944, + 12160, + 2807680, + 5570944, + 1920, + 12160, + 2806144, + 5570944, + 1920, + 1920, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 640, + 640, + 128, + 128, + 0, + 0, + 9, + 10624, + 2806144, + 1114496, + 12160, + 2807680, + 5572480, + 1920, + 12160, + 2807680, + 5570944, + 1920, + 1920, + 1920, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 384, + 384, + 48, + 0, + 11, + 2785664, + 5570944, + 12160, + 2807680, + 5572480, + 1920, + 12160, + 2807680, + 5572480, + 1920, + 1920, + 1920, + 1920, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 1920, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 1920, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 1920, + 384, + 384, + 448, + 48, + 12, + 5570944, + 12160, + 2807680, + 5572480, + 1920, + 12160, + 2807680, + 5572480, + 1920, + 1920, + 1920, + 1920, + 1920, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 1920, + 12160, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 1920, + 1920, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 1920, + 1920, + 384, + 384, + 384, + 320, + 128, + 2688, + 561792, + 5572480, + 1920, + 12160, + 2807680, + 5572480, + 1920, + 1920, + 1920, + 1920, + 1920, + 12160, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 1920, + 12160, + 2817920, + 5581184, + 2817920, + 2817920, + 2817920, + 2817920, + 2817920, + 2817920, + 2816384, + 8386944, + 2817920, + 2817920, + 2817920, + 2817920, + 2817920, + 2817920, + 2808192, + 168064, + 0, + 0, + 9, + 2797440, + 3932032, + 2817920, + 2817920, + 2817920, + 8388480, + 2817920, + 2817920, + 2817920, + 2817920, + 2817920, + 2817920, + 2817920, + 8386944, + 2817920, + 2817920, + 2817920, + 2817920, + 2817920, + 2817920, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8388544, + 8378304, + 329600, + 48, + 0, + 10, + 448, + 20928, + 8357376, + 20928, + 20928, + 20928, + 8357376, + 20928, + 20928, + 8357376, + 20928, + 20928, + 20928, + 8357376, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 8357376, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 8357376, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 448, + 48, + 12, + 448, + 448, + 5572096, + 448, + 448, + 448, + 5572096, + 448, + 448, + 5572096, + 448, + 448, + 448, + 5572096, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 5572096, + 448, + 448, + 448, + 448, + 448, + 448, + 5572096, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 320 + ] + }, + { + "event_sequence": 2047, + "change_mark": 2047, + "domains": [ + 9, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 10624, + 2805760, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 48, + 0, + 10, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 10624, + 2806144, + 5570944, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 448, + 48, + 12, + 384, + 384, + 10624, + 2806144, + 5570944, + 12160, + 2806144, + 5570944, + 1920, + 10624, + 2806144, + 5570944, + 1920, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 384, + 384, + 384, + 320, + 128, + 128, + 2176, + 561280, + 5570944, + 12160, + 2807680, + 5570944, + 1920, + 12160, + 2806144, + 5570944, + 1920, + 1920, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 640, + 640, + 128, + 128, + 0, + 0, + 9, + 10624, + 2806144, + 1114496, + 12160, + 2807680, + 5572480, + 1920, + 12160, + 2807680, + 5570944, + 1920, + 1920, + 1920, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 384, + 384, + 48, + 0, + 10, + 2785664, + 5570944, + 12160, + 2807680, + 5572480, + 1920, + 12160, + 2807680, + 5572480, + 1920, + 1920, + 1920, + 1920, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 1920, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 1920, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 1920, + 384, + 384, + 448, + 48, + 12, + 5570944, + 12160, + 2807680, + 5572480, + 1920, + 12160, + 2807680, + 5572480, + 1920, + 1920, + 1920, + 1920, + 1920, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 1920, + 12160, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 1920, + 1920, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 1920, + 1920, + 384, + 384, + 384, + 320, + 128, + 2688, + 561792, + 5572480, + 1920, + 12160, + 2807680, + 5572480, + 1920, + 1920, + 1920, + 1920, + 1920, + 12160, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 1920, + 12160, + 2807680, + 5570944, + 1920, + 1920, + 1920, + 1920, + 1920, + 12160, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 1920, + 1920, + 1920, + 128, + 128, + 0, + 0, + 9, + 2787200, + 1116032, + 1920, + 12160, + 2807680, + 5572480, + 1920, + 1920, + 1920, + 1920, + 1920, + 12160, + 2807680, + 5570944, + 1920, + 1920, + 1920, + 1920, + 12160, + 2807680, + 5572480, + 1920, + 1920, + 1920, + 1920, + 1920, + 12160, + 2807680, + 5581184, + 12160, + 2817920, + 2817920, + 2817920, + 2817920, + 2817920, + 2817920, + 2806144, + 384, + 48, + 0, + 10, + 384, + 20864, + 2786816, + 20864, + 20864, + 20864, + 2786816, + 20864, + 20864, + 2786816, + 20864, + 20864, + 20864, + 2786816, + 20864, + 20864, + 20864, + 20864, + 20864, + 20864, + 20864, + 2786816, + 20864, + 20864, + 20864, + 20864, + 20864, + 20864, + 2786816, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 20928, + 448, + 48, + 12, + 448, + 448, + 5572096, + 448, + 448, + 448, + 5572096, + 448, + 448, + 5572096, + 448, + 448, + 448, + 5572096, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 5572096, + 448, + 448, + 448, + 448, + 448, + 448, + 5572096, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 320 + ] + }, + { + "event_sequence": 2175, + "change_mark": 2175, + "domains": [ + 9, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 10624, + 2805760, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 48, + 0, + 10, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 10624, + 2806144, + 5570944, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 448, + 48, + 12, + 384, + 384, + 10624, + 2806144, + 5570944, + 12160, + 2806144, + 5570944, + 1920, + 10624, + 2806144, + 5570944, + 1920, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 384, + 384, + 384, + 320, + 128, + 128, + 2176, + 561280, + 5570944, + 12160, + 2807680, + 5570944, + 1920, + 12160, + 2806144, + 5570944, + 1920, + 1920, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 640, + 640, + 128, + 128, + 0, + 0, + 9, + 10624, + 2806144, + 1114496, + 12160, + 2807680, + 5572480, + 1920, + 12160, + 2807680, + 5570944, + 1920, + 1920, + 1920, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 384, + 384, + 48, + 0, + 10, + 2785664, + 5570944, + 12160, + 2807680, + 5572480, + 1920, + 12160, + 2807680, + 5572480, + 1920, + 1920, + 1920, + 1920, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 1920, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 1920, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 1920, + 384, + 384, + 448, + 48, + 12, + 5570944, + 12160, + 2807680, + 5572480, + 1920, + 12160, + 2807680, + 5572480, + 1920, + 1920, + 1920, + 1920, + 1920, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 1920, + 12160, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 1920, + 1920, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 1920, + 1920, + 384, + 384, + 384, + 320, + 128, + 128, + 4224, + 5572096, + 384, + 384, + 20864, + 5572096, + 384, + 384, + 1536, + 384, + 384, + 384, + 2785280, + 384, + 384, + 384, + 384, + 384, + 384, + 20864, + 5570560, + 384, + 384, + 1920, + 1920, + 1920, + 12160, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 1920, + 640, + 640, + 128, + 128, + 0, + 0, + 9, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 1536, + 384, + 384, + 384, + 5570560, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 1920, + 12160, + 2807680, + 5570944, + 1920, + 1920, + 1920, + 1920, + 1920, + 1920, + 1920, + 384, + 384, + 48, + 0, + 10, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 20864, + 20864, + 2786816, + 20864, + 20864, + 20864, + 20864, + 20864, + 20864, + 20864, + 384, + 384, + 448, + 48, + 12, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 448, + 448, + 448, + 5572096, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 448, + 320 + ] + }, + { + "event_sequence": 2303, + "change_mark": 2303, + "domains": [ + 9, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 10624, + 2805760, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 2805760, + 384, + 384, + 48, + 0, + 10, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 10624, + 2806144, + 5570944, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 384, + 384, + 448, + 48, + 12, + 384, + 384, + 10624, + 2806144, + 5570944, + 12160, + 2806144, + 5570944, + 1920, + 10624, + 2806144, + 5570944, + 1920, + 384, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 384, + 384, + 384, + 384, + 10624, + 577920, + 5570944, + 1920, + 384, + 384, + 384, + 320, + 128, + 128, + 2176, + 561280, + 5570944, + 12160, + 2807680, + 5570944, + 1920, + 12160, + 2806144, + 5570944, + 1920, + 1920, + 384, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 384, + 384, + 384, + 10624, + 2806144, + 1114240, + 640, + 640, + 128, + 128, + 0, + 0, + 9, + 384, + 2806144, + 1114496, + 10624, + 20864, + 5572480, + 1920, + 12160, + 2807680, + 5570944, + 1920, + 1920, + 1920, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 384, + 384, + 10624, + 2806144, + 5570944, + 1920, + 1920, + 1920, + 384, + 384, + 48, + 0, + 10, + 384, + 384, + 11776, + 20864, + 384, + 384, + 11776, + 20864, + 384, + 1536, + 384, + 384, + 384, + 384, + 10624, + 20864, + 384, + 384, + 384, + 384, + 1920, + 10240, + 20864, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 20864, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 448, + 48, + 12, + 384, + 384, + 165376, + 384, + 384, + 384, + 2786816, + 384, + 384, + 1536, + 384, + 384, + 384, + 10240, + 20864, + 384, + 384, + 384, + 384, + 384, + 384, + 2785280, + 384, + 384, + 384, + 384, + 384, + 384, + 10240, + 20864, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 320, + 128, + 128, + 128, + 328192, + 384, + 384, + 384, + 5572096, + 384, + 384, + 1536, + 384, + 384, + 384, + 2785280, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 5570560, + 384, + 384, + 384, + 384, + 384, + 384, + 2785280, + 384, + 128, + 128, + 128, + 128, + 128, + 128, + 128, + 128, + 0, + 0, + 9, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 1536, + 384, + 384, + 384, + 5570560, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 5570560, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 48, + 0, + 10, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 448, + 48, + 12, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 320 + ] + }, + { + "event_sequence": 2431, + "change_mark": 2431, + "domains": [ + 9, + 384, + 384, + 384, + 384, + 10624, + 20480, + 384, + 10240, + 20480, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 20480, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 48, + 0, + 10, + 384, + 384, + 384, + 10624, + 20864, + 384, + 10624, + 20864, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 20864, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 20864, + 384, + 384, + 384, + 448, + 48, + 12, + 384, + 384, + 10624, + 20864, + 384, + 10624, + 2806144, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 384, + 10624, + 20864, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 384, + 10240, + 20864, + 384, + 384, + 384, + 384, + 384, + 320, + 128, + 128, + 128, + 557184, + 384, + 10624, + 20864, + 5570944, + 384, + 384, + 2785280, + 384, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 0, + 0, + 9, + 384, + 384, + 1114496, + 10624, + 20864, + 384, + 1920, + 384, + 384, + 5570560, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 384, + 48, + 0, + 10, + 384, + 384, + 11776, + 20864, + 384, + 384, + 11776, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 448, + 48, + 12, + 384, + 384, + 165376, + 384, + 384, + 384, + 2786816, + 384, + 384, + 1536, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 384, + 2785280, + 384, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 320, + 128, + 128, + 128, + 328192, + 384, + 384, + 384, + 5572096, + 384, + 384, + 1536, + 384, + 384, + 384, + 2785280, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 5570560, + 384, + 384, + 384, + 384, + 384, + 384, + 163840, + 128, + 128, + 128, + 128, + 128, + 128, + 128, + 128, + 128, + 0, + 0, + 9, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 1536, + 384, + 384, + 384, + 5570560, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 128, + 128, + 327680, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 48, + 0, + 10, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 448, + 48, + 12, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 320 + ] + }, + { + "event_sequence": 2559, + "change_mark": 2557, + "domains": [ + 1, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 2048, + 4096, + 128, + 128, + 2048, + 4096, + 128, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 48, + 0, + 2, + 128, + 128, + 128, + 2048, + 4096, + 128, + 2048, + 4096, + 128, + 128, + 2048, + 4096, + 128, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 448, + 48, + 4, + 128, + 128, + 2048, + 4096, + 128, + 128, + 557056, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 320, + 128, + 128, + 128, + 557056, + 384, + 384, + 384, + 1114112, + 128, + 128, + 32768, + 128, + 128, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 0, + 0, + 9, + 384, + 384, + 1114112, + 128, + 128, + 128, + 512, + 128, + 128, + 65536, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 384, + 48, + 0, + 10, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 448, + 48, + 12, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 1536, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 384, + 2785280, + 384, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 320, + 128, + 128, + 128, + 512, + 128, + 128, + 128, + 512, + 128, + 128, + 512, + 128, + 128, + 128, + 557056, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 5570560, + 384, + 384, + 384, + 384, + 384, + 384, + 163840, + 128, + 128, + 128, + 128, + 128, + 128, + 128, + 128, + 128, + 0, + 0, + 9, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 1536, + 384, + 384, + 384, + 1114112, + 128, + 128, + 128, + 128, + 128, + 128, + 128, + 512, + 128, + 128, + 128, + 128, + 128, + 128, + 327680, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 48, + 0, + 10, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 448, + 48, + 12, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 320 + ] + }, + { + "event_sequence": 2687, + "change_mark": 2685, + "domains": [ + 1, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 2048, + 4096, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 128, + 16, + 0, + 2, + 128, + 128, + 128, + 2048, + 4096, + 128, + 2048, + 4096, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 16, + 4, + 128, + 128, + 2048, + 4096, + 128, + 128, + 524288, + 256, + 256, + 8192, + 16384, + 256, + 256, + 256, + 256, + 256, + 256, + 8192, + 16384, + 256, + 256, + 256, + 256, + 256, + 8192, + 16384, + 256, + 256, + 256, + 256, + 256, + 256, + 8192, + 16384, + 256, + 256, + 256, + 256, + 256, + 256, + 128, + 128, + 128, + 524288, + 256, + 256, + 256, + 1048576, + 128, + 128, + 32768, + 128, + 128, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 0, + 0, + 8, + 256, + 256, + 1048576, + 128, + 128, + 128, + 512, + 128, + 128, + 65536, + 128, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 128, + 16, + 0, + 8, + 256, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 48, + 12, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 1536, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 384, + 2785280, + 384, + 384, + 384, + 384, + 384, + 384, + 10240, + 20480, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 320, + 128, + 128, + 128, + 512, + 128, + 128, + 128, + 512, + 128, + 128, + 512, + 128, + 128, + 128, + 557056, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 5570560, + 384, + 384, + 384, + 384, + 384, + 384, + 163840, + 128, + 128, + 128, + 128, + 128, + 128, + 128, + 128, + 128, + 0, + 0, + 9, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 1536, + 384, + 384, + 384, + 1114112, + 128, + 128, + 128, + 128, + 128, + 128, + 128, + 512, + 128, + 128, + 128, + 128, + 128, + 128, + 327680, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 48, + 0, + 10, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 448, + 48, + 12, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 320 + ] + }, + { + "event_sequence": 2815, + "change_mark": 2813, + "domains": [ + 1, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 2048, + 4096, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 128, + 16, + 0, + 2, + 128, + 128, + 128, + 2048, + 4096, + 128, + 2048, + 4096, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 16, + 4, + 128, + 128, + 2048, + 4096, + 128, + 128, + 524288, + 256, + 256, + 8192, + 16384, + 256, + 256, + 256, + 256, + 256, + 256, + 8192, + 16384, + 256, + 256, + 256, + 256, + 256, + 8192, + 16384, + 256, + 256, + 256, + 256, + 256, + 256, + 8192, + 16384, + 256, + 256, + 256, + 256, + 256, + 256, + 128, + 128, + 128, + 524288, + 256, + 256, + 256, + 1048576, + 128, + 128, + 32768, + 128, + 128, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 0, + 0, + 8, + 256, + 256, + 1048576, + 128, + 128, + 128, + 512, + 128, + 128, + 65536, + 128, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 128, + 16, + 0, + 8, + 256, + 256, + 1024, + 256, + 256, + 256, + 1024, + 256, + 256, + 1024, + 256, + 256, + 256, + 256, + 8192, + 16384, + 256, + 256, + 256, + 256, + 256, + 8192, + 16384, + 256, + 256, + 256, + 256, + 256, + 256, + 8192, + 16384, + 256, + 256, + 256, + 256, + 256, + 256, + 256, + 256, + 32, + 8, + 256, + 256, + 1024, + 256, + 256, + 256, + 1024, + 256, + 256, + 1024, + 256, + 256, + 256, + 8192, + 16384, + 256, + 256, + 256, + 256, + 256, + 256, + 2228224, + 128, + 128, + 128, + 128, + 128, + 128, + 2048, + 4096, + 128, + 128, + 128, + 128, + 128, + 128, + 128, + 128, + 128, + 64, + 128, + 128, + 128, + 512, + 128, + 128, + 128, + 512, + 128, + 128, + 512, + 128, + 128, + 128, + 557056, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 4456448, + 256, + 256, + 256, + 256, + 256, + 256, + 131072, + 128, + 128, + 128, + 128, + 128, + 128, + 128, + 128, + 128, + 0, + 0, + 9, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 1536, + 384, + 384, + 384, + 1114112, + 128, + 128, + 128, + 128, + 128, + 128, + 128, + 512, + 128, + 128, + 128, + 128, + 128, + 128, + 262144, + 256, + 256, + 256, + 256, + 256, + 256, + 256, + 256, + 256, + 32, + 0, + 10, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 1536, + 384, + 384, + 128, + 128, + 128, + 128, + 512, + 128, + 128, + 128, + 128, + 128, + 128, + 128, + 128, + 128, + 64, + 32, + 12, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 1536, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 384, + 384, + 1536, + 384, + 384, + 384, + 384, + 384, + 128, + 512, + 128, + 128, + 128, + 128, + 128, + 128, + 128, + 128, + 128, + 128, + 64 + ] + } + ] +} diff --git a/tests/fixtures/pipeline_sat_z3/boolean-z3.json b/tests/fixtures/pipeline_sat_z3/boolean-z3.json new file mode 100644 index 0000000..57d3133 --- /dev/null +++ b/tests/fixtures/pipeline_sat_z3/boolean-z3.json @@ -0,0 +1,52 @@ +{ + "schema": "z3-encoding-summary-v1", + "semantics": "encoding-order", + "engine": "boolean-z3", + "source_formula_sha256": "3caaa6b29ac988fb4f51cc7071202d83ea1591ba6170e683b6da449cb3641542", + "region_sha256": null, + "z3": { + "version": "5.1.0", + "parameters": { + "random_seed": 0, + "threads": 1 + } + }, + "status": "sat", + "encoding": { + "order": [ + "variables:ascending-id", + "clauses:source-order", + "clause-positions:left-to-right" + ], + "variable_count": 3, + "width": 0, + "height": 0, + "active_cell_count": 0, + "edge_term_count": 0, + "shared_internal_edge_count": 0, + "unique_tile_tuple_count": 0, + "assertion_count": 3 + }, + "model": { + "assignment": [ + false, + true, + false + ], + "cells": null + }, + "statistics": [ + { + "name": "variables", + "value": 3 + }, + { + "name": "assertions", + "value": 3 + }, + { + "name": "model-entries", + "value": 3 + } + ] +} diff --git a/tests/fixtures/pipeline_sat_z3/wang-z3.json b/tests/fixtures/pipeline_sat_z3/wang-z3.json new file mode 100644 index 0000000..740ae8e --- /dev/null +++ b/tests/fixtures/pipeline_sat_z3/wang-z3.json @@ -0,0 +1,510 @@ +{ + "schema": "z3-encoding-summary-v1", + "semantics": "encoding-order", + "engine": "wang-z3", + "source_formula_sha256": "3caaa6b29ac988fb4f51cc7071202d83ea1591ba6170e683b6da449cb3641542", + "region_sha256": "aad4dc7dcb46ed070995bf975248a7f2f0bf27d69db3eb653208d08c5826199a", + "z3": { + "version": "5.1.0", + "parameters": { + "random_seed": 0, + "threads": 1 + } + }, + "status": "sat", + "encoding": { + "order": [ + "cells:row-major", + "directions:N,E,S,W", + "tile-tuples:first-positional-id", + "cell-relation-before-boundary", + "boundary-directions:N,E,S,W" + ], + "variable_count": 3, + "width": 41, + "height": 11, + "active_cell_count": 444, + "edge_term_count": 944, + "shared_internal_edge_count": 832, + "unique_tile_tuple_count": 23, + "assertion_count": 556 + }, + "model": { + "assignment": null, + "cells": [ + 0, + 7, + 7, + 7, + 7, + 11, + 12, + 7, + 11, + 12, + 7, + 7, + 11, + 12, + 7, + 7, + 7, + 7, + 7, + 7, + 11, + 12, + 7, + 7, + 7, + 7, + 7, + 11, + 12, + 7, + 7, + 7, + 7, + 7, + 7, + 11, + 12, + 7, + 7, + 4, + null, + 1, + 7, + 7, + 7, + 11, + 12, + 7, + 11, + 12, + 7, + 7, + 11, + 12, + 7, + 7, + 7, + 7, + 7, + 7, + 11, + 12, + 7, + 7, + 7, + 7, + 7, + 11, + 12, + 7, + 7, + 7, + 7, + 7, + 7, + 11, + 12, + 7, + 7, + 7, + 7, + 4, + 2, + 7, + 7, + 11, + 12, + 7, + 7, + 19, + 8, + 8, + 13, + 14, + 8, + 8, + 8, + 8, + 8, + 8, + 13, + 14, + 8, + 8, + 8, + 8, + 8, + 13, + 14, + 8, + 8, + 8, + 8, + 8, + 8, + 13, + 14, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 19, + 8, + 8, + 8, + 20, + 7, + 7, + 15, + 7, + 7, + 7, + 7, + 7, + 7, + 11, + 12, + 7, + 7, + 7, + 7, + 7, + 11, + 12, + 7, + 7, + 7, + 7, + 7, + 7, + 11, + 12, + 7, + 7, + 7, + 7, + 7, + null, + null, + 3, + 8, + 8, + 20, + 7, + 7, + 7, + 9, + 7, + 7, + 16, + 7, + 7, + 7, + 7, + 7, + 11, + 12, + 7, + 7, + 7, + 7, + 7, + 11, + 12, + 7, + 7, + 7, + 7, + 7, + 7, + 11, + 12, + 7, + 7, + 7, + 7, + 7, + 7, + 4, + null, + 3, + 8, + 8, + 10, + 8, + 8, + 8, + 10, + 8, + 8, + 10, + 8, + 8, + 8, + 8, + 13, + 14, + 8, + 8, + 8, + 8, + 8, + 13, + 14, + 8, + 8, + 8, + 8, + 8, + 8, + 13, + 14, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 5, + 3, + 8, + 8, + 10, + 8, + 8, + 8, + 10, + 8, + 8, + 10, + 8, + 8, + 8, + 13, + 14, + 8, + 8, + 8, + 8, + 8, + 8, + 17, + 7, + 7, + 7, + 7, + 7, + 7, + 11, + 12, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 6, + 7, + 7, + 7, + 9, + 7, + 7, + 7, + 9, + 7, + 7, + 9, + 7, + 7, + 7, + 15, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 18, + 8, + 8, + 8, + 8, + 8, + 8, + 17, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + null, + null, + 0, + 7, + 7, + 9, + 7, + 7, + 7, + 9, + 7, + 7, + 9, + 7, + 7, + 7, + 16, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 18, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 5, + null, + 1, + 7, + 7, + 9, + 7, + 7, + 7, + 9, + 7, + 7, + 9, + 7, + 7, + 7, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 6, + 5, + 2, + 7, + 7, + 9, + 7, + 7, + 7, + 9, + 7, + 7, + 9, + 7, + 7, + 7, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 6 + ] + }, + "statistics": [ + { + "name": "active-cells", + "value": 444 + }, + { + "name": "edge-terms", + "value": 944 + }, + { + "name": "shared-internal-edges", + "value": 832 + }, + { + "name": "assertions", + "value": 556 + }, + { + "name": "model-entries", + "value": 451 + } + ] +} diff --git a/tests/python/test_native_solver_trace.py b/tests/python/test_native_solver_trace.py new file mode 100644 index 0000000..1828ef8 --- /dev/null +++ b/tests/python/test_native_solver_trace.py @@ -0,0 +1,109 @@ +import os +import subprocess +import sys +import unittest +from pathlib import Path + +from model.solver_trace import ( + SOLVER_OPTIMIZED, + SOLVER_REFERENCE, + TRACE_DECISION, + TRACE_DOMAIN_REDUCTION, + TRACE_PROPAGATION, + TRACE_RESULT, + TRACE_ROOT, + replay_solver_trace, +) +from model.tiling import TilingSolveStatus +from native.trace_pipeline import solve_native_pipeline_trace + + +INSTANCE = Path(__file__).resolve().parents[1] / "instances/pipeline_sat.cm13" +ROOT = INSTANCE.parents[2] + + +class NativeSolverTraceTests(unittest.TestCase): + def test_reference_and_optimized_runs_are_deterministic_and_complete(self) -> None: + for optimized, expected_solver in ( + (False, SOLVER_REFERENCE), + (True, SOLVER_OPTIMIZED), + ): + with self.subTest(solver=expected_solver): + first = solve_native_pipeline_trace(INSTANCE, optimized=optimized) + second = solve_native_pipeline_trace(INSTANCE, optimized=optimized) + formula, region, explanation, result, trace = first + + self.assertEqual(first, second) + self.assertEqual(formula.variable_count, 3) + self.assertEqual( + (explanation.width, explanation.height), + (region.width, region.height), + ) + self.assertEqual(result.status, TilingSolveStatus.SAT) + self.assertEqual(trace.solver, expected_solver) + self.assertFalse(trace.truncated) + self.assertFalse(trace.checkpoints_truncated) + self.assertGreater(len(trace.checkpoints), 0) + self.assertEqual(trace.events[0].kind, TRACE_ROOT) + self.assertEqual(trace.events[-1].kind, TRACE_RESULT) + kinds = {event.kind for event in trace.events} + self.assertTrue( + { + TRACE_PROPAGATION, + TRACE_DECISION, + TRACE_DOMAIN_REDUCTION, + }.issubset(kinds) + ) + self.assertIsNotNone(result.tiling) + expected_domains = tuple( + 0 if tile_id is None else 1 << tile_id + for tile_id in result.tiling or () + ) + self.assertEqual(replay_solver_trace(trace)[-1], expected_domains) + + def test_pipeline_import_is_z3_free_in_a_fresh_process(self) -> None: + completed = subprocess.run( + [ + sys.executable, + "-c", + ( + "import sys; import native.trace_pipeline; " + "assert 'z3' not in sys.modules" + ), + ], + cwd=ROOT, + env={**os.environ, "PYTHONPATH": "python"}, + check=False, + capture_output=True, + text=True, + ) + self.assertEqual(completed.returncode, 0, completed.stderr) + + def test_capacity_two_retains_only_root_and_terminal_result(self) -> None: + *_, trace = solve_native_pipeline_trace( + INSTANCE, + event_capacity=2, + checkpoint_interval=0, + checkpoint_capacity=0, + ) + + self.assertTrue(trace.truncated) + self.assertEqual( + tuple(event.kind for event in trace.events), + (TRACE_ROOT, TRACE_RESULT), + ) + self.assertGreater(trace.events[-1].sequence, 1) + + def test_rejects_invalid_trace_capacity_before_native_call(self) -> None: + with self.assertRaisesRegex(ValueError, "at least two"): + solve_native_pipeline_trace(INSTANCE, event_capacity=1) + with self.assertRaisesRegex(ValueError, "jointly set"): + solve_native_pipeline_trace( + INSTANCE, + checkpoint_interval=2, + checkpoint_capacity=0, + ) + + +if __name__ == "__main__": + unittest.main() diff --git a/tests/python/test_solver_trace_model.py b/tests/python/test_solver_trace_model.py new file mode 100644 index 0000000..14bedad --- /dev/null +++ b/tests/python/test_solver_trace_model.py @@ -0,0 +1,155 @@ +from dataclasses import FrozenInstanceError, replace +import unittest + +from model.solver_trace import ( + DOMAIN_ALL, + SOLVER_REFERENCE, + TRACE_DECISION, + TRACE_DOMAIN_REDUCTION, + TRACE_INITIAL, + TRACE_PROPAGATION, + TRACE_REASON_DECISION, + TRACE_RESULT, + TRACE_ROOT, + TRACE_SEARCH, + SolverTrace, + SolverTraceCheckpoint, + SolverTraceEvent, + replay_solver_trace, +) +from model.tiling import TilingSolveStatus + + +def _trace() -> SolverTrace: + events = ( + SolverTraceEvent( + 0, + TRACE_ROOT, + TRACE_INITIAL, + None, + 0, + None, + 0, + None, + None, + None, + ), + SolverTraceEvent( + 1, + TRACE_DECISION, + TRACE_SEARCH, + None, + 1, + 0, + 0, + DOMAIN_ALL, + 1, + None, + ), + SolverTraceEvent( + 2, + TRACE_DOMAIN_REDUCTION, + TRACE_SEARCH, + TRACE_REASON_DECISION, + 1, + 0, + 1, + DOMAIN_ALL, + 1, + None, + ), + SolverTraceEvent( + 3, + TRACE_PROPAGATION, + TRACE_SEARCH, + None, + 1, + 0, + 1, + None, + None, + None, + ), + SolverTraceEvent( + 4, + TRACE_RESULT, + None, + None, + 1, + None, + 1, + None, + None, + TilingSolveStatus.SAT, + ), + ) + return SolverTrace( + solver=SOLVER_REFERENCE, + status=TilingSolveStatus.SAT, + width=1, + height=1, + initial_domains=(DOMAIN_ALL,), + events=events, + observed_event_count=5, + event_capacity=8, + truncated=False, + checkpoints=( + SolverTraceCheckpoint(1, 0, (DOMAIN_ALL,)), + SolverTraceCheckpoint(3, 1, (1,)), + ), + checkpoint_interval=2, + checkpoint_capacity=2, + checkpoints_truncated=False, + ) + + +class SolverTraceModelTests(unittest.TestCase): + def test_is_immutable_and_replays_ordered_domain_deltas(self) -> None: + trace = _trace() + + self.assertEqual(replay_solver_trace(trace)[-1], (1,)) + with self.assertRaises(FrozenInstanceError): + trace.width = 2 # type: ignore[misc] + + def test_rejects_delta_that_does_not_match_replay_state(self) -> None: + trace = _trace() + invalid = replace(trace.events[2], old_domain=3) + + with self.assertRaisesRegex(ValueError, "old_domain"): + replace(trace, events=(*trace.events[:2], invalid, *trace.events[3:])) + + def test_rejects_checkpoint_that_reconstructs_another_state(self) -> None: + trace = _trace() + invalid = replace(trace.checkpoints[0], domains=(2,)) + + with self.assertRaisesRegex(ValueError, "checkpoint domains"): + replace(trace, checkpoints=(invalid, trace.checkpoints[1])) + + def test_accepts_a_bounded_prefix_with_a_terminal_sequence_gap(self) -> None: + trace = _trace() + terminal = replace(trace.events[-1], sequence=99, change_mark=0) + bounded = replace( + trace, + events=(trace.events[0], terminal), + observed_event_count=100, + event_capacity=2, + truncated=True, + checkpoints=(), + checkpoint_interval=0, + checkpoint_capacity=0, + ) + + self.assertEqual(replay_solver_trace(bounded)[-1], (DOMAIN_ALL,)) + + def test_rejects_false_truncation_and_nonsemantic_event_fields(self) -> None: + trace = _trace() + with self.assertRaisesRegex(ValueError, "event gap"): + replace(trace, truncated=True) + + invalid = replace(trace.events[3], reason=TRACE_REASON_DECISION) + with self.assertRaisesRegex(ValueError, "only domain reduction"): + replace(trace, events=(*trace.events[:3], invalid, trace.events[4])) + + +if __name__ == "__main__": + unittest.main() diff --git a/tests/python/test_solver_trace_snapshot.py b/tests/python/test_solver_trace_snapshot.py new file mode 100644 index 0000000..48a75d6 --- /dev/null +++ b/tests/python/test_solver_trace_snapshot.py @@ -0,0 +1,163 @@ +import copy +import hashlib +import json +from pathlib import Path +import tempfile +import unittest + +from formats.pipeline_snapshot import PipelineSnapshotError +from formats.solver_trace_snapshot import ( + TRACE_MANIFEST_SCHEMA, + TRACE_SCHEMA, + build_solver_trace_snapshot, + dump_solver_trace_bundle, + load_solver_trace_bundle, + validate_solver_trace_manifest, + validate_solver_trace_snapshot, +) +from native.trace_pipeline import solve_native_pipeline_trace + + +ROOT = Path(__file__).resolve().parents[2] +INSTANCE = ROOT / "tests/instances/pipeline_sat.cm13" +COMMITTED = ROOT / "tests/fixtures/pipeline_sat_solver_trace" + + +class SolverTraceSnapshotTests(unittest.TestCase): + @classmethod + def setUpClass(cls) -> None: + cls.values = solve_native_pipeline_trace( + INSTANCE, + event_capacity=4096, + checkpoint_interval=128, + checkpoint_capacity=32, + ) + + def test_builds_closed_replayable_trace(self) -> None: + formula, region, explanation, result, trace = self.values + del formula, explanation + document = build_solver_trace_snapshot( + trace, + source_formula_sha256="1" * 64, + region_sha256="2" * 64, + solution_sha256="3" * 64, + ) + + validate_solver_trace_snapshot(document) + self.assertEqual(document["schema"], TRACE_SCHEMA) + self.assertEqual(document["semantics"], "observed") + self.assertEqual(document["solver"], "reference") + self.assertEqual(document["layout"]["width"], region.width) + self.assertEqual(document["status"], result.status.value) + + corrupted = copy.deepcopy(document) + event = next( + item + for item in corrupted["events"] + if item["kind"] == "domain_reduction" + ) + event["old_domain"] ^= 1 + with self.assertRaisesRegex(PipelineSnapshotError, "old_domain"): + validate_solver_trace_snapshot(corrupted) + + def test_dump_is_deterministic_hash_bound_and_cross_checked(self) -> None: + generated: list[dict[str, bytes]] = [] + for _ in range(2): + with tempfile.TemporaryDirectory() as directory: + manifest_path = dump_solver_trace_bundle( + Path(directory) / "manifest.json", + INSTANCE, + *self.values, + ) + manifest, documents = load_solver_trace_bundle(manifest_path) + validate_solver_trace_manifest(manifest) + generated.append( + { + path.name: path.read_bytes() + for path in manifest_path.parent.iterdir() + } + ) + self.assertEqual(manifest["schema"], TRACE_MANIFEST_SCHEMA) + self.assertEqual(set(documents), { + "formula", + "tileset", + "region", + "reduction", + "trace", + "solution", + }) + for reference in manifest["artifacts"].values(): + if reference is None: + continue + encoded = (manifest_path.parent / reference["path"]).read_bytes() + self.assertEqual( + hashlib.sha256(encoded).hexdigest(), + reference["sha256"], + ) + self.assertEqual(generated[0], generated[1]) + committed = { + path.name: path.read_bytes() for path in COMMITTED.iterdir() + } + self.assertEqual(generated[0], committed) + + def test_loader_rejects_a_changed_trace_before_replay(self) -> None: + with tempfile.TemporaryDirectory() as directory: + manifest_path = dump_solver_trace_bundle( + Path(directory) / "manifest.json", + INSTANCE, + *self.values, + ) + manifest = json.loads(manifest_path.read_text(encoding="utf-8")) + trace_path = manifest_path.parent / manifest["artifacts"]["trace"]["path"] + trace_path.write_bytes(trace_path.read_bytes() + b" ") + with self.assertRaisesRegex(PipelineSnapshotError, "sha256"): + load_solver_trace_bundle(manifest_path) + + def test_loader_rejects_trace_state_on_an_inactive_region_cell(self) -> None: + with tempfile.TemporaryDirectory() as directory: + manifest_path = dump_solver_trace_bundle( + Path(directory) / "manifest.json", + INSTANCE, + *self.values, + ) + manifest = json.loads(manifest_path.read_text(encoding="utf-8")) + region_path = ( + manifest_path.parent / manifest["artifacts"]["region"]["path"] + ) + trace_path = ( + manifest_path.parent / manifest["artifacts"]["trace"]["path"] + ) + region = json.loads(region_path.read_text(encoding="utf-8")) + trace = json.loads(trace_path.read_text(encoding="utf-8")) + inactive = region["active"].index(False) + trace["initial_domains"][inactive] = 1 + for checkpoint in trace["checkpoints"]: + checkpoint["domains"][inactive] = 1 + encoded = (json.dumps(trace, indent=2) + "\n").encode("utf-8") + trace_path.write_bytes(encoded) + manifest["artifacts"]["trace"]["sha256"] = hashlib.sha256( + encoded + ).hexdigest() + manifest_path.write_text(json.dumps(manifest), encoding="utf-8") + + with self.assertRaisesRegex(PipelineSnapshotError, "inactive cell"): + load_solver_trace_bundle(manifest_path) + + def test_publishes_closed_draft_2020_12_schemas(self) -> None: + for contract in (TRACE_SCHEMA, TRACE_MANIFEST_SCHEMA): + with self.subTest(contract=contract): + schema = json.loads( + (ROOT / "schemas" / f"{contract}.schema.json").read_text( + encoding="utf-8" + ) + ) + self.assertEqual( + schema["$schema"], + "https://json-schema.org/draft/2020-12/schema", + ) + self.assertEqual(schema["properties"]["schema"]["const"], contract) + self.assertFalse(schema["additionalProperties"]) + + +if __name__ == "__main__": + unittest.main() diff --git a/tests/python/test_z3_encoding_summary.py b/tests/python/test_z3_encoding_summary.py new file mode 100644 index 0000000..1fec1f5 --- /dev/null +++ b/tests/python/test_z3_encoding_summary.py @@ -0,0 +1,124 @@ +import copy +import hashlib +import json +from pathlib import Path +import unittest + +from formats.pipeline_snapshot import ( + PipelineSnapshotError, + _encode_document, + build_region_snapshot, +) +from formats.z3_encoding_summary import ( + SCHEMA_NAME, + build_boolean_z3_summary, + build_wang_z3_summary, + validate_z3_encoding_summary, +) +from native.reduction_adapter import load_formula_and_region + + +ROOT = Path(__file__).resolve().parents[2] +INSTANCE = ROOT / "tests/instances/pipeline_sat.cm13" +FIXTURES = ROOT / "tests/fixtures/pipeline_sat_z3" + + +class Z3EncodingSummaryTests(unittest.TestCase): + @classmethod + def setUpClass(cls) -> None: + cls.formula, cls.region = load_formula_and_region(INSTANCE) + cls.source_digest = hashlib.sha256(INSTANCE.read_bytes()).hexdigest() + region = build_region_snapshot( + cls.region, + source_formula_sha256=cls.source_digest, + origin=(0, 0), + ) + cls.region_digest = hashlib.sha256(_encode_document(region)).hexdigest() + + def _documents(self) -> dict[str, dict[str, object]]: + return { + "boolean-z3.json": build_boolean_z3_summary( + self.formula, + source_formula_sha256=self.source_digest, + ), + "wang-z3.json": build_wang_z3_summary( + self.formula, + self.region, + source_formula_sha256=self.source_digest, + region_sha256=self.region_digest, + ), + } + + def test_summaries_are_deterministic_and_match_committed_examples(self) -> None: + first = self._documents() + second = self._documents() + self.assertEqual(first, second) + for name, document in first.items(): + with self.subTest(name=name): + validate_z3_encoding_summary(document) + committed = json.loads((FIXTURES / name).read_text(encoding="utf-8")) + self.assertEqual(document, committed) + self.assertEqual(document["z3"]["parameters"], { + "random_seed": 0, + "threads": 1, + }) + self.assertEqual(document["status"], "sat") + + def test_boolean_and_wang_orders_are_explicit_and_distinct(self) -> None: + documents = self._documents() + boolean = documents["boolean-z3.json"] + wang = documents["wang-z3.json"] + + self.assertEqual(boolean["semantics"], "encoding-order") + self.assertEqual(boolean["encoding"]["assertion_count"], 3) + self.assertEqual(boolean["model"]["assignment"], [False, True, False]) + self.assertEqual(wang["encoding"]["active_cell_count"], 444) + self.assertEqual(wang["encoding"]["edge_term_count"], 944) + self.assertEqual(wang["encoding"]["shared_internal_edge_count"], 832) + self.assertEqual(wang["encoding"]["assertion_count"], 556) + self.assertEqual(len(wang["model"]["cells"]), 451) + + def test_rejects_cross_engine_identity_and_unknown_fields(self) -> None: + boolean = self._documents()["boolean-z3.json"] + wrong_region = copy.deepcopy(boolean) + wrong_region["region_sha256"] = "0" * 64 + with self.assertRaisesRegex(PipelineSnapshotError, "region_sha256"): + validate_z3_encoding_summary(wrong_region) + + extra = copy.deepcopy(boolean) + extra["debug_trace"] = [] + with self.assertRaisesRegex(PipelineSnapshotError, "unknown fields"): + validate_z3_encoding_summary(extra) + + def test_rejects_inconsistent_wang_model_and_statistics(self) -> None: + wang = self._documents()["wang-z3.json"] + invalid_tile = copy.deepcopy(wang) + cells = invalid_tile["model"]["cells"] + active_index = next( + index for index, tile_id in enumerate(cells) if tile_id is not None + ) + cells[active_index] = invalid_tile["encoding"]["unique_tile_tuple_count"] + with self.assertRaisesRegex(PipelineSnapshotError, "canonical tile table"): + validate_z3_encoding_summary(invalid_tile) + + inconsistent_statistics = copy.deepcopy(wang) + inconsistent_statistics["statistics"][1]["value"] += 1 + with self.assertRaisesRegex(PipelineSnapshotError, "project-owned counters"): + validate_z3_encoding_summary(inconsistent_statistics) + + def test_publishes_closed_draft_2020_12_schema(self) -> None: + schema = json.loads( + (ROOT / "schemas/z3-encoding-summary-v1.schema.json").read_text( + encoding="utf-8" + ) + ) + self.assertEqual( + schema["$schema"], + "https://json-schema.org/draft/2020-12/schema", + ) + self.assertEqual(schema["properties"]["schema"]["const"], SCHEMA_NAME) + self.assertFalse(schema["additionalProperties"]) + + +if __name__ == "__main__": + unittest.main() diff --git a/tools/check_pages.py b/tools/check_pages.py index 61115f3..20053ed 100644 --- a/tools/check_pages.py +++ b/tools/check_pages.py @@ -3,6 +3,7 @@ from __future__ import annotations +import hashlib import re import sys from datetime import date @@ -41,6 +42,8 @@ ) MARKDOWN_SOURCE_LINK = re.compile(r"\]\([^)]*\.md(?:[#?][^)]*)?\)") HISTORICAL_PDF = "Wang23_C_OpenMP_Architecture_Spec_Merged.pdf" +FIGURE = re.compile(r"]*>.*?", re.IGNORECASE | re.DOTALL) +TAG = re.compile(r"<(?:img|source)\b[^>]*>", re.IGNORECASE | re.DOTALL) def fail(errors: list[str], path: Path, message: str) -> None: @@ -198,11 +201,58 @@ def check_site_structure(errors: list[str]) -> None: fail(errors, DOCS / "assets/css/site.css", "unbalanced braces") +def check_animated_assets(errors: list[str]) -> None: + """Require accessible static fallbacks and one stored copy per GIF.""" + for path in public_documents(): + text = path.read_text(encoding="utf-8") + figures = FIGURE.findall(text) + covered_gifs = sum(figure.lower().count(".gif") for figure in figures) + if covered_gifs != text.lower().count(".gif"): + fail(errors, path, "animated GIF must be contained in a figure") + + for figure in figures: + if ".gif" not in figure.lower(): + continue + tags = TAG.findall(figure) + image_tags = [tag for tag in tags if tag.lower().startswith("]*>\s*\S.*?", + figure, + re.IGNORECASE | re.DOTALL, + ): + fail(errors, path, "animated GIF requires a nonempty figcaption") + + gif_hashes: dict[bytes, Path] = {} + for path in sorted((DOCS / "assets/images").rglob("*.gif")): + digest = hashlib.sha256(path.read_bytes()).digest() + if digest in gif_hashes: + fail( + errors, + path, + f"duplicates animated asset {gif_hashes[digest].relative_to(ROOT)}", + ) + gif_hashes[digest] = path + + def main() -> int: errors: list[str] = [] permalinks, document_count = check_catalog(errors) check_liquid_links(permalinks, errors) check_site_structure(errors) + check_animated_assets(errors) if errors: for error in errors: diff --git a/tools/export_solver_trace.py b/tools/export_solver_trace.py new file mode 100644 index 0000000..d6140b9 --- /dev/null +++ b/tools/export_solver_trace.py @@ -0,0 +1,68 @@ +#!/usr/bin/env python3 +"""Export one bounded observed native solve as a hash-bound v3 bundle.""" + +from __future__ import annotations + +import argparse +from pathlib import Path +import sys + + +ROOT = Path(__file__).resolve().parents[1] +sys.path.insert(0, str(ROOT / "python")) + +from formats.solver_trace_snapshot import ( # noqa: E402 + dump_solver_trace_bundle, + load_solver_trace_bundle, +) +from native.trace_pipeline import solve_native_pipeline_trace # noqa: E402 + + +def _parser() -> argparse.ArgumentParser: + parser = argparse.ArgumentParser( + description=( + "parse and reduce a CM13 formula, run one native solver, and " + "export its bounded semantic event trace" + ) + ) + parser.add_argument("source", type=Path, help="input .cm13 formula") + parser.add_argument("manifest", type=Path, help="output v3 manifest JSON") + parser.add_argument( + "--solver", + choices=("reference", "optimized"), + default="reference", + ) + parser.add_argument("--event-capacity", type=int, default=20_000) + parser.add_argument("--checkpoint-interval", type=int, default=64) + parser.add_argument("--checkpoint-capacity", type=int, default=64) + parser.add_argument("--origin-x", type=int, default=0) + parser.add_argument("--origin-y", type=int, default=0) + return parser + + +def main(arguments: list[str] | None = None) -> int: + args = _parser().parse_args(arguments) + args.manifest.parent.mkdir(parents=True, exist_ok=True) + values = solve_native_pipeline_trace( + args.source, + optimized=args.solver == "optimized", + event_capacity=args.event_capacity, + checkpoint_interval=args.checkpoint_interval, + checkpoint_capacity=args.checkpoint_capacity, + ) + manifest_path = dump_solver_trace_bundle( + args.manifest, + args.source, + *values, + origin=(args.origin_x, args.origin_y), + ) + manifest, _ = load_solver_trace_bundle(manifest_path) + print(f"manifest={manifest_path}") + for name, reference in manifest["artifacts"].items(): + if reference is not None: + print(f"{name}={manifest_path.parent / reference['path']}") + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/tools/export_z3_encoding_summaries.py b/tools/export_z3_encoding_summaries.py new file mode 100644 index 0000000..b1f9ee2 --- /dev/null +++ b/tools/export_z3_encoding_summaries.py @@ -0,0 +1,72 @@ +#!/usr/bin/env python3 +"""Export explicit Boolean and Wang Z3 encoding summaries for one formula.""" + +from __future__ import annotations + +import argparse +import hashlib +from pathlib import Path +import sys + + +ROOT = Path(__file__).resolve().parents[1] +sys.path.insert(0, str(ROOT / "python")) + +from formats.pipeline_snapshot import ( # noqa: E402 + _encode_document, + _write_atomic, + build_region_snapshot, +) +from formats.z3_encoding_summary import ( # noqa: E402 + build_boolean_z3_summary, + build_wang_z3_summary, + validate_z3_encoding_summary, +) +from native.reduction_adapter import load_formula_and_region # noqa: E402 + + +def _parser() -> argparse.ArgumentParser: + parser = argparse.ArgumentParser( + description=( + "run the fixed-parameter Boolean and Wang Z3 oracles and export " + "their project-owned encoding order, result, model, and stable stats" + ) + ) + parser.add_argument("source", type=Path) + parser.add_argument("output_directory", type=Path) + return parser + + +def main(arguments: list[str] | None = None) -> int: + args = _parser().parse_args(arguments) + args.output_directory.mkdir(parents=True, exist_ok=True) + formula, region = load_formula_and_region(args.source) + source_digest = hashlib.sha256(args.source.read_bytes()).hexdigest() + region_document = build_region_snapshot( + region, + source_formula_sha256=source_digest, + origin=(0, 0), + ) + region_digest = hashlib.sha256(_encode_document(region_document)).hexdigest() + documents = { + "boolean-z3.json": build_boolean_z3_summary( + formula, + source_formula_sha256=source_digest, + ), + "wang-z3.json": build_wang_z3_summary( + formula, + region, + source_formula_sha256=source_digest, + region_sha256=region_digest, + ), + } + for name, document in documents.items(): + validate_z3_encoding_summary(document) + destination = args.output_directory / name + _write_atomic(destination, _encode_document(document)) + print(f"summary={destination}") + return 0 + + +if __name__ == "__main__": + raise SystemExit(main())