nmarshall commited on
Commit
ad83778
·
1 Parent(s): 8765f5d

gameplay: compose movement setup with callback feedback

Browse files
crates/urt-gameplay/src/bin/urt-client-move-context.rs CHANGED
@@ -58,6 +58,7 @@ fn main() {
58
  }
59
  "mask" => println!("{}", mask(&w)),
60
  "context" => println!("{}", context(&w)),
 
61
  _ => panic!("unknown contract"),
62
  }
63
  }
@@ -134,3 +135,88 @@ fn context(w: &[u32]) -> String {
134
  list(&saved)
135
  )
136
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
58
  }
59
  "mask" => println!("{}", mask(&w)),
60
  "context" => println!("{}", context(&w)),
61
+ "assembly" => println!("{}", assembly(&w)),
62
  _ => panic!("unknown contract"),
63
  }
64
  }
 
135
  list(&saved)
136
  )
137
  }
138
+
139
+ fn assembly(w: &[u32]) -> String {
140
+ assert_eq!(w.len(), 36);
141
+ let entity = MoveEntityBox {
142
+ pm_type: w[6],
143
+ health: w[12],
144
+ origin: [0.; 3],
145
+ mins: [-1.; 3],
146
+ maxs: [1.; 3],
147
+ };
148
+ let other = MoveEntityBox {
149
+ pm_type: w[10],
150
+ health: w[11],
151
+ origin: [
152
+ f32::from_bits(w[13]),
153
+ f32::from_bits(w[14]),
154
+ f32::from_bits(w[15]),
155
+ ],
156
+ mins: [-1.; 3],
157
+ maxs: [1.; 3],
158
+ };
159
+ let mut state = MoveAssemblyState {
160
+ command: w[24..30].try_into().unwrap(),
161
+ health: w[1],
162
+ follow: w[2],
163
+ flags: w[3],
164
+ links: MoveLinks {
165
+ linked: w[7] != 0,
166
+ other_linked: true,
167
+ },
168
+ entity,
169
+ other,
170
+ previous_origin: [0xdeadbeef; 3],
171
+ };
172
+ let input = MoveAssemblyInput {
173
+ slot: 2,
174
+ mode: w[0],
175
+ ghost: w[9],
176
+ context: MoveContextInput {
177
+ debug: w[16],
178
+ bot: w[17],
179
+ entity_flags: w[8],
180
+ pause: w[18],
181
+ quantize: w[19],
182
+ option: w[20],
183
+ origin: w[21..24].try_into().unwrap(),
184
+ vector: [w[4], w[5], w[35]],
185
+ },
186
+ };
187
+ let out = assemble_move_plan(&mut state, input, |target, s| {
188
+ if w[30] != 0 && [152673, 153419].contains(&target) {
189
+ s.health = w[31];
190
+ s.follow = w[32];
191
+ s.flags = w[33];
192
+ s.entity.pm_type = w[34];
193
+ }
194
+ Ok(())
195
+ })
196
+ .unwrap();
197
+ let results = out
198
+ .mask
199
+ .overlap
200
+ .map(u32::from)
201
+ .into_iter()
202
+ .collect::<Vec<_>>();
203
+ format!(
204
+ r#"{{"events":[{}],"command":{},"copied":{},"client_bound":true,"mask":{},"linked":{},"other_linked":{},"overlap_results":{},"values":{},"previous_origin":{},"saved_vector":{},"guards":[2864434397,287454020,1432778632,2578103244],"client_state":{}}}"#,
205
+ events(&out.effects),
206
+ list(&state.command),
207
+ list(&out.command),
208
+ out.mask.mask,
209
+ state.links.linked,
210
+ state.links.other_linked,
211
+ list(&results),
212
+ list(&out.context.words()),
213
+ list(&state.previous_origin),
214
+ list(&out.saved_vector),
215
+ list(&[
216
+ state.health,
217
+ state.follow,
218
+ state.flags,
219
+ state.entity.pm_type
220
+ ])
221
+ )
222
+ }
crates/urt-gameplay/src/client_move_context.rs CHANGED
@@ -362,3 +362,158 @@ mod context_tests {
362
  );
363
  }
364
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
362
  );
363
  }
364
  }
365
+
366
+ #[derive(Clone, Copy, Debug, PartialEq)]
367
+ pub struct MoveAssemblyState {
368
+ pub command: [u32; 6],
369
+ pub health: u32,
370
+ pub follow: u32,
371
+ pub flags: u32,
372
+ pub links: MoveLinks,
373
+ pub entity: MoveEntityBox,
374
+ pub other: MoveEntityBox,
375
+ pub previous_origin: [u32; 3],
376
+ }
377
+ #[derive(Clone, Copy, Debug, PartialEq, Eq)]
378
+ pub struct MoveAssemblyInput {
379
+ pub slot: i32,
380
+ pub mode: u32,
381
+ pub ghost: u32,
382
+ pub context: MoveContextInput,
383
+ }
384
+ #[derive(Clone, Debug, PartialEq, Eq)]
385
+ pub struct MoveAssemblyOutcome {
386
+ pub effects: Vec<SetupEffect>,
387
+ pub command: [u32; 6],
388
+ pub mask: MoveMaskOutcome,
389
+ pub context: NativeMoveContext,
390
+ pub saved_vector: [u32; 3],
391
+ }
392
+ /// Original154544..154867. The supplied closure models bounded callback feedback;
393
+ /// it must perform no external IO. State is staged until all policies succeed.
394
+ /// This does not invoke original callback bodies or physics54475.
395
+ pub fn assemble_move_plan(
396
+ state: &mut MoveAssemblyState,
397
+ input: MoveAssemblyInput,
398
+ mut feedback: impl FnMut(u32, &mut MoveAssemblyState) -> Result<(), crate::native_policy::Error>,
399
+ ) -> Result<MoveAssemblyOutcome, crate::native_policy::Error> {
400
+ let mut next = *state;
401
+ let mut scratch = [0u8; 268];
402
+ let effects = initialize_move_scratch(&mut scratch, input.mode, input.slot)?;
403
+ for e in &effects {
404
+ if let SetupEffect::Callback { target, .. } = e {
405
+ feedback(*target, &mut next)?;
406
+ }
407
+ }
408
+ let command = snapshot_move_command(&mut next.command, next.health, next.follow, next.flags);
409
+ let mask = select_move_mask(
410
+ &mut next.links,
411
+ MoveMaskInput {
412
+ entity: next.entity,
413
+ other: next.other,
414
+ entity_flags: input.context.entity_flags,
415
+ mode: input.mode,
416
+ ghost: input.ghost,
417
+ },
418
+ )?;
419
+ let (context, saved_vector) = assemble_move_context(&mut next.previous_origin, input.context);
420
+ *state = next;
421
+ Ok(MoveAssemblyOutcome {
422
+ effects,
423
+ command,
424
+ mask,
425
+ context,
426
+ saved_vector,
427
+ })
428
+ }
429
+ #[cfg(test)]
430
+ mod assembly_tests {
431
+ use super::*;
432
+ fn state() -> MoveAssemblyState {
433
+ let entity = MoveEntityBox {
434
+ pm_type: 0,
435
+ health: 1,
436
+ origin: [0.; 3],
437
+ mins: [-1.; 3],
438
+ maxs: [1.; 3],
439
+ };
440
+ MoveAssemblyState {
441
+ command: [1, 2, 3, 4, 5, 0x7f7f812a],
442
+ health: 1,
443
+ follow: 0,
444
+ flags: 2,
445
+ links: MoveLinks {
446
+ linked: true,
447
+ other_linked: true,
448
+ },
449
+ entity,
450
+ other: entity,
451
+ previous_origin: [7; 3],
452
+ }
453
+ }
454
+ fn input() -> MoveAssemblyInput {
455
+ MoveAssemblyInput {
456
+ slot: 2,
457
+ mode: 10,
458
+ ghost: 1,
459
+ context: MoveContextInput {
460
+ debug: 2,
461
+ bot: 1,
462
+ entity_flags: 8,
463
+ quantize: 1,
464
+ option: 2,
465
+ pause: 2,
466
+ origin: [1, 2, 3],
467
+ vector: [4, 5, 6],
468
+ },
469
+ }
470
+ }
471
+ #[test]
472
+ fn feedback_runs_in_order_before_suppression_and_mask_selection() {
473
+ let mut s = state();
474
+ let mut calls = vec![];
475
+ let out = assemble_move_plan(&mut s, input(), |target, s| {
476
+ calls.push(target);
477
+ if target == 152673 {
478
+ s.health = 0;
479
+ s.entity.pm_type = 3;
480
+ }
481
+ Ok(())
482
+ })
483
+ .unwrap();
484
+ assert_eq!(calls, [152792, 152673]);
485
+ assert_eq!(out.command[5], 0x7f7f812a);
486
+ assert_eq!(out.mask.overlap, None);
487
+ assert_eq!(out.mask.mask, 65537);
488
+ assert_eq!(s.previous_origin, [1, 2, 3]);
489
+ let mut s = state();
490
+ let out = assemble_move_plan(&mut s, MoveAssemblyInput { mode: 0, ..input() }, |_, _| {
491
+ panic!("mode0 has no callback")
492
+ })
493
+ .unwrap();
494
+ assert_eq!(out.command[5], 42);
495
+ assert_eq!(out.mask.overlap, Some(true));
496
+ }
497
+ #[test]
498
+ fn late_geometry_error_and_feedback_error_roll_back_state() {
499
+ let mut s = state();
500
+ let old = s;
501
+ assert!(
502
+ assemble_move_plan(&mut s, input(), |_, s| {
503
+ s.health = 0;
504
+ s.other.origin[0] = f32::NAN;
505
+ Ok(())
506
+ })
507
+ .is_err()
508
+ );
509
+ assert_eq!(s, old);
510
+ assert!(
511
+ assemble_move_plan(&mut s, input(), |_, s| {
512
+ s.flags = 0;
513
+ Err(crate::native_policy::Error::InvalidInput)
514
+ })
515
+ .is_err()
516
+ );
517
+ assert_eq!(s, old);
518
+ }
519
+ }
docs/FINDINGS.md CHANGED
@@ -1917,3 +1917,7 @@ RE-990: 108 original-QVM cases recover callback words -25/-26, raw debug/quantiz
1917
  RE-991: Rust constructs a typed movement context with original callback ABI identifiers, boolean bot/entity/pause fields and unnormalized configuration words. Raw origin/vector snapshots retain sign bits and NaN payloads without conversion.108 source/Rust fixtures compare every field and copy; typed arrays own copy boundaries. Native trace/contents adapters and movement54475 execution remain open. [Evidence](research/RUST_CLIENT_MOVE_CONTEXT.md).
1918
 
1919
  RE-992: Thirty coherent original-QVM probes compose scratch clearing, ordered mode callbacks, input suppression, command snapshot, actual linked overlap/mask selection and native context/vector assembly. Supplied callback feedback changes client health/follow/mask/type before later consumers; it is applied only when the corresponding mode callback runs. Failed overlap clears links before physics. Modes0/8/10, signed up input, callback feedback, paused state and failed links are covered. Callback bodies remain captured and supplied feedback is not evidence of their actual behavior. Execution stops before54475. [Evidence](research/QVM_CLIENT_MOVE_ASSEMBLY.md).
 
 
 
 
 
1917
  RE-991: Rust constructs a typed movement context with original callback ABI identifiers, boolean bot/entity/pause fields and unnormalized configuration words. Raw origin/vector snapshots retain sign bits and NaN payloads without conversion.108 source/Rust fixtures compare every field and copy; typed arrays own copy boundaries. Native trace/contents adapters and movement54475 execution remain open. [Evidence](research/RUST_CLIENT_MOVE_CONTEXT.md).
1918
 
1919
  RE-992: Thirty coherent original-QVM probes compose scratch clearing, ordered mode callbacks, input suppression, command snapshot, actual linked overlap/mask selection and native context/vector assembly. Supplied callback feedback changes client health/follow/mask/type before later consumers; it is applied only when the corresponding mode callback runs. Failed overlap clears links before physics. Modes0/8/10, signed up input, callback feedback, paused state and failed links are covered. Callback bodies remain captured and supplied feedback is not evidence of their actual behavior. Execution stops before54475. [Evidence](research/QVM_CLIENT_MOVE_ASSEMBLY.md).
1920
+
1921
+ RE-993: Rust stages the complete movement-setup plan, applies pure supplied callback feedback in original order, then suppresses/snapshots commands, resolves linked masks and assembles context/vectors. Thirty source/Rust cases compare all projected state and ordered effects. Unit tests verify feedback changes later decisions, no callback runs in mode0, failed geometry or feedback rejects without committing state, and prior snapshots update on success. No native IO or actual physics executes. [Evidence](research/RUST_CLIENT_MOVE_ASSEMBLY.md).
1922
+
1923
+ RE-984–993 batch validation passed:1,918 Python tests,289 Rust tests,116 deterministic affected producers and568 documentation files. All ten tasks have individual focused validation and commits. [Batch scope and remaining runtime work](research/QVM_MOVE_CONTEXT_BATCH.md).
docs/PROVISIONAL_TODO.md CHANGED
@@ -1973,3 +1973,8 @@ RE-974–983 completed routing, command rewrite, inactivity, movement-parameter
1973
  - [x] RE-991 Port typed native movement context assembly ([evidence](research/RUST_CLIENT_MOVE_CONTEXT.md)).
1974
 
1975
  - [x] RE-992 Compose source movement setup through physics boundary ([evidence](research/QVM_CLIENT_MOVE_ASSEMBLY.md)).
 
 
 
 
 
 
1973
  - [x] RE-991 Port typed native movement context assembly ([evidence](research/RUST_CLIENT_MOVE_CONTEXT.md)).
1974
 
1975
  - [x] RE-992 Compose source movement setup through physics boundary ([evidence](research/QVM_CLIENT_MOVE_ASSEMBLY.md)).
1976
+
1977
+ - [x] RE-993 Compose Rust movement setup with callback feedback ([evidence](research/RUST_CLIENT_MOVE_ASSEMBLY.md)).
1978
+
1979
+ - [x] RE-984–993 movement-context batch:280 paired source/Rust fixtures through154867 ([evidence](research/QVM_MOVE_CONTEXT_BATCH.md)).
1980
+ - [ ] RE-994 recover actual mode callback bodies and movement54475, then post-movement/timer integration and native macOS/Linux acceptance ([scope](research/QVM_MOVE_CONTEXT_BATCH.md#next-work-re-994)).
docs/RESEARCH_LEDGER.md CHANGED
@@ -2643,3 +2643,7 @@ Rust constructs a typed movement context with original callback ABI identifiers,
2643
  ## 2026-10-29 — RE-992 Compose source movement setup through physics boundary
2644
 
2645
  Thirty coherent original-QVM probes compose scratch clearing, ordered mode callbacks, input suppression, command snapshot, actual linked overlap/mask selection and native context/vector assembly. Supplied callback feedback changes client health/follow/mask/type before later consumers; it is applied only when the corresponding mode callback runs. Failed overlap clears links before physics. Modes0/8/10, signed up input, callback feedback, paused state and failed links are covered. Callback bodies remain captured and supplied feedback is not evidence of their actual behavior. Execution stops before54475. Focused `cargo xtask test-group qvm-client-move-assembly` passes with deterministic report regeneration and selected regressions. Full suite deferred to task ten. Original assets unchanged; Python uses the flake-declared Nix runtime.
 
 
 
 
 
2643
  ## 2026-10-29 — RE-992 Compose source movement setup through physics boundary
2644
 
2645
  Thirty coherent original-QVM probes compose scratch clearing, ordered mode callbacks, input suppression, command snapshot, actual linked overlap/mask selection and native context/vector assembly. Supplied callback feedback changes client health/follow/mask/type before later consumers; it is applied only when the corresponding mode callback runs. Failed overlap clears links before physics. Modes0/8/10, signed up input, callback feedback, paused state and failed links are covered. Callback bodies remain captured and supplied feedback is not evidence of their actual behavior. Execution stops before54475. Focused `cargo xtask test-group qvm-client-move-assembly` passes with deterministic report regeneration and selected regressions. Full suite deferred to task ten. Original assets unchanged; Python uses the flake-declared Nix runtime.
2646
+
2647
+ ## 2026-10-29 — RE-993 Compose Rust movement setup with callback feedback
2648
+
2649
+ Rust stages the complete movement-setup plan, applies pure supplied callback feedback in original order, then suppresses/snapshots commands, resolves linked masks and assembles context/vectors. Thirty source/Rust cases compare all projected state and ordered effects. Unit tests verify feedback changes later decisions, no callback runs in mode0, failed geometry or feedback rejects without committing state, and prior snapshots update on success. No native IO or actual physics executes. Focused `cargo xtask test-group rust-client-move-assembly` passes with deterministic report regeneration and selected regressions. The single `cargo xtask test-full --since 99a6f51a` run at the tenth-commit boundary passed: **1,918 Python tests** across509 modules, **289 Rust tests** (assets10, gameplay249, xtask30), **116 deterministic affected report producers**, storage policy, links across **568 documentation files** and whitespace guards. Regeneration left the tree clean. Focused dependency-registry regression also passed. Validation notes are amended into task ten, preserving ten commits. Original assets unchanged; Python uses the flake-declared Nix runtime.
docs/REVERSE_ENGINEERING_TODO.md CHANGED
@@ -2010,3 +2010,8 @@ RE-974–983 recover routing, command rewriting, inactivity and composed setup t
2010
  - [x] RE-991 Port typed native movement context assembly ([evidence](research/RUST_CLIENT_MOVE_CONTEXT.md)).
2011
 
2012
  - [x] RE-992 Compose source movement setup through physics boundary ([evidence](research/QVM_CLIENT_MOVE_ASSEMBLY.md)).
 
 
 
 
 
 
2010
  - [x] RE-991 Port typed native movement context assembly ([evidence](research/RUST_CLIENT_MOVE_CONTEXT.md)).
2011
 
2012
  - [x] RE-992 Compose source movement setup through physics boundary ([evidence](research/QVM_CLIENT_MOVE_ASSEMBLY.md)).
2013
+
2014
+ - [x] RE-993 Compose Rust movement setup with callback feedback ([evidence](research/RUST_CLIENT_MOVE_ASSEMBLY.md)).
2015
+
2016
+ - [x] RE-984–993 movement-context batch:280 paired source/Rust fixtures through154867 ([evidence](research/QVM_MOVE_CONTEXT_BATCH.md)).
2017
+ - [ ] RE-994 recover actual mode callback bodies and movement54475, then post-movement/timer integration and native macOS/Linux acceptance ([scope](research/QVM_MOVE_CONTEXT_BATCH.md#next-work-re-994)).
docs/TESTING.md CHANGED
@@ -185,3 +185,5 @@ Filter command/caller focused groups: `qvm-filter-add-command`, `rust-filter-add
185
  Client timer focused groups: `qvm-client-timer-terminal`, `rust-client-timer-terminal`, `qvm-client-timer-ticks`, `rust-client-timer-ticks`, `qvm-client-timer-recovery`, `rust-client-timer-recovery`, `qvm-client-timer-complete`, `rust-client-timer-complete`, `qvm-client-timer-prepare` and `rust-client-timer-prepare`. Shared timer and dependent gameplay modules select parity producers plus scoped gameplay test-count metadata. Run one group per invocation. Full-body probes keep native time supplied and damage effects captured; caller-prefix probes stop explicitly at154210 or155716.
186
 
187
  Client processing focused groups: `qvm-client-routing`, `rust-client-routing`, `qvm-client-command-rewrite`, `rust-client-command-rewrite`, `qvm-client-inactivity`, `rust-client-inactivity`, `qvm-client-movement-setup`, `rust-client-movement-setup`, `qvm-client-pre-movement` and `rust-client-pre-movement`. Shared processing and dependent gameplay modules select parity producers plus scoped gameplay test-count metadata. Run one group per invocation. Source prefixes stop at explicit154544/155716 boundaries; native callbacks remain captured.
 
 
 
185
  Client timer focused groups: `qvm-client-timer-terminal`, `rust-client-timer-terminal`, `qvm-client-timer-ticks`, `rust-client-timer-ticks`, `qvm-client-timer-recovery`, `rust-client-timer-recovery`, `qvm-client-timer-complete`, `rust-client-timer-complete`, `qvm-client-timer-prepare` and `rust-client-timer-prepare`. Shared timer and dependent gameplay modules select parity producers plus scoped gameplay test-count metadata. Run one group per invocation. Full-body probes keep native time supplied and damage effects captured; caller-prefix probes stop explicitly at154210 or155716.
186
 
187
  Client processing focused groups: `qvm-client-routing`, `rust-client-routing`, `qvm-client-command-rewrite`, `rust-client-command-rewrite`, `qvm-client-inactivity`, `rust-client-inactivity`, `qvm-client-movement-setup`, `rust-client-movement-setup`, `qvm-client-pre-movement` and `rust-client-pre-movement`. Shared processing and dependent gameplay modules select parity producers plus scoped gameplay test-count metadata. Run one group per invocation. Source prefixes stop at explicit154544/155716 boundaries; native callbacks remain captured.
188
+
189
+ Movement-context focused pairs: `qvm-client-move-scratch`/`rust-client-move-scratch`, `qvm-client-move-suppression`/`rust-client-move-suppression`, `qvm-client-move-mask`/`rust-client-move-mask`, `qvm-client-move-context`/`rust-client-move-context`, and `qvm-client-move-assembly`/`rust-client-move-assembly`. Run one group per invocation. Shared `client_move_context` and CLI changes select all five Rust producers plus gameplay test-count metadata. Source151954 executes in linked-mask probes; mode callbacks are captured with explicitly supplied feedback in composition. The batch full check is `cargo xtask test-full --since 99a6f51a` after ten commits. [Contracts and next work](research/QVM_MOVE_CONTEXT_BATCH.md).
docs/research/QVM_CLIENT_PROCESSING_BATCH.md CHANGED
@@ -49,7 +49,9 @@ Each task ran its own focused `cargo xtask test-group` before its commit: qvm/ru
49
 
50
  Rust unit tests additionally cover routing precedence, saved-angle direction, byte preservation, strict/repeated warnings, team-before-message ordering, wrapped dead-client extension, paused unused float inputs, one-shot controller consumption, high-bit packing, late-error rollback and preceding writes on ordinary early exits. Dependency-selection regressions include all five source/Rust pairs and shared processing/timer/command/loading/lifecycle/native-policy/formatter inputs, including scoped gameplay test-count metadata. Python uses the flake-declared Nix runtime throughout, including Git hooks. Original assets are unchanged. The single `cargo xtask test-full --since 74af72a2` run after task ten passed: **1,898 Python tests**, **280 Rust tests** (assets10, gameplay240, xtask30), **111 deterministic report producers**, storage policy, links across **557 documentation files** and whitespace guards. Regeneration left no changes. Focused dependency-selection regression also passed. Validation notes are amended into task ten, preserving ten commits for this batch.
51
 
52
- ## Next work: RE-984
 
 
53
 
54
  - [ ] Recover154544 onward: movement scratch initialization, mode10 callbacks152792/152673, mode8 callback153419, remaining input masks and the actual movement/collision dispatch.
55
  - [ ] Resolve routing151133/149671 and team183102 callback bodies, including state feedback and all alternate caller exits through timer dispatch155714.
 
49
 
50
  Rust unit tests additionally cover routing precedence, saved-angle direction, byte preservation, strict/repeated warnings, team-before-message ordering, wrapped dead-client extension, paused unused float inputs, one-shot controller consumption, high-bit packing, late-error rollback and preceding writes on ordinary early exits. Dependency-selection regressions include all five source/Rust pairs and shared processing/timer/command/loading/lifecycle/native-policy/formatter inputs, including scoped gameplay test-count metadata. Python uses the flake-declared Nix runtime throughout, including Git hooks. Original assets are unchanged. The single `cargo xtask test-full --since 74af72a2` run after task ten passed: **1,898 Python tests**, **280 Rust tests** (assets10, gameplay240, xtask30), **111 deterministic report producers**, storage policy, links across **557 documentation files** and whitespace guards. Regeneration left no changes. Focused dependency-selection regression also passed. Validation notes are amended into task ten, preserving ten commits for this batch.
51
 
52
+ ## Follow-up from RE-984
53
+
54
+ Scratch initialization, input masks, actual linked-overlap checks and native context assembly are now covered by the [RE-984–993 batch](QVM_MOVE_CONTEXT_BATCH.md). Actual movement54475 and callback bodies remain open. The original follow-up scope was:
55
 
56
  - [ ] Recover154544 onward: movement scratch initialization, mode10 callbacks152792/152673, mode8 callback153419, remaining input masks and the actual movement/collision dispatch.
57
  - [ ] Resolve routing151133/149671 and team183102 callback bodies, including state feedback and all alternate caller exits through timer dispatch155714.
docs/research/QVM_MOVE_CONTEXT_BATCH.md ADDED
@@ -0,0 +1,57 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Movement context construction: RE-984–993
2
+
3
+ Ten tasks recover five source/Rust contracts across **280 paired fixtures**. They continue the [client-processing prefix](QVM_CLIENT_PROCESSING_BATCH.md) from154544 through154867, immediately before movement54475. Each task has a separate commit and focused `cargo xtask` validation.
4
+
5
+ | Tasks | Contract | Paired fixtures |
6
+ | --- | --- | ---: |
7
+ | RE-984 / RE-985 | [Source scratch/mode dispatch](QVM_CLIENT_MOVE_SCRATCH.md) / [Rust plans](RUST_CLIENT_MOVE_SCRATCH.md) | 12 |
8
+ | RE-986 / RE-987 | [Source suppression/snapshot](QVM_CLIENT_MOVE_SUPPRESSION.md) / [Rust snapshot](RUST_CLIENT_MOVE_SUPPRESSION.md) | 90 |
9
+ | RE-988 / RE-989 | [Source linked masks](QVM_CLIENT_MOVE_MASK.md) / [Rust overlap/masks](RUST_CLIENT_MOVE_MASK.md) | 40 |
10
+ | RE-990 / RE-991 | [Source context/vectors](QVM_CLIENT_MOVE_CONTEXT.md) / [Rust context](RUST_CLIENT_MOVE_CONTEXT.md) | 108 |
11
+ | RE-992 / RE-993 | [Source composition](QVM_CLIENT_MOVE_ASSEMBLY.md) / [Rust composition](RUST_CLIENT_MOVE_ASSEMBLY.md) | 30 |
12
+
13
+ ## Scratch and callbacks
14
+
15
+ The source clears268 bytes starting at frame56, preserving neighboring four-byte guards. Mode10 requests152792 then152673; mode8 requests153419; other modes request neither. The native memset handler performs exact coherent byte writes. Mode callback bodies remain captured.
16
+
17
+ Composed fixtures optionally supply explicit callback feedback to client health208, follow4324, mask220 and movement-type4. Feedback applies after the final callback of mode8 or10 and before subsequent setup. Mode0 ignores it because no callback runs. These inputs test source ordering; they do not establish what those callback bodies actually do. Rust accepts a pure feedback closure and stages state until all modeled setup succeeds. The closure must not perform external IO; native side effects cannot be rolled back by this API.
18
+
19
+ ## Suppression and snapshot
20
+
21
+ Positive signed client health, zero follow word and mask220&2 select suppression. It clears command bytes493/494, then clears byte495 only when its signed value is positive. Values128..255 survive as negative signed input. Timestamp, angles, buttons and byte492 survive. The resulting24-byte command is copied into scratch60 and the client pointer stored at scratch56.
22
+
23
+ The90 source cases cover positive/zero/negative health, follow state, absent/present/high-bit masks, and up-byte boundaries0/1/127/128/255. Rust compares both the command and copied snapshot with the original report.
24
+
25
+ ## Linked collision masks
26
+
27
+ Movement-type3 selects65537 before reading a link. Other linked clients call actual151954. That helper requires movement-type0 and positive signed entity health684 on both participants. It compares world bounds derived from entity origin488 and mins436/maxs448.
28
+
29
+ The first comparison is strict: other lower-X must be less than this upper-X. Lower-Y/Z comparisons and all opposite-side comparisons are inclusive. Touching the positive X face fails, while touching negative X, positive Y or positive Z can pass. Fixtures preserve this source asymmetry.
30
+
31
+ Successful overlap selects65537 and retains links. Failed overlap clears both client4396 words and selects33619969, bypassing later flag/mode branches. With no link, entity424&8 selects37814273; otherwise mode9 and nonzero client3704 select67174401; the default is33619969. Rust checks finite geometry and sums before mutation; nonfinite/overflow domains explicitly reject and are outside source-parity claims.
32
+
33
+ ## Native context and snapshots
34
+
35
+ The source installs callback words -25/-26, copies raw global34085164 to frame88, normalizes nonzero global34992512 to a boolean at frame288, normalizes entity424&8 at frame292, copies client712 to frame276 and client700 to frame304, then sets frame300 from pause mask1. Names such as `bot`, `debug`, `quantize` and `option` in finite fixture/API fields are provisional labels for these exact offsets; complete field ownership and runtime meanings remain to be established.
36
+
37
+ Two12-byte copies snapshot client20 into client4072 and client152 into frame336. They preserve every bit, including negative zero, high-bit words and NaN payloads, without float interpretation. Four adjacent sentinels validate the source copy widths; Rust array ownership defines the corresponding bounds.
38
+
39
+ The composed30 cases compare callbacks, final client words, command/snapshot, overlap results, reciprocal links, masks, configuration fields and vector snapshots. This extends the setup boundary but does not execute54475, native trace/contents callbacks, post-movement handling or an original runtime.
40
+
41
+ ## Validation
42
+
43
+ Each task runs one focused `cargo xtask test-group` using the corresponding `qvm-` or `rust-client-move-*` group before committing. Selected reports regenerate twice and must match byte-for-byte. Independent Python expectations check source reports; Rust reports project every relevant source field and retain the source report SHA256. Nine additional Rust unit tests cover guards, callback order, signed bytes, bypasses, mask precedence, overlap boundaries, raw copies and staged errors.
44
+
45
+ The dependency registry includes all five source/Rust report pairs, the shared module and CLI, plus gameplay test-count metadata. One full-suite run executes at the tenth-commit boundary with `cargo xtask test-full --since 99a6f51a`. Python uses only the flake-declared Nix runtime, including Git hooks. No assets or original binaries are changed.
46
+
47
+ The single `cargo xtask test-full --since 99a6f51a` run at the tenth-commit boundary passed: **1,918 Python tests** across509 modules, **289 Rust tests** (assets10, gameplay249, xtask30), **116 deterministic affected report producers**, storage policy, links across **568 documentation files** and whitespace guards. Regeneration left the tree clean. Focused dependency-registry regression also passed. Validation notes are amended into task ten, preserving ten commits.
48
+
49
+ ## Next work: RE-994
50
+
51
+ - [ ] Recover actual mode callbacks152792,152673 and153419, including nested calls and state feedback; replace supplied feedback with their verified policies.
52
+ - [ ] Recover movement54475 with native trace/contents adapters, explicit collision replies, physics outputs and full input/movement policy composition.
53
+ - [ ] Recover154867 onward: pause/post-movement decisions, linking, event handling, health/damage feedback, timer155714 and all alternate caller exits.
54
+ - [ ] Expand151954 geometry to varied asymmetric boxes and finite extreme sums, and establish allocation/link identity, aliasing and reciprocal ownership invariants.
55
+ - [ ] Connect this setup to the prior154089 timing/routing/inactivity/gravity prefix and verify one coherent state through actual physics and timer dispatch.
56
+ - [ ] Resolve routing151133/149671, team183102, initialization3877, native time/file/userinfo/network adapters, scheduling and longer original-runtime comparisons.
57
+ - [ ] Continue map/model/texture/shader conversion, rendering through Bevy/Solari, playable gameplay integration and native macOS/Linux acceptance.
docs/research/README.md CHANGED
@@ -1545,3 +1545,7 @@ The extension collector adds five focused tests for native tail calls, command-r
1545
  - [RE-991: Port typed native movement context assembly](RUST_CLIENT_MOVE_CONTEXT.md).
1546
 
1547
  - [RE-992: Compose source movement setup through physics boundary](QVM_CLIENT_MOVE_ASSEMBLY.md).
 
 
 
 
 
1545
  - [RE-991: Port typed native movement context assembly](RUST_CLIENT_MOVE_CONTEXT.md).
1546
 
1547
  - [RE-992: Compose source movement setup through physics boundary](QVM_CLIENT_MOVE_ASSEMBLY.md).
1548
+
1549
+ - [RE-993: Compose Rust movement setup with callback feedback](RUST_CLIENT_MOVE_ASSEMBLY.md).
1550
+
1551
+ - [Movement context construction: RE-984–993](QVM_MOVE_CONTEXT_BATCH.md).
docs/research/RUST_CLIENT_MOVE_ASSEMBLY.md ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ # Compose Rust movement setup with callback feedback
2
+
3
+ RE-993. Focused validation: `cargo xtask test-group rust-client-move-assembly`. [Machine report](rust-client-move-assembly.json).
4
+
5
+ Rust stages the complete movement-setup plan, applies pure supplied callback feedback in original order, then suppresses/snapshots commands, resolves linked masks and assembles context/vectors. Thirty source/Rust cases compare all projected state and ordered effects. Unit tests verify feedback changes later decisions, no callback runs in mode0, failed geometry or feedback rejects without committing state, and prior snapshots update on success. No native IO or actual physics executes.
docs/research/rust-client-move-assembly.json ADDED
@@ -0,0 +1,4187 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "limits": "Finite source/Rust contract parity; native time/file/network replies remain supplied or captured.",
3
+ "probes": [
4
+ {
5
+ "rust": {
6
+ "client_bound": true,
7
+ "client_state": [
8
+ 1,
9
+ 0,
10
+ 2,
11
+ 0
12
+ ],
13
+ "command": [
14
+ 10050,
15
+ 2864434397,
16
+ 2147483648,
17
+ 4294967295,
18
+ 2271560481,
19
+ 42
20
+ ],
21
+ "copied": [
22
+ 10050,
23
+ 2864434397,
24
+ 2147483648,
25
+ 4294967295,
26
+ 2271560481,
27
+ 42
28
+ ],
29
+ "events": [
30
+ {
31
+ "count": 268,
32
+ "offset": 56,
33
+ "op": "zero"
34
+ }
35
+ ],
36
+ "guards": [
37
+ 2864434397,
38
+ 287454020,
39
+ 1432778632,
40
+ 2578103244
41
+ ],
42
+ "linked": true,
43
+ "mask": 65537,
44
+ "other_linked": true,
45
+ "overlap_results": [
46
+ 1
47
+ ],
48
+ "previous_origin": [
49
+ 2147483648,
50
+ 2143289345,
51
+ 2139095039
52
+ ],
53
+ "saved_vector": [
54
+ 4294967295,
55
+ 0,
56
+ 305419896
57
+ ],
58
+ "values": [
59
+ 4294967271,
60
+ 4294967270,
61
+ 2,
62
+ 1,
63
+ 1,
64
+ 2147483648,
65
+ 2147483649,
66
+ 0
67
+ ]
68
+ },
69
+ "source": {
70
+ "client_bound": true,
71
+ "client_state": [
72
+ 1,
73
+ 0,
74
+ 2,
75
+ 0
76
+ ],
77
+ "command": [
78
+ 10050,
79
+ 2864434397,
80
+ 2147483648,
81
+ 4294967295,
82
+ 2271560481,
83
+ 42
84
+ ],
85
+ "copied": [
86
+ 10050,
87
+ 2864434397,
88
+ 2147483648,
89
+ 4294967295,
90
+ 2271560481,
91
+ 42
92
+ ],
93
+ "events": [
94
+ {
95
+ "count": 268,
96
+ "offset": 56,
97
+ "op": "zero"
98
+ }
99
+ ],
100
+ "guards": [
101
+ 2864434397,
102
+ 287454020,
103
+ 1432778632,
104
+ 2578103244
105
+ ],
106
+ "linked": true,
107
+ "mask": 65537,
108
+ "other_linked": true,
109
+ "overlap_results": [
110
+ 1
111
+ ],
112
+ "previous_origin": [
113
+ 2147483648,
114
+ 2143289345,
115
+ 2139095039
116
+ ],
117
+ "saved_vector": [
118
+ 4294967295,
119
+ 0,
120
+ 305419896
121
+ ],
122
+ "values": [
123
+ 4294967271,
124
+ 4294967270,
125
+ 2,
126
+ 1,
127
+ 1,
128
+ 2147483648,
129
+ 2147483649,
130
+ 0
131
+ ]
132
+ }
133
+ },
134
+ {
135
+ "rust": {
136
+ "client_bound": true,
137
+ "client_state": [
138
+ 1,
139
+ 0,
140
+ 2,
141
+ 0
142
+ ],
143
+ "command": [
144
+ 10050,
145
+ 2864434397,
146
+ 2147483648,
147
+ 4294967295,
148
+ 2271560481,
149
+ 42
150
+ ],
151
+ "copied": [
152
+ 10050,
153
+ 2864434397,
154
+ 2147483648,
155
+ 4294967295,
156
+ 2271560481,
157
+ 42
158
+ ],
159
+ "events": [
160
+ {
161
+ "count": 268,
162
+ "offset": 56,
163
+ "op": "zero"
164
+ },
165
+ {
166
+ "op": "callback",
167
+ "slot": 2,
168
+ "target": 153419
169
+ }
170
+ ],
171
+ "guards": [
172
+ 2864434397,
173
+ 287454020,
174
+ 1432778632,
175
+ 2578103244
176
+ ],
177
+ "linked": true,
178
+ "mask": 65537,
179
+ "other_linked": true,
180
+ "overlap_results": [
181
+ 1
182
+ ],
183
+ "previous_origin": [
184
+ 2147483648,
185
+ 2143289345,
186
+ 2139095039
187
+ ],
188
+ "saved_vector": [
189
+ 4294967295,
190
+ 0,
191
+ 305419896
192
+ ],
193
+ "values": [
194
+ 4294967271,
195
+ 4294967270,
196
+ 2,
197
+ 1,
198
+ 1,
199
+ 2147483648,
200
+ 2147483649,
201
+ 0
202
+ ]
203
+ },
204
+ "source": {
205
+ "client_bound": true,
206
+ "client_state": [
207
+ 1,
208
+ 0,
209
+ 2,
210
+ 0
211
+ ],
212
+ "command": [
213
+ 10050,
214
+ 2864434397,
215
+ 2147483648,
216
+ 4294967295,
217
+ 2271560481,
218
+ 42
219
+ ],
220
+ "copied": [
221
+ 10050,
222
+ 2864434397,
223
+ 2147483648,
224
+ 4294967295,
225
+ 2271560481,
226
+ 42
227
+ ],
228
+ "events": [
229
+ {
230
+ "count": 268,
231
+ "offset": 56,
232
+ "op": "zero"
233
+ },
234
+ {
235
+ "op": "callback",
236
+ "slot": 2,
237
+ "target": 153419
238
+ }
239
+ ],
240
+ "guards": [
241
+ 2864434397,
242
+ 287454020,
243
+ 1432778632,
244
+ 2578103244
245
+ ],
246
+ "linked": true,
247
+ "mask": 65537,
248
+ "other_linked": true,
249
+ "overlap_results": [
250
+ 1
251
+ ],
252
+ "previous_origin": [
253
+ 2147483648,
254
+ 2143289345,
255
+ 2139095039
256
+ ],
257
+ "saved_vector": [
258
+ 4294967295,
259
+ 0,
260
+ 305419896
261
+ ],
262
+ "values": [
263
+ 4294967271,
264
+ 4294967270,
265
+ 2,
266
+ 1,
267
+ 1,
268
+ 2147483648,
269
+ 2147483649,
270
+ 0
271
+ ]
272
+ }
273
+ },
274
+ {
275
+ "rust": {
276
+ "client_bound": true,
277
+ "client_state": [
278
+ 1,
279
+ 0,
280
+ 2,
281
+ 0
282
+ ],
283
+ "command": [
284
+ 10050,
285
+ 2864434397,
286
+ 2147483648,
287
+ 4294967295,
288
+ 2271560481,
289
+ 42
290
+ ],
291
+ "copied": [
292
+ 10050,
293
+ 2864434397,
294
+ 2147483648,
295
+ 4294967295,
296
+ 2271560481,
297
+ 42
298
+ ],
299
+ "events": [
300
+ {
301
+ "count": 268,
302
+ "offset": 56,
303
+ "op": "zero"
304
+ },
305
+ {
306
+ "op": "callback",
307
+ "slot": 2,
308
+ "target": 152792
309
+ },
310
+ {
311
+ "op": "callback",
312
+ "slot": 2,
313
+ "target": 152673
314
+ }
315
+ ],
316
+ "guards": [
317
+ 2864434397,
318
+ 287454020,
319
+ 1432778632,
320
+ 2578103244
321
+ ],
322
+ "linked": true,
323
+ "mask": 65537,
324
+ "other_linked": true,
325
+ "overlap_results": [
326
+ 1
327
+ ],
328
+ "previous_origin": [
329
+ 2147483648,
330
+ 2143289345,
331
+ 2139095039
332
+ ],
333
+ "saved_vector": [
334
+ 4294967295,
335
+ 0,
336
+ 305419896
337
+ ],
338
+ "values": [
339
+ 4294967271,
340
+ 4294967270,
341
+ 2,
342
+ 1,
343
+ 1,
344
+ 2147483648,
345
+ 2147483649,
346
+ 0
347
+ ]
348
+ },
349
+ "source": {
350
+ "client_bound": true,
351
+ "client_state": [
352
+ 1,
353
+ 0,
354
+ 2,
355
+ 0
356
+ ],
357
+ "command": [
358
+ 10050,
359
+ 2864434397,
360
+ 2147483648,
361
+ 4294967295,
362
+ 2271560481,
363
+ 42
364
+ ],
365
+ "copied": [
366
+ 10050,
367
+ 2864434397,
368
+ 2147483648,
369
+ 4294967295,
370
+ 2271560481,
371
+ 42
372
+ ],
373
+ "events": [
374
+ {
375
+ "count": 268,
376
+ "offset": 56,
377
+ "op": "zero"
378
+ },
379
+ {
380
+ "op": "callback",
381
+ "slot": 2,
382
+ "target": 152792
383
+ },
384
+ {
385
+ "op": "callback",
386
+ "slot": 2,
387
+ "target": 152673
388
+ }
389
+ ],
390
+ "guards": [
391
+ 2864434397,
392
+ 287454020,
393
+ 1432778632,
394
+ 2578103244
395
+ ],
396
+ "linked": true,
397
+ "mask": 65537,
398
+ "other_linked": true,
399
+ "overlap_results": [
400
+ 1
401
+ ],
402
+ "previous_origin": [
403
+ 2147483648,
404
+ 2143289345,
405
+ 2139095039
406
+ ],
407
+ "saved_vector": [
408
+ 4294967295,
409
+ 0,
410
+ 305419896
411
+ ],
412
+ "values": [
413
+ 4294967271,
414
+ 4294967270,
415
+ 2,
416
+ 1,
417
+ 1,
418
+ 2147483648,
419
+ 2147483649,
420
+ 0
421
+ ]
422
+ }
423
+ },
424
+ {
425
+ "rust": {
426
+ "client_bound": true,
427
+ "client_state": [
428
+ 1,
429
+ 0,
430
+ 2,
431
+ 0
432
+ ],
433
+ "command": [
434
+ 10050,
435
+ 1,
436
+ 2,
437
+ 3,
438
+ 4,
439
+ 4278190122
440
+ ],
441
+ "copied": [
442
+ 10050,
443
+ 1,
444
+ 2,
445
+ 3,
446
+ 4,
447
+ 4278190122
448
+ ],
449
+ "events": [
450
+ {
451
+ "count": 268,
452
+ "offset": 56,
453
+ "op": "zero"
454
+ }
455
+ ],
456
+ "guards": [
457
+ 2864434397,
458
+ 287454020,
459
+ 1432778632,
460
+ 2578103244
461
+ ],
462
+ "linked": true,
463
+ "mask": 65537,
464
+ "other_linked": true,
465
+ "overlap_results": [
466
+ 1
467
+ ],
468
+ "previous_origin": [
469
+ 2147483648,
470
+ 2143289345,
471
+ 2139095039
472
+ ],
473
+ "saved_vector": [
474
+ 4294967295,
475
+ 0,
476
+ 305419896
477
+ ],
478
+ "values": [
479
+ 4294967271,
480
+ 4294967270,
481
+ 2,
482
+ 1,
483
+ 1,
484
+ 2147483648,
485
+ 2147483649,
486
+ 0
487
+ ]
488
+ },
489
+ "source": {
490
+ "client_bound": true,
491
+ "client_state": [
492
+ 1,
493
+ 0,
494
+ 2,
495
+ 0
496
+ ],
497
+ "command": [
498
+ 10050,
499
+ 1,
500
+ 2,
501
+ 3,
502
+ 4,
503
+ 4278190122
504
+ ],
505
+ "copied": [
506
+ 10050,
507
+ 1,
508
+ 2,
509
+ 3,
510
+ 4,
511
+ 4278190122
512
+ ],
513
+ "events": [
514
+ {
515
+ "count": 268,
516
+ "offset": 56,
517
+ "op": "zero"
518
+ }
519
+ ],
520
+ "guards": [
521
+ 2864434397,
522
+ 287454020,
523
+ 1432778632,
524
+ 2578103244
525
+ ],
526
+ "linked": true,
527
+ "mask": 65537,
528
+ "other_linked": true,
529
+ "overlap_results": [
530
+ 1
531
+ ],
532
+ "previous_origin": [
533
+ 2147483648,
534
+ 2143289345,
535
+ 2139095039
536
+ ],
537
+ "saved_vector": [
538
+ 4294967295,
539
+ 0,
540
+ 305419896
541
+ ],
542
+ "values": [
543
+ 4294967271,
544
+ 4294967270,
545
+ 2,
546
+ 1,
547
+ 1,
548
+ 2147483648,
549
+ 2147483649,
550
+ 0
551
+ ]
552
+ }
553
+ },
554
+ {
555
+ "rust": {
556
+ "client_bound": true,
557
+ "client_state": [
558
+ 1,
559
+ 0,
560
+ 2,
561
+ 0
562
+ ],
563
+ "command": [
564
+ 10050,
565
+ 1,
566
+ 2,
567
+ 3,
568
+ 4,
569
+ 4278190122
570
+ ],
571
+ "copied": [
572
+ 10050,
573
+ 1,
574
+ 2,
575
+ 3,
576
+ 4,
577
+ 4278190122
578
+ ],
579
+ "events": [
580
+ {
581
+ "count": 268,
582
+ "offset": 56,
583
+ "op": "zero"
584
+ },
585
+ {
586
+ "op": "callback",
587
+ "slot": 2,
588
+ "target": 153419
589
+ }
590
+ ],
591
+ "guards": [
592
+ 2864434397,
593
+ 287454020,
594
+ 1432778632,
595
+ 2578103244
596
+ ],
597
+ "linked": true,
598
+ "mask": 65537,
599
+ "other_linked": true,
600
+ "overlap_results": [
601
+ 1
602
+ ],
603
+ "previous_origin": [
604
+ 2147483648,
605
+ 2143289345,
606
+ 2139095039
607
+ ],
608
+ "saved_vector": [
609
+ 4294967295,
610
+ 0,
611
+ 305419896
612
+ ],
613
+ "values": [
614
+ 4294967271,
615
+ 4294967270,
616
+ 2,
617
+ 1,
618
+ 1,
619
+ 2147483648,
620
+ 2147483649,
621
+ 0
622
+ ]
623
+ },
624
+ "source": {
625
+ "client_bound": true,
626
+ "client_state": [
627
+ 1,
628
+ 0,
629
+ 2,
630
+ 0
631
+ ],
632
+ "command": [
633
+ 10050,
634
+ 1,
635
+ 2,
636
+ 3,
637
+ 4,
638
+ 4278190122
639
+ ],
640
+ "copied": [
641
+ 10050,
642
+ 1,
643
+ 2,
644
+ 3,
645
+ 4,
646
+ 4278190122
647
+ ],
648
+ "events": [
649
+ {
650
+ "count": 268,
651
+ "offset": 56,
652
+ "op": "zero"
653
+ },
654
+ {
655
+ "op": "callback",
656
+ "slot": 2,
657
+ "target": 153419
658
+ }
659
+ ],
660
+ "guards": [
661
+ 2864434397,
662
+ 287454020,
663
+ 1432778632,
664
+ 2578103244
665
+ ],
666
+ "linked": true,
667
+ "mask": 65537,
668
+ "other_linked": true,
669
+ "overlap_results": [
670
+ 1
671
+ ],
672
+ "previous_origin": [
673
+ 2147483648,
674
+ 2143289345,
675
+ 2139095039
676
+ ],
677
+ "saved_vector": [
678
+ 4294967295,
679
+ 0,
680
+ 305419896
681
+ ],
682
+ "values": [
683
+ 4294967271,
684
+ 4294967270,
685
+ 2,
686
+ 1,
687
+ 1,
688
+ 2147483648,
689
+ 2147483649,
690
+ 0
691
+ ]
692
+ }
693
+ },
694
+ {
695
+ "rust": {
696
+ "client_bound": true,
697
+ "client_state": [
698
+ 1,
699
+ 0,
700
+ 2,
701
+ 0
702
+ ],
703
+ "command": [
704
+ 10050,
705
+ 1,
706
+ 2,
707
+ 3,
708
+ 4,
709
+ 4278190122
710
+ ],
711
+ "copied": [
712
+ 10050,
713
+ 1,
714
+ 2,
715
+ 3,
716
+ 4,
717
+ 4278190122
718
+ ],
719
+ "events": [
720
+ {
721
+ "count": 268,
722
+ "offset": 56,
723
+ "op": "zero"
724
+ },
725
+ {
726
+ "op": "callback",
727
+ "slot": 2,
728
+ "target": 152792
729
+ },
730
+ {
731
+ "op": "callback",
732
+ "slot": 2,
733
+ "target": 152673
734
+ }
735
+ ],
736
+ "guards": [
737
+ 2864434397,
738
+ 287454020,
739
+ 1432778632,
740
+ 2578103244
741
+ ],
742
+ "linked": true,
743
+ "mask": 65537,
744
+ "other_linked": true,
745
+ "overlap_results": [
746
+ 1
747
+ ],
748
+ "previous_origin": [
749
+ 2147483648,
750
+ 2143289345,
751
+ 2139095039
752
+ ],
753
+ "saved_vector": [
754
+ 4294967295,
755
+ 0,
756
+ 305419896
757
+ ],
758
+ "values": [
759
+ 4294967271,
760
+ 4294967270,
761
+ 2,
762
+ 1,
763
+ 1,
764
+ 2147483648,
765
+ 2147483649,
766
+ 0
767
+ ]
768
+ },
769
+ "source": {
770
+ "client_bound": true,
771
+ "client_state": [
772
+ 1,
773
+ 0,
774
+ 2,
775
+ 0
776
+ ],
777
+ "command": [
778
+ 10050,
779
+ 1,
780
+ 2,
781
+ 3,
782
+ 4,
783
+ 4278190122
784
+ ],
785
+ "copied": [
786
+ 10050,
787
+ 1,
788
+ 2,
789
+ 3,
790
+ 4,
791
+ 4278190122
792
+ ],
793
+ "events": [
794
+ {
795
+ "count": 268,
796
+ "offset": 56,
797
+ "op": "zero"
798
+ },
799
+ {
800
+ "op": "callback",
801
+ "slot": 2,
802
+ "target": 152792
803
+ },
804
+ {
805
+ "op": "callback",
806
+ "slot": 2,
807
+ "target": 152673
808
+ }
809
+ ],
810
+ "guards": [
811
+ 2864434397,
812
+ 287454020,
813
+ 1432778632,
814
+ 2578103244
815
+ ],
816
+ "linked": true,
817
+ "mask": 65537,
818
+ "other_linked": true,
819
+ "overlap_results": [
820
+ 1
821
+ ],
822
+ "previous_origin": [
823
+ 2147483648,
824
+ 2143289345,
825
+ 2139095039
826
+ ],
827
+ "saved_vector": [
828
+ 4294967295,
829
+ 0,
830
+ 305419896
831
+ ],
832
+ "values": [
833
+ 4294967271,
834
+ 4294967270,
835
+ 2,
836
+ 1,
837
+ 1,
838
+ 2147483648,
839
+ 2147483649,
840
+ 0
841
+ ]
842
+ }
843
+ },
844
+ {
845
+ "rust": {
846
+ "client_bound": true,
847
+ "client_state": [
848
+ 0,
849
+ 0,
850
+ 2,
851
+ 0
852
+ ],
853
+ "command": [
854
+ 10050,
855
+ 2864434397,
856
+ 2147483648,
857
+ 4294967295,
858
+ 2271560481,
859
+ 2139062570
860
+ ],
861
+ "copied": [
862
+ 10050,
863
+ 2864434397,
864
+ 2147483648,
865
+ 4294967295,
866
+ 2271560481,
867
+ 2139062570
868
+ ],
869
+ "events": [
870
+ {
871
+ "count": 268,
872
+ "offset": 56,
873
+ "op": "zero"
874
+ }
875
+ ],
876
+ "guards": [
877
+ 2864434397,
878
+ 287454020,
879
+ 1432778632,
880
+ 2578103244
881
+ ],
882
+ "linked": true,
883
+ "mask": 65537,
884
+ "other_linked": true,
885
+ "overlap_results": [
886
+ 1
887
+ ],
888
+ "previous_origin": [
889
+ 2147483648,
890
+ 2143289345,
891
+ 2139095039
892
+ ],
893
+ "saved_vector": [
894
+ 4294967295,
895
+ 0,
896
+ 305419896
897
+ ],
898
+ "values": [
899
+ 4294967271,
900
+ 4294967270,
901
+ 2,
902
+ 1,
903
+ 1,
904
+ 2147483648,
905
+ 2147483649,
906
+ 0
907
+ ]
908
+ },
909
+ "source": {
910
+ "client_bound": true,
911
+ "client_state": [
912
+ 0,
913
+ 0,
914
+ 2,
915
+ 0
916
+ ],
917
+ "command": [
918
+ 10050,
919
+ 2864434397,
920
+ 2147483648,
921
+ 4294967295,
922
+ 2271560481,
923
+ 2139062570
924
+ ],
925
+ "copied": [
926
+ 10050,
927
+ 2864434397,
928
+ 2147483648,
929
+ 4294967295,
930
+ 2271560481,
931
+ 2139062570
932
+ ],
933
+ "events": [
934
+ {
935
+ "count": 268,
936
+ "offset": 56,
937
+ "op": "zero"
938
+ }
939
+ ],
940
+ "guards": [
941
+ 2864434397,
942
+ 287454020,
943
+ 1432778632,
944
+ 2578103244
945
+ ],
946
+ "linked": true,
947
+ "mask": 65537,
948
+ "other_linked": true,
949
+ "overlap_results": [
950
+ 1
951
+ ],
952
+ "previous_origin": [
953
+ 2147483648,
954
+ 2143289345,
955
+ 2139095039
956
+ ],
957
+ "saved_vector": [
958
+ 4294967295,
959
+ 0,
960
+ 305419896
961
+ ],
962
+ "values": [
963
+ 4294967271,
964
+ 4294967270,
965
+ 2,
966
+ 1,
967
+ 1,
968
+ 2147483648,
969
+ 2147483649,
970
+ 0
971
+ ]
972
+ }
973
+ },
974
+ {
975
+ "rust": {
976
+ "client_bound": true,
977
+ "client_state": [
978
+ 0,
979
+ 0,
980
+ 2,
981
+ 0
982
+ ],
983
+ "command": [
984
+ 10050,
985
+ 2864434397,
986
+ 2147483648,
987
+ 4294967295,
988
+ 2271560481,
989
+ 2139062570
990
+ ],
991
+ "copied": [
992
+ 10050,
993
+ 2864434397,
994
+ 2147483648,
995
+ 4294967295,
996
+ 2271560481,
997
+ 2139062570
998
+ ],
999
+ "events": [
1000
+ {
1001
+ "count": 268,
1002
+ "offset": 56,
1003
+ "op": "zero"
1004
+ },
1005
+ {
1006
+ "op": "callback",
1007
+ "slot": 2,
1008
+ "target": 153419
1009
+ }
1010
+ ],
1011
+ "guards": [
1012
+ 2864434397,
1013
+ 287454020,
1014
+ 1432778632,
1015
+ 2578103244
1016
+ ],
1017
+ "linked": true,
1018
+ "mask": 65537,
1019
+ "other_linked": true,
1020
+ "overlap_results": [
1021
+ 1
1022
+ ],
1023
+ "previous_origin": [
1024
+ 2147483648,
1025
+ 2143289345,
1026
+ 2139095039
1027
+ ],
1028
+ "saved_vector": [
1029
+ 4294967295,
1030
+ 0,
1031
+ 305419896
1032
+ ],
1033
+ "values": [
1034
+ 4294967271,
1035
+ 4294967270,
1036
+ 2,
1037
+ 1,
1038
+ 1,
1039
+ 2147483648,
1040
+ 2147483649,
1041
+ 0
1042
+ ]
1043
+ },
1044
+ "source": {
1045
+ "client_bound": true,
1046
+ "client_state": [
1047
+ 0,
1048
+ 0,
1049
+ 2,
1050
+ 0
1051
+ ],
1052
+ "command": [
1053
+ 10050,
1054
+ 2864434397,
1055
+ 2147483648,
1056
+ 4294967295,
1057
+ 2271560481,
1058
+ 2139062570
1059
+ ],
1060
+ "copied": [
1061
+ 10050,
1062
+ 2864434397,
1063
+ 2147483648,
1064
+ 4294967295,
1065
+ 2271560481,
1066
+ 2139062570
1067
+ ],
1068
+ "events": [
1069
+ {
1070
+ "count": 268,
1071
+ "offset": 56,
1072
+ "op": "zero"
1073
+ },
1074
+ {
1075
+ "op": "callback",
1076
+ "slot": 2,
1077
+ "target": 153419
1078
+ }
1079
+ ],
1080
+ "guards": [
1081
+ 2864434397,
1082
+ 287454020,
1083
+ 1432778632,
1084
+ 2578103244
1085
+ ],
1086
+ "linked": true,
1087
+ "mask": 65537,
1088
+ "other_linked": true,
1089
+ "overlap_results": [
1090
+ 1
1091
+ ],
1092
+ "previous_origin": [
1093
+ 2147483648,
1094
+ 2143289345,
1095
+ 2139095039
1096
+ ],
1097
+ "saved_vector": [
1098
+ 4294967295,
1099
+ 0,
1100
+ 305419896
1101
+ ],
1102
+ "values": [
1103
+ 4294967271,
1104
+ 4294967270,
1105
+ 2,
1106
+ 1,
1107
+ 1,
1108
+ 2147483648,
1109
+ 2147483649,
1110
+ 0
1111
+ ]
1112
+ }
1113
+ },
1114
+ {
1115
+ "rust": {
1116
+ "client_bound": true,
1117
+ "client_state": [
1118
+ 0,
1119
+ 0,
1120
+ 2,
1121
+ 0
1122
+ ],
1123
+ "command": [
1124
+ 10050,
1125
+ 2864434397,
1126
+ 2147483648,
1127
+ 4294967295,
1128
+ 2271560481,
1129
+ 2139062570
1130
+ ],
1131
+ "copied": [
1132
+ 10050,
1133
+ 2864434397,
1134
+ 2147483648,
1135
+ 4294967295,
1136
+ 2271560481,
1137
+ 2139062570
1138
+ ],
1139
+ "events": [
1140
+ {
1141
+ "count": 268,
1142
+ "offset": 56,
1143
+ "op": "zero"
1144
+ },
1145
+ {
1146
+ "op": "callback",
1147
+ "slot": 2,
1148
+ "target": 152792
1149
+ },
1150
+ {
1151
+ "op": "callback",
1152
+ "slot": 2,
1153
+ "target": 152673
1154
+ }
1155
+ ],
1156
+ "guards": [
1157
+ 2864434397,
1158
+ 287454020,
1159
+ 1432778632,
1160
+ 2578103244
1161
+ ],
1162
+ "linked": true,
1163
+ "mask": 65537,
1164
+ "other_linked": true,
1165
+ "overlap_results": [
1166
+ 1
1167
+ ],
1168
+ "previous_origin": [
1169
+ 2147483648,
1170
+ 2143289345,
1171
+ 2139095039
1172
+ ],
1173
+ "saved_vector": [
1174
+ 4294967295,
1175
+ 0,
1176
+ 305419896
1177
+ ],
1178
+ "values": [
1179
+ 4294967271,
1180
+ 4294967270,
1181
+ 2,
1182
+ 1,
1183
+ 1,
1184
+ 2147483648,
1185
+ 2147483649,
1186
+ 0
1187
+ ]
1188
+ },
1189
+ "source": {
1190
+ "client_bound": true,
1191
+ "client_state": [
1192
+ 0,
1193
+ 0,
1194
+ 2,
1195
+ 0
1196
+ ],
1197
+ "command": [
1198
+ 10050,
1199
+ 2864434397,
1200
+ 2147483648,
1201
+ 4294967295,
1202
+ 2271560481,
1203
+ 2139062570
1204
+ ],
1205
+ "copied": [
1206
+ 10050,
1207
+ 2864434397,
1208
+ 2147483648,
1209
+ 4294967295,
1210
+ 2271560481,
1211
+ 2139062570
1212
+ ],
1213
+ "events": [
1214
+ {
1215
+ "count": 268,
1216
+ "offset": 56,
1217
+ "op": "zero"
1218
+ },
1219
+ {
1220
+ "op": "callback",
1221
+ "slot": 2,
1222
+ "target": 152792
1223
+ },
1224
+ {
1225
+ "op": "callback",
1226
+ "slot": 2,
1227
+ "target": 152673
1228
+ }
1229
+ ],
1230
+ "guards": [
1231
+ 2864434397,
1232
+ 287454020,
1233
+ 1432778632,
1234
+ 2578103244
1235
+ ],
1236
+ "linked": true,
1237
+ "mask": 65537,
1238
+ "other_linked": true,
1239
+ "overlap_results": [
1240
+ 1
1241
+ ],
1242
+ "previous_origin": [
1243
+ 2147483648,
1244
+ 2143289345,
1245
+ 2139095039
1246
+ ],
1247
+ "saved_vector": [
1248
+ 4294967295,
1249
+ 0,
1250
+ 305419896
1251
+ ],
1252
+ "values": [
1253
+ 4294967271,
1254
+ 4294967270,
1255
+ 2,
1256
+ 1,
1257
+ 1,
1258
+ 2147483648,
1259
+ 2147483649,
1260
+ 0
1261
+ ]
1262
+ }
1263
+ },
1264
+ {
1265
+ "rust": {
1266
+ "client_bound": true,
1267
+ "client_state": [
1268
+ 1,
1269
+ 1,
1270
+ 2,
1271
+ 0
1272
+ ],
1273
+ "command": [
1274
+ 10050,
1275
+ 2864434397,
1276
+ 2147483648,
1277
+ 4294967295,
1278
+ 2271560481,
1279
+ 2139062570
1280
+ ],
1281
+ "copied": [
1282
+ 10050,
1283
+ 2864434397,
1284
+ 2147483648,
1285
+ 4294967295,
1286
+ 2271560481,
1287
+ 2139062570
1288
+ ],
1289
+ "events": [
1290
+ {
1291
+ "count": 268,
1292
+ "offset": 56,
1293
+ "op": "zero"
1294
+ }
1295
+ ],
1296
+ "guards": [
1297
+ 2864434397,
1298
+ 287454020,
1299
+ 1432778632,
1300
+ 2578103244
1301
+ ],
1302
+ "linked": true,
1303
+ "mask": 65537,
1304
+ "other_linked": true,
1305
+ "overlap_results": [
1306
+ 1
1307
+ ],
1308
+ "previous_origin": [
1309
+ 2147483648,
1310
+ 2143289345,
1311
+ 2139095039
1312
+ ],
1313
+ "saved_vector": [
1314
+ 4294967295,
1315
+ 0,
1316
+ 305419896
1317
+ ],
1318
+ "values": [
1319
+ 4294967271,
1320
+ 4294967270,
1321
+ 2,
1322
+ 1,
1323
+ 1,
1324
+ 2147483648,
1325
+ 2147483649,
1326
+ 0
1327
+ ]
1328
+ },
1329
+ "source": {
1330
+ "client_bound": true,
1331
+ "client_state": [
1332
+ 1,
1333
+ 1,
1334
+ 2,
1335
+ 0
1336
+ ],
1337
+ "command": [
1338
+ 10050,
1339
+ 2864434397,
1340
+ 2147483648,
1341
+ 4294967295,
1342
+ 2271560481,
1343
+ 2139062570
1344
+ ],
1345
+ "copied": [
1346
+ 10050,
1347
+ 2864434397,
1348
+ 2147483648,
1349
+ 4294967295,
1350
+ 2271560481,
1351
+ 2139062570
1352
+ ],
1353
+ "events": [
1354
+ {
1355
+ "count": 268,
1356
+ "offset": 56,
1357
+ "op": "zero"
1358
+ }
1359
+ ],
1360
+ "guards": [
1361
+ 2864434397,
1362
+ 287454020,
1363
+ 1432778632,
1364
+ 2578103244
1365
+ ],
1366
+ "linked": true,
1367
+ "mask": 65537,
1368
+ "other_linked": true,
1369
+ "overlap_results": [
1370
+ 1
1371
+ ],
1372
+ "previous_origin": [
1373
+ 2147483648,
1374
+ 2143289345,
1375
+ 2139095039
1376
+ ],
1377
+ "saved_vector": [
1378
+ 4294967295,
1379
+ 0,
1380
+ 305419896
1381
+ ],
1382
+ "values": [
1383
+ 4294967271,
1384
+ 4294967270,
1385
+ 2,
1386
+ 1,
1387
+ 1,
1388
+ 2147483648,
1389
+ 2147483649,
1390
+ 0
1391
+ ]
1392
+ }
1393
+ },
1394
+ {
1395
+ "rust": {
1396
+ "client_bound": true,
1397
+ "client_state": [
1398
+ 1,
1399
+ 1,
1400
+ 2,
1401
+ 0
1402
+ ],
1403
+ "command": [
1404
+ 10050,
1405
+ 2864434397,
1406
+ 2147483648,
1407
+ 4294967295,
1408
+ 2271560481,
1409
+ 2139062570
1410
+ ],
1411
+ "copied": [
1412
+ 10050,
1413
+ 2864434397,
1414
+ 2147483648,
1415
+ 4294967295,
1416
+ 2271560481,
1417
+ 2139062570
1418
+ ],
1419
+ "events": [
1420
+ {
1421
+ "count": 268,
1422
+ "offset": 56,
1423
+ "op": "zero"
1424
+ },
1425
+ {
1426
+ "op": "callback",
1427
+ "slot": 2,
1428
+ "target": 153419
1429
+ }
1430
+ ],
1431
+ "guards": [
1432
+ 2864434397,
1433
+ 287454020,
1434
+ 1432778632,
1435
+ 2578103244
1436
+ ],
1437
+ "linked": true,
1438
+ "mask": 65537,
1439
+ "other_linked": true,
1440
+ "overlap_results": [
1441
+ 1
1442
+ ],
1443
+ "previous_origin": [
1444
+ 2147483648,
1445
+ 2143289345,
1446
+ 2139095039
1447
+ ],
1448
+ "saved_vector": [
1449
+ 4294967295,
1450
+ 0,
1451
+ 305419896
1452
+ ],
1453
+ "values": [
1454
+ 4294967271,
1455
+ 4294967270,
1456
+ 2,
1457
+ 1,
1458
+ 1,
1459
+ 2147483648,
1460
+ 2147483649,
1461
+ 0
1462
+ ]
1463
+ },
1464
+ "source": {
1465
+ "client_bound": true,
1466
+ "client_state": [
1467
+ 1,
1468
+ 1,
1469
+ 2,
1470
+ 0
1471
+ ],
1472
+ "command": [
1473
+ 10050,
1474
+ 2864434397,
1475
+ 2147483648,
1476
+ 4294967295,
1477
+ 2271560481,
1478
+ 2139062570
1479
+ ],
1480
+ "copied": [
1481
+ 10050,
1482
+ 2864434397,
1483
+ 2147483648,
1484
+ 4294967295,
1485
+ 2271560481,
1486
+ 2139062570
1487
+ ],
1488
+ "events": [
1489
+ {
1490
+ "count": 268,
1491
+ "offset": 56,
1492
+ "op": "zero"
1493
+ },
1494
+ {
1495
+ "op": "callback",
1496
+ "slot": 2,
1497
+ "target": 153419
1498
+ }
1499
+ ],
1500
+ "guards": [
1501
+ 2864434397,
1502
+ 287454020,
1503
+ 1432778632,
1504
+ 2578103244
1505
+ ],
1506
+ "linked": true,
1507
+ "mask": 65537,
1508
+ "other_linked": true,
1509
+ "overlap_results": [
1510
+ 1
1511
+ ],
1512
+ "previous_origin": [
1513
+ 2147483648,
1514
+ 2143289345,
1515
+ 2139095039
1516
+ ],
1517
+ "saved_vector": [
1518
+ 4294967295,
1519
+ 0,
1520
+ 305419896
1521
+ ],
1522
+ "values": [
1523
+ 4294967271,
1524
+ 4294967270,
1525
+ 2,
1526
+ 1,
1527
+ 1,
1528
+ 2147483648,
1529
+ 2147483649,
1530
+ 0
1531
+ ]
1532
+ }
1533
+ },
1534
+ {
1535
+ "rust": {
1536
+ "client_bound": true,
1537
+ "client_state": [
1538
+ 1,
1539
+ 1,
1540
+ 2,
1541
+ 0
1542
+ ],
1543
+ "command": [
1544
+ 10050,
1545
+ 2864434397,
1546
+ 2147483648,
1547
+ 4294967295,
1548
+ 2271560481,
1549
+ 2139062570
1550
+ ],
1551
+ "copied": [
1552
+ 10050,
1553
+ 2864434397,
1554
+ 2147483648,
1555
+ 4294967295,
1556
+ 2271560481,
1557
+ 2139062570
1558
+ ],
1559
+ "events": [
1560
+ {
1561
+ "count": 268,
1562
+ "offset": 56,
1563
+ "op": "zero"
1564
+ },
1565
+ {
1566
+ "op": "callback",
1567
+ "slot": 2,
1568
+ "target": 152792
1569
+ },
1570
+ {
1571
+ "op": "callback",
1572
+ "slot": 2,
1573
+ "target": 152673
1574
+ }
1575
+ ],
1576
+ "guards": [
1577
+ 2864434397,
1578
+ 287454020,
1579
+ 1432778632,
1580
+ 2578103244
1581
+ ],
1582
+ "linked": true,
1583
+ "mask": 65537,
1584
+ "other_linked": true,
1585
+ "overlap_results": [
1586
+ 1
1587
+ ],
1588
+ "previous_origin": [
1589
+ 2147483648,
1590
+ 2143289345,
1591
+ 2139095039
1592
+ ],
1593
+ "saved_vector": [
1594
+ 4294967295,
1595
+ 0,
1596
+ 305419896
1597
+ ],
1598
+ "values": [
1599
+ 4294967271,
1600
+ 4294967270,
1601
+ 2,
1602
+ 1,
1603
+ 1,
1604
+ 2147483648,
1605
+ 2147483649,
1606
+ 0
1607
+ ]
1608
+ },
1609
+ "source": {
1610
+ "client_bound": true,
1611
+ "client_state": [
1612
+ 1,
1613
+ 1,
1614
+ 2,
1615
+ 0
1616
+ ],
1617
+ "command": [
1618
+ 10050,
1619
+ 2864434397,
1620
+ 2147483648,
1621
+ 4294967295,
1622
+ 2271560481,
1623
+ 2139062570
1624
+ ],
1625
+ "copied": [
1626
+ 10050,
1627
+ 2864434397,
1628
+ 2147483648,
1629
+ 4294967295,
1630
+ 2271560481,
1631
+ 2139062570
1632
+ ],
1633
+ "events": [
1634
+ {
1635
+ "count": 268,
1636
+ "offset": 56,
1637
+ "op": "zero"
1638
+ },
1639
+ {
1640
+ "op": "callback",
1641
+ "slot": 2,
1642
+ "target": 152792
1643
+ },
1644
+ {
1645
+ "op": "callback",
1646
+ "slot": 2,
1647
+ "target": 152673
1648
+ }
1649
+ ],
1650
+ "guards": [
1651
+ 2864434397,
1652
+ 287454020,
1653
+ 1432778632,
1654
+ 2578103244
1655
+ ],
1656
+ "linked": true,
1657
+ "mask": 65537,
1658
+ "other_linked": true,
1659
+ "overlap_results": [
1660
+ 1
1661
+ ],
1662
+ "previous_origin": [
1663
+ 2147483648,
1664
+ 2143289345,
1665
+ 2139095039
1666
+ ],
1667
+ "saved_vector": [
1668
+ 4294967295,
1669
+ 0,
1670
+ 305419896
1671
+ ],
1672
+ "values": [
1673
+ 4294967271,
1674
+ 4294967270,
1675
+ 2,
1676
+ 1,
1677
+ 1,
1678
+ 2147483648,
1679
+ 2147483649,
1680
+ 0
1681
+ ]
1682
+ }
1683
+ },
1684
+ {
1685
+ "rust": {
1686
+ "client_bound": true,
1687
+ "client_state": [
1688
+ 1,
1689
+ 0,
1690
+ 2,
1691
+ 0
1692
+ ],
1693
+ "command": [
1694
+ 10050,
1695
+ 2864434397,
1696
+ 2147483648,
1697
+ 4294967295,
1698
+ 2271560481,
1699
+ 42
1700
+ ],
1701
+ "copied": [
1702
+ 10050,
1703
+ 2864434397,
1704
+ 2147483648,
1705
+ 4294967295,
1706
+ 2271560481,
1707
+ 42
1708
+ ],
1709
+ "events": [
1710
+ {
1711
+ "count": 268,
1712
+ "offset": 56,
1713
+ "op": "zero"
1714
+ }
1715
+ ],
1716
+ "guards": [
1717
+ 2864434397,
1718
+ 287454020,
1719
+ 1432778632,
1720
+ 2578103244
1721
+ ],
1722
+ "linked": false,
1723
+ "mask": 33619969,
1724
+ "other_linked": false,
1725
+ "overlap_results": [
1726
+ 0
1727
+ ],
1728
+ "previous_origin": [
1729
+ 2147483648,
1730
+ 2143289345,
1731
+ 2139095039
1732
+ ],
1733
+ "saved_vector": [
1734
+ 4294967295,
1735
+ 0,
1736
+ 305419896
1737
+ ],
1738
+ "values": [
1739
+ 4294967271,
1740
+ 4294967270,
1741
+ 2,
1742
+ 1,
1743
+ 1,
1744
+ 2147483648,
1745
+ 2147483649,
1746
+ 0
1747
+ ]
1748
+ },
1749
+ "source": {
1750
+ "client_bound": true,
1751
+ "client_state": [
1752
+ 1,
1753
+ 0,
1754
+ 2,
1755
+ 0
1756
+ ],
1757
+ "command": [
1758
+ 10050,
1759
+ 2864434397,
1760
+ 2147483648,
1761
+ 4294967295,
1762
+ 2271560481,
1763
+ 42
1764
+ ],
1765
+ "copied": [
1766
+ 10050,
1767
+ 2864434397,
1768
+ 2147483648,
1769
+ 4294967295,
1770
+ 2271560481,
1771
+ 42
1772
+ ],
1773
+ "events": [
1774
+ {
1775
+ "count": 268,
1776
+ "offset": 56,
1777
+ "op": "zero"
1778
+ }
1779
+ ],
1780
+ "guards": [
1781
+ 2864434397,
1782
+ 287454020,
1783
+ 1432778632,
1784
+ 2578103244
1785
+ ],
1786
+ "linked": false,
1787
+ "mask": 33619969,
1788
+ "other_linked": false,
1789
+ "overlap_results": [
1790
+ 0
1791
+ ],
1792
+ "previous_origin": [
1793
+ 2147483648,
1794
+ 2143289345,
1795
+ 2139095039
1796
+ ],
1797
+ "saved_vector": [
1798
+ 4294967295,
1799
+ 0,
1800
+ 305419896
1801
+ ],
1802
+ "values": [
1803
+ 4294967271,
1804
+ 4294967270,
1805
+ 2,
1806
+ 1,
1807
+ 1,
1808
+ 2147483648,
1809
+ 2147483649,
1810
+ 0
1811
+ ]
1812
+ }
1813
+ },
1814
+ {
1815
+ "rust": {
1816
+ "client_bound": true,
1817
+ "client_state": [
1818
+ 1,
1819
+ 0,
1820
+ 2,
1821
+ 0
1822
+ ],
1823
+ "command": [
1824
+ 10050,
1825
+ 2864434397,
1826
+ 2147483648,
1827
+ 4294967295,
1828
+ 2271560481,
1829
+ 42
1830
+ ],
1831
+ "copied": [
1832
+ 10050,
1833
+ 2864434397,
1834
+ 2147483648,
1835
+ 4294967295,
1836
+ 2271560481,
1837
+ 42
1838
+ ],
1839
+ "events": [
1840
+ {
1841
+ "count": 268,
1842
+ "offset": 56,
1843
+ "op": "zero"
1844
+ },
1845
+ {
1846
+ "op": "callback",
1847
+ "slot": 2,
1848
+ "target": 153419
1849
+ }
1850
+ ],
1851
+ "guards": [
1852
+ 2864434397,
1853
+ 287454020,
1854
+ 1432778632,
1855
+ 2578103244
1856
+ ],
1857
+ "linked": false,
1858
+ "mask": 33619969,
1859
+ "other_linked": false,
1860
+ "overlap_results": [
1861
+ 0
1862
+ ],
1863
+ "previous_origin": [
1864
+ 2147483648,
1865
+ 2143289345,
1866
+ 2139095039
1867
+ ],
1868
+ "saved_vector": [
1869
+ 4294967295,
1870
+ 0,
1871
+ 305419896
1872
+ ],
1873
+ "values": [
1874
+ 4294967271,
1875
+ 4294967270,
1876
+ 2,
1877
+ 1,
1878
+ 1,
1879
+ 2147483648,
1880
+ 2147483649,
1881
+ 0
1882
+ ]
1883
+ },
1884
+ "source": {
1885
+ "client_bound": true,
1886
+ "client_state": [
1887
+ 1,
1888
+ 0,
1889
+ 2,
1890
+ 0
1891
+ ],
1892
+ "command": [
1893
+ 10050,
1894
+ 2864434397,
1895
+ 2147483648,
1896
+ 4294967295,
1897
+ 2271560481,
1898
+ 42
1899
+ ],
1900
+ "copied": [
1901
+ 10050,
1902
+ 2864434397,
1903
+ 2147483648,
1904
+ 4294967295,
1905
+ 2271560481,
1906
+ 42
1907
+ ],
1908
+ "events": [
1909
+ {
1910
+ "count": 268,
1911
+ "offset": 56,
1912
+ "op": "zero"
1913
+ },
1914
+ {
1915
+ "op": "callback",
1916
+ "slot": 2,
1917
+ "target": 153419
1918
+ }
1919
+ ],
1920
+ "guards": [
1921
+ 2864434397,
1922
+ 287454020,
1923
+ 1432778632,
1924
+ 2578103244
1925
+ ],
1926
+ "linked": false,
1927
+ "mask": 33619969,
1928
+ "other_linked": false,
1929
+ "overlap_results": [
1930
+ 0
1931
+ ],
1932
+ "previous_origin": [
1933
+ 2147483648,
1934
+ 2143289345,
1935
+ 2139095039
1936
+ ],
1937
+ "saved_vector": [
1938
+ 4294967295,
1939
+ 0,
1940
+ 305419896
1941
+ ],
1942
+ "values": [
1943
+ 4294967271,
1944
+ 4294967270,
1945
+ 2,
1946
+ 1,
1947
+ 1,
1948
+ 2147483648,
1949
+ 2147483649,
1950
+ 0
1951
+ ]
1952
+ }
1953
+ },
1954
+ {
1955
+ "rust": {
1956
+ "client_bound": true,
1957
+ "client_state": [
1958
+ 1,
1959
+ 0,
1960
+ 2,
1961
+ 0
1962
+ ],
1963
+ "command": [
1964
+ 10050,
1965
+ 2864434397,
1966
+ 2147483648,
1967
+ 4294967295,
1968
+ 2271560481,
1969
+ 42
1970
+ ],
1971
+ "copied": [
1972
+ 10050,
1973
+ 2864434397,
1974
+ 2147483648,
1975
+ 4294967295,
1976
+ 2271560481,
1977
+ 42
1978
+ ],
1979
+ "events": [
1980
+ {
1981
+ "count": 268,
1982
+ "offset": 56,
1983
+ "op": "zero"
1984
+ },
1985
+ {
1986
+ "op": "callback",
1987
+ "slot": 2,
1988
+ "target": 152792
1989
+ },
1990
+ {
1991
+ "op": "callback",
1992
+ "slot": 2,
1993
+ "target": 152673
1994
+ }
1995
+ ],
1996
+ "guards": [
1997
+ 2864434397,
1998
+ 287454020,
1999
+ 1432778632,
2000
+ 2578103244
2001
+ ],
2002
+ "linked": false,
2003
+ "mask": 33619969,
2004
+ "other_linked": false,
2005
+ "overlap_results": [
2006
+ 0
2007
+ ],
2008
+ "previous_origin": [
2009
+ 2147483648,
2010
+ 2143289345,
2011
+ 2139095039
2012
+ ],
2013
+ "saved_vector": [
2014
+ 4294967295,
2015
+ 0,
2016
+ 305419896
2017
+ ],
2018
+ "values": [
2019
+ 4294967271,
2020
+ 4294967270,
2021
+ 2,
2022
+ 1,
2023
+ 1,
2024
+ 2147483648,
2025
+ 2147483649,
2026
+ 0
2027
+ ]
2028
+ },
2029
+ "source": {
2030
+ "client_bound": true,
2031
+ "client_state": [
2032
+ 1,
2033
+ 0,
2034
+ 2,
2035
+ 0
2036
+ ],
2037
+ "command": [
2038
+ 10050,
2039
+ 2864434397,
2040
+ 2147483648,
2041
+ 4294967295,
2042
+ 2271560481,
2043
+ 42
2044
+ ],
2045
+ "copied": [
2046
+ 10050,
2047
+ 2864434397,
2048
+ 2147483648,
2049
+ 4294967295,
2050
+ 2271560481,
2051
+ 42
2052
+ ],
2053
+ "events": [
2054
+ {
2055
+ "count": 268,
2056
+ "offset": 56,
2057
+ "op": "zero"
2058
+ },
2059
+ {
2060
+ "op": "callback",
2061
+ "slot": 2,
2062
+ "target": 152792
2063
+ },
2064
+ {
2065
+ "op": "callback",
2066
+ "slot": 2,
2067
+ "target": 152673
2068
+ }
2069
+ ],
2070
+ "guards": [
2071
+ 2864434397,
2072
+ 287454020,
2073
+ 1432778632,
2074
+ 2578103244
2075
+ ],
2076
+ "linked": false,
2077
+ "mask": 33619969,
2078
+ "other_linked": false,
2079
+ "overlap_results": [
2080
+ 0
2081
+ ],
2082
+ "previous_origin": [
2083
+ 2147483648,
2084
+ 2143289345,
2085
+ 2139095039
2086
+ ],
2087
+ "saved_vector": [
2088
+ 4294967295,
2089
+ 0,
2090
+ 305419896
2091
+ ],
2092
+ "values": [
2093
+ 4294967271,
2094
+ 4294967270,
2095
+ 2,
2096
+ 1,
2097
+ 1,
2098
+ 2147483648,
2099
+ 2147483649,
2100
+ 0
2101
+ ]
2102
+ }
2103
+ },
2104
+ {
2105
+ "rust": {
2106
+ "client_bound": true,
2107
+ "client_state": [
2108
+ 1,
2109
+ 0,
2110
+ 2,
2111
+ 0
2112
+ ],
2113
+ "command": [
2114
+ 10050,
2115
+ 2864434397,
2116
+ 2147483648,
2117
+ 4294967295,
2118
+ 2271560481,
2119
+ 42
2120
+ ],
2121
+ "copied": [
2122
+ 10050,
2123
+ 2864434397,
2124
+ 2147483648,
2125
+ 4294967295,
2126
+ 2271560481,
2127
+ 42
2128
+ ],
2129
+ "events": [
2130
+ {
2131
+ "count": 268,
2132
+ "offset": 56,
2133
+ "op": "zero"
2134
+ }
2135
+ ],
2136
+ "guards": [
2137
+ 2864434397,
2138
+ 287454020,
2139
+ 1432778632,
2140
+ 2578103244
2141
+ ],
2142
+ "linked": false,
2143
+ "mask": 37814273,
2144
+ "other_linked": true,
2145
+ "overlap_results": [],
2146
+ "previous_origin": [
2147
+ 2147483648,
2148
+ 2143289345,
2149
+ 2139095039
2150
+ ],
2151
+ "saved_vector": [
2152
+ 4294967295,
2153
+ 0,
2154
+ 305419896
2155
+ ],
2156
+ "values": [
2157
+ 4294967271,
2158
+ 4294967270,
2159
+ 2,
2160
+ 1,
2161
+ 1,
2162
+ 2147483648,
2163
+ 2147483649,
2164
+ 0
2165
+ ]
2166
+ },
2167
+ "source": {
2168
+ "client_bound": true,
2169
+ "client_state": [
2170
+ 1,
2171
+ 0,
2172
+ 2,
2173
+ 0
2174
+ ],
2175
+ "command": [
2176
+ 10050,
2177
+ 2864434397,
2178
+ 2147483648,
2179
+ 4294967295,
2180
+ 2271560481,
2181
+ 42
2182
+ ],
2183
+ "copied": [
2184
+ 10050,
2185
+ 2864434397,
2186
+ 2147483648,
2187
+ 4294967295,
2188
+ 2271560481,
2189
+ 42
2190
+ ],
2191
+ "events": [
2192
+ {
2193
+ "count": 268,
2194
+ "offset": 56,
2195
+ "op": "zero"
2196
+ }
2197
+ ],
2198
+ "guards": [
2199
+ 2864434397,
2200
+ 287454020,
2201
+ 1432778632,
2202
+ 2578103244
2203
+ ],
2204
+ "linked": false,
2205
+ "mask": 37814273,
2206
+ "other_linked": true,
2207
+ "overlap_results": [],
2208
+ "previous_origin": [
2209
+ 2147483648,
2210
+ 2143289345,
2211
+ 2139095039
2212
+ ],
2213
+ "saved_vector": [
2214
+ 4294967295,
2215
+ 0,
2216
+ 305419896
2217
+ ],
2218
+ "values": [
2219
+ 4294967271,
2220
+ 4294967270,
2221
+ 2,
2222
+ 1,
2223
+ 1,
2224
+ 2147483648,
2225
+ 2147483649,
2226
+ 0
2227
+ ]
2228
+ }
2229
+ },
2230
+ {
2231
+ "rust": {
2232
+ "client_bound": true,
2233
+ "client_state": [
2234
+ 1,
2235
+ 0,
2236
+ 2,
2237
+ 0
2238
+ ],
2239
+ "command": [
2240
+ 10050,
2241
+ 2864434397,
2242
+ 2147483648,
2243
+ 4294967295,
2244
+ 2271560481,
2245
+ 42
2246
+ ],
2247
+ "copied": [
2248
+ 10050,
2249
+ 2864434397,
2250
+ 2147483648,
2251
+ 4294967295,
2252
+ 2271560481,
2253
+ 42
2254
+ ],
2255
+ "events": [
2256
+ {
2257
+ "count": 268,
2258
+ "offset": 56,
2259
+ "op": "zero"
2260
+ },
2261
+ {
2262
+ "op": "callback",
2263
+ "slot": 2,
2264
+ "target": 153419
2265
+ }
2266
+ ],
2267
+ "guards": [
2268
+ 2864434397,
2269
+ 287454020,
2270
+ 1432778632,
2271
+ 2578103244
2272
+ ],
2273
+ "linked": false,
2274
+ "mask": 37814273,
2275
+ "other_linked": true,
2276
+ "overlap_results": [],
2277
+ "previous_origin": [
2278
+ 2147483648,
2279
+ 2143289345,
2280
+ 2139095039
2281
+ ],
2282
+ "saved_vector": [
2283
+ 4294967295,
2284
+ 0,
2285
+ 305419896
2286
+ ],
2287
+ "values": [
2288
+ 4294967271,
2289
+ 4294967270,
2290
+ 2,
2291
+ 1,
2292
+ 1,
2293
+ 2147483648,
2294
+ 2147483649,
2295
+ 0
2296
+ ]
2297
+ },
2298
+ "source": {
2299
+ "client_bound": true,
2300
+ "client_state": [
2301
+ 1,
2302
+ 0,
2303
+ 2,
2304
+ 0
2305
+ ],
2306
+ "command": [
2307
+ 10050,
2308
+ 2864434397,
2309
+ 2147483648,
2310
+ 4294967295,
2311
+ 2271560481,
2312
+ 42
2313
+ ],
2314
+ "copied": [
2315
+ 10050,
2316
+ 2864434397,
2317
+ 2147483648,
2318
+ 4294967295,
2319
+ 2271560481,
2320
+ 42
2321
+ ],
2322
+ "events": [
2323
+ {
2324
+ "count": 268,
2325
+ "offset": 56,
2326
+ "op": "zero"
2327
+ },
2328
+ {
2329
+ "op": "callback",
2330
+ "slot": 2,
2331
+ "target": 153419
2332
+ }
2333
+ ],
2334
+ "guards": [
2335
+ 2864434397,
2336
+ 287454020,
2337
+ 1432778632,
2338
+ 2578103244
2339
+ ],
2340
+ "linked": false,
2341
+ "mask": 37814273,
2342
+ "other_linked": true,
2343
+ "overlap_results": [],
2344
+ "previous_origin": [
2345
+ 2147483648,
2346
+ 2143289345,
2347
+ 2139095039
2348
+ ],
2349
+ "saved_vector": [
2350
+ 4294967295,
2351
+ 0,
2352
+ 305419896
2353
+ ],
2354
+ "values": [
2355
+ 4294967271,
2356
+ 4294967270,
2357
+ 2,
2358
+ 1,
2359
+ 1,
2360
+ 2147483648,
2361
+ 2147483649,
2362
+ 0
2363
+ ]
2364
+ }
2365
+ },
2366
+ {
2367
+ "rust": {
2368
+ "client_bound": true,
2369
+ "client_state": [
2370
+ 1,
2371
+ 0,
2372
+ 2,
2373
+ 0
2374
+ ],
2375
+ "command": [
2376
+ 10050,
2377
+ 2864434397,
2378
+ 2147483648,
2379
+ 4294967295,
2380
+ 2271560481,
2381
+ 42
2382
+ ],
2383
+ "copied": [
2384
+ 10050,
2385
+ 2864434397,
2386
+ 2147483648,
2387
+ 4294967295,
2388
+ 2271560481,
2389
+ 42
2390
+ ],
2391
+ "events": [
2392
+ {
2393
+ "count": 268,
2394
+ "offset": 56,
2395
+ "op": "zero"
2396
+ },
2397
+ {
2398
+ "op": "callback",
2399
+ "slot": 2,
2400
+ "target": 152792
2401
+ },
2402
+ {
2403
+ "op": "callback",
2404
+ "slot": 2,
2405
+ "target": 152673
2406
+ }
2407
+ ],
2408
+ "guards": [
2409
+ 2864434397,
2410
+ 287454020,
2411
+ 1432778632,
2412
+ 2578103244
2413
+ ],
2414
+ "linked": false,
2415
+ "mask": 37814273,
2416
+ "other_linked": true,
2417
+ "overlap_results": [],
2418
+ "previous_origin": [
2419
+ 2147483648,
2420
+ 2143289345,
2421
+ 2139095039
2422
+ ],
2423
+ "saved_vector": [
2424
+ 4294967295,
2425
+ 0,
2426
+ 305419896
2427
+ ],
2428
+ "values": [
2429
+ 4294967271,
2430
+ 4294967270,
2431
+ 2,
2432
+ 1,
2433
+ 1,
2434
+ 2147483648,
2435
+ 2147483649,
2436
+ 0
2437
+ ]
2438
+ },
2439
+ "source": {
2440
+ "client_bound": true,
2441
+ "client_state": [
2442
+ 1,
2443
+ 0,
2444
+ 2,
2445
+ 0
2446
+ ],
2447
+ "command": [
2448
+ 10050,
2449
+ 2864434397,
2450
+ 2147483648,
2451
+ 4294967295,
2452
+ 2271560481,
2453
+ 42
2454
+ ],
2455
+ "copied": [
2456
+ 10050,
2457
+ 2864434397,
2458
+ 2147483648,
2459
+ 4294967295,
2460
+ 2271560481,
2461
+ 42
2462
+ ],
2463
+ "events": [
2464
+ {
2465
+ "count": 268,
2466
+ "offset": 56,
2467
+ "op": "zero"
2468
+ },
2469
+ {
2470
+ "op": "callback",
2471
+ "slot": 2,
2472
+ "target": 152792
2473
+ },
2474
+ {
2475
+ "op": "callback",
2476
+ "slot": 2,
2477
+ "target": 152673
2478
+ }
2479
+ ],
2480
+ "guards": [
2481
+ 2864434397,
2482
+ 287454020,
2483
+ 1432778632,
2484
+ 2578103244
2485
+ ],
2486
+ "linked": false,
2487
+ "mask": 37814273,
2488
+ "other_linked": true,
2489
+ "overlap_results": [],
2490
+ "previous_origin": [
2491
+ 2147483648,
2492
+ 2143289345,
2493
+ 2139095039
2494
+ ],
2495
+ "saved_vector": [
2496
+ 4294967295,
2497
+ 0,
2498
+ 305419896
2499
+ ],
2500
+ "values": [
2501
+ 4294967271,
2502
+ 4294967270,
2503
+ 2,
2504
+ 1,
2505
+ 1,
2506
+ 2147483648,
2507
+ 2147483649,
2508
+ 0
2509
+ ]
2510
+ }
2511
+ },
2512
+ {
2513
+ "rust": {
2514
+ "client_bound": true,
2515
+ "client_state": [
2516
+ 1,
2517
+ 0,
2518
+ 2,
2519
+ 0
2520
+ ],
2521
+ "command": [
2522
+ 10050,
2523
+ 2864434397,
2524
+ 2147483648,
2525
+ 4294967295,
2526
+ 2271560481,
2527
+ 42
2528
+ ],
2529
+ "copied": [
2530
+ 10050,
2531
+ 2864434397,
2532
+ 2147483648,
2533
+ 4294967295,
2534
+ 2271560481,
2535
+ 42
2536
+ ],
2537
+ "events": [
2538
+ {
2539
+ "count": 268,
2540
+ "offset": 56,
2541
+ "op": "zero"
2542
+ }
2543
+ ],
2544
+ "guards": [
2545
+ 2864434397,
2546
+ 287454020,
2547
+ 1432778632,
2548
+ 2578103244
2549
+ ],
2550
+ "linked": true,
2551
+ "mask": 65537,
2552
+ "other_linked": true,
2553
+ "overlap_results": [
2554
+ 1
2555
+ ],
2556
+ "previous_origin": [
2557
+ 2147483648,
2558
+ 2143289345,
2559
+ 2139095039
2560
+ ],
2561
+ "saved_vector": [
2562
+ 4294967295,
2563
+ 0,
2564
+ 305419896
2565
+ ],
2566
+ "values": [
2567
+ 4294967271,
2568
+ 4294967270,
2569
+ 2,
2570
+ 1,
2571
+ 1,
2572
+ 2147483648,
2573
+ 2147483649,
2574
+ 0
2575
+ ]
2576
+ },
2577
+ "source": {
2578
+ "client_bound": true,
2579
+ "client_state": [
2580
+ 1,
2581
+ 0,
2582
+ 2,
2583
+ 0
2584
+ ],
2585
+ "command": [
2586
+ 10050,
2587
+ 2864434397,
2588
+ 2147483648,
2589
+ 4294967295,
2590
+ 2271560481,
2591
+ 42
2592
+ ],
2593
+ "copied": [
2594
+ 10050,
2595
+ 2864434397,
2596
+ 2147483648,
2597
+ 4294967295,
2598
+ 2271560481,
2599
+ 42
2600
+ ],
2601
+ "events": [
2602
+ {
2603
+ "count": 268,
2604
+ "offset": 56,
2605
+ "op": "zero"
2606
+ }
2607
+ ],
2608
+ "guards": [
2609
+ 2864434397,
2610
+ 287454020,
2611
+ 1432778632,
2612
+ 2578103244
2613
+ ],
2614
+ "linked": true,
2615
+ "mask": 65537,
2616
+ "other_linked": true,
2617
+ "overlap_results": [
2618
+ 1
2619
+ ],
2620
+ "previous_origin": [
2621
+ 2147483648,
2622
+ 2143289345,
2623
+ 2139095039
2624
+ ],
2625
+ "saved_vector": [
2626
+ 4294967295,
2627
+ 0,
2628
+ 305419896
2629
+ ],
2630
+ "values": [
2631
+ 4294967271,
2632
+ 4294967270,
2633
+ 2,
2634
+ 1,
2635
+ 1,
2636
+ 2147483648,
2637
+ 2147483649,
2638
+ 0
2639
+ ]
2640
+ }
2641
+ },
2642
+ {
2643
+ "rust": {
2644
+ "client_bound": true,
2645
+ "client_state": [
2646
+ 0,
2647
+ 0,
2648
+ 2,
2649
+ 0
2650
+ ],
2651
+ "command": [
2652
+ 10050,
2653
+ 2864434397,
2654
+ 2147483648,
2655
+ 4294967295,
2656
+ 2271560481,
2657
+ 2139062570
2658
+ ],
2659
+ "copied": [
2660
+ 10050,
2661
+ 2864434397,
2662
+ 2147483648,
2663
+ 4294967295,
2664
+ 2271560481,
2665
+ 2139062570
2666
+ ],
2667
+ "events": [
2668
+ {
2669
+ "count": 268,
2670
+ "offset": 56,
2671
+ "op": "zero"
2672
+ },
2673
+ {
2674
+ "op": "callback",
2675
+ "slot": 2,
2676
+ "target": 153419
2677
+ }
2678
+ ],
2679
+ "guards": [
2680
+ 2864434397,
2681
+ 287454020,
2682
+ 1432778632,
2683
+ 2578103244
2684
+ ],
2685
+ "linked": true,
2686
+ "mask": 65537,
2687
+ "other_linked": true,
2688
+ "overlap_results": [
2689
+ 1
2690
+ ],
2691
+ "previous_origin": [
2692
+ 2147483648,
2693
+ 2143289345,
2694
+ 2139095039
2695
+ ],
2696
+ "saved_vector": [
2697
+ 4294967295,
2698
+ 0,
2699
+ 305419896
2700
+ ],
2701
+ "values": [
2702
+ 4294967271,
2703
+ 4294967270,
2704
+ 2,
2705
+ 1,
2706
+ 1,
2707
+ 2147483648,
2708
+ 2147483649,
2709
+ 0
2710
+ ]
2711
+ },
2712
+ "source": {
2713
+ "client_bound": true,
2714
+ "client_state": [
2715
+ 0,
2716
+ 0,
2717
+ 2,
2718
+ 0
2719
+ ],
2720
+ "command": [
2721
+ 10050,
2722
+ 2864434397,
2723
+ 2147483648,
2724
+ 4294967295,
2725
+ 2271560481,
2726
+ 2139062570
2727
+ ],
2728
+ "copied": [
2729
+ 10050,
2730
+ 2864434397,
2731
+ 2147483648,
2732
+ 4294967295,
2733
+ 2271560481,
2734
+ 2139062570
2735
+ ],
2736
+ "events": [
2737
+ {
2738
+ "count": 268,
2739
+ "offset": 56,
2740
+ "op": "zero"
2741
+ },
2742
+ {
2743
+ "op": "callback",
2744
+ "slot": 2,
2745
+ "target": 153419
2746
+ }
2747
+ ],
2748
+ "guards": [
2749
+ 2864434397,
2750
+ 287454020,
2751
+ 1432778632,
2752
+ 2578103244
2753
+ ],
2754
+ "linked": true,
2755
+ "mask": 65537,
2756
+ "other_linked": true,
2757
+ "overlap_results": [
2758
+ 1
2759
+ ],
2760
+ "previous_origin": [
2761
+ 2147483648,
2762
+ 2143289345,
2763
+ 2139095039
2764
+ ],
2765
+ "saved_vector": [
2766
+ 4294967295,
2767
+ 0,
2768
+ 305419896
2769
+ ],
2770
+ "values": [
2771
+ 4294967271,
2772
+ 4294967270,
2773
+ 2,
2774
+ 1,
2775
+ 1,
2776
+ 2147483648,
2777
+ 2147483649,
2778
+ 0
2779
+ ]
2780
+ }
2781
+ },
2782
+ {
2783
+ "rust": {
2784
+ "client_bound": true,
2785
+ "client_state": [
2786
+ 0,
2787
+ 0,
2788
+ 2,
2789
+ 0
2790
+ ],
2791
+ "command": [
2792
+ 10050,
2793
+ 2864434397,
2794
+ 2147483648,
2795
+ 4294967295,
2796
+ 2271560481,
2797
+ 2139062570
2798
+ ],
2799
+ "copied": [
2800
+ 10050,
2801
+ 2864434397,
2802
+ 2147483648,
2803
+ 4294967295,
2804
+ 2271560481,
2805
+ 2139062570
2806
+ ],
2807
+ "events": [
2808
+ {
2809
+ "count": 268,
2810
+ "offset": 56,
2811
+ "op": "zero"
2812
+ },
2813
+ {
2814
+ "op": "callback",
2815
+ "slot": 2,
2816
+ "target": 152792
2817
+ },
2818
+ {
2819
+ "op": "callback",
2820
+ "slot": 2,
2821
+ "target": 152673
2822
+ }
2823
+ ],
2824
+ "guards": [
2825
+ 2864434397,
2826
+ 287454020,
2827
+ 1432778632,
2828
+ 2578103244
2829
+ ],
2830
+ "linked": true,
2831
+ "mask": 65537,
2832
+ "other_linked": true,
2833
+ "overlap_results": [
2834
+ 1
2835
+ ],
2836
+ "previous_origin": [
2837
+ 2147483648,
2838
+ 2143289345,
2839
+ 2139095039
2840
+ ],
2841
+ "saved_vector": [
2842
+ 4294967295,
2843
+ 0,
2844
+ 305419896
2845
+ ],
2846
+ "values": [
2847
+ 4294967271,
2848
+ 4294967270,
2849
+ 2,
2850
+ 1,
2851
+ 1,
2852
+ 2147483648,
2853
+ 2147483649,
2854
+ 0
2855
+ ]
2856
+ },
2857
+ "source": {
2858
+ "client_bound": true,
2859
+ "client_state": [
2860
+ 0,
2861
+ 0,
2862
+ 2,
2863
+ 0
2864
+ ],
2865
+ "command": [
2866
+ 10050,
2867
+ 2864434397,
2868
+ 2147483648,
2869
+ 4294967295,
2870
+ 2271560481,
2871
+ 2139062570
2872
+ ],
2873
+ "copied": [
2874
+ 10050,
2875
+ 2864434397,
2876
+ 2147483648,
2877
+ 4294967295,
2878
+ 2271560481,
2879
+ 2139062570
2880
+ ],
2881
+ "events": [
2882
+ {
2883
+ "count": 268,
2884
+ "offset": 56,
2885
+ "op": "zero"
2886
+ },
2887
+ {
2888
+ "op": "callback",
2889
+ "slot": 2,
2890
+ "target": 152792
2891
+ },
2892
+ {
2893
+ "op": "callback",
2894
+ "slot": 2,
2895
+ "target": 152673
2896
+ }
2897
+ ],
2898
+ "guards": [
2899
+ 2864434397,
2900
+ 287454020,
2901
+ 1432778632,
2902
+ 2578103244
2903
+ ],
2904
+ "linked": true,
2905
+ "mask": 65537,
2906
+ "other_linked": true,
2907
+ "overlap_results": [
2908
+ 1
2909
+ ],
2910
+ "previous_origin": [
2911
+ 2147483648,
2912
+ 2143289345,
2913
+ 2139095039
2914
+ ],
2915
+ "saved_vector": [
2916
+ 4294967295,
2917
+ 0,
2918
+ 305419896
2919
+ ],
2920
+ "values": [
2921
+ 4294967271,
2922
+ 4294967270,
2923
+ 2,
2924
+ 1,
2925
+ 1,
2926
+ 2147483648,
2927
+ 2147483649,
2928
+ 0
2929
+ ]
2930
+ }
2931
+ },
2932
+ {
2933
+ "rust": {
2934
+ "client_bound": true,
2935
+ "client_state": [
2936
+ 1,
2937
+ 0,
2938
+ 2,
2939
+ 0
2940
+ ],
2941
+ "command": [
2942
+ 10050,
2943
+ 2864434397,
2944
+ 2147483648,
2945
+ 4294967295,
2946
+ 2271560481,
2947
+ 42
2948
+ ],
2949
+ "copied": [
2950
+ 10050,
2951
+ 2864434397,
2952
+ 2147483648,
2953
+ 4294967295,
2954
+ 2271560481,
2955
+ 42
2956
+ ],
2957
+ "events": [
2958
+ {
2959
+ "count": 268,
2960
+ "offset": 56,
2961
+ "op": "zero"
2962
+ }
2963
+ ],
2964
+ "guards": [
2965
+ 2864434397,
2966
+ 287454020,
2967
+ 1432778632,
2968
+ 2578103244
2969
+ ],
2970
+ "linked": true,
2971
+ "mask": 65537,
2972
+ "other_linked": true,
2973
+ "overlap_results": [
2974
+ 1
2975
+ ],
2976
+ "previous_origin": [
2977
+ 2147483648,
2978
+ 2143289345,
2979
+ 2139095039
2980
+ ],
2981
+ "saved_vector": [
2982
+ 4294967295,
2983
+ 0,
2984
+ 305419896
2985
+ ],
2986
+ "values": [
2987
+ 4294967271,
2988
+ 4294967270,
2989
+ 2,
2990
+ 1,
2991
+ 1,
2992
+ 2147483648,
2993
+ 2147483649,
2994
+ 0
2995
+ ]
2996
+ },
2997
+ "source": {
2998
+ "client_bound": true,
2999
+ "client_state": [
3000
+ 1,
3001
+ 0,
3002
+ 2,
3003
+ 0
3004
+ ],
3005
+ "command": [
3006
+ 10050,
3007
+ 2864434397,
3008
+ 2147483648,
3009
+ 4294967295,
3010
+ 2271560481,
3011
+ 42
3012
+ ],
3013
+ "copied": [
3014
+ 10050,
3015
+ 2864434397,
3016
+ 2147483648,
3017
+ 4294967295,
3018
+ 2271560481,
3019
+ 42
3020
+ ],
3021
+ "events": [
3022
+ {
3023
+ "count": 268,
3024
+ "offset": 56,
3025
+ "op": "zero"
3026
+ }
3027
+ ],
3028
+ "guards": [
3029
+ 2864434397,
3030
+ 287454020,
3031
+ 1432778632,
3032
+ 2578103244
3033
+ ],
3034
+ "linked": true,
3035
+ "mask": 65537,
3036
+ "other_linked": true,
3037
+ "overlap_results": [
3038
+ 1
3039
+ ],
3040
+ "previous_origin": [
3041
+ 2147483648,
3042
+ 2143289345,
3043
+ 2139095039
3044
+ ],
3045
+ "saved_vector": [
3046
+ 4294967295,
3047
+ 0,
3048
+ 305419896
3049
+ ],
3050
+ "values": [
3051
+ 4294967271,
3052
+ 4294967270,
3053
+ 2,
3054
+ 1,
3055
+ 1,
3056
+ 2147483648,
3057
+ 2147483649,
3058
+ 0
3059
+ ]
3060
+ }
3061
+ },
3062
+ {
3063
+ "rust": {
3064
+ "client_bound": true,
3065
+ "client_state": [
3066
+ 1,
3067
+ 0,
3068
+ 0,
3069
+ 3
3070
+ ],
3071
+ "command": [
3072
+ 10050,
3073
+ 2864434397,
3074
+ 2147483648,
3075
+ 4294967295,
3076
+ 2271560481,
3077
+ 2139062570
3078
+ ],
3079
+ "copied": [
3080
+ 10050,
3081
+ 2864434397,
3082
+ 2147483648,
3083
+ 4294967295,
3084
+ 2271560481,
3085
+ 2139062570
3086
+ ],
3087
+ "events": [
3088
+ {
3089
+ "count": 268,
3090
+ "offset": 56,
3091
+ "op": "zero"
3092
+ },
3093
+ {
3094
+ "op": "callback",
3095
+ "slot": 2,
3096
+ "target": 153419
3097
+ }
3098
+ ],
3099
+ "guards": [
3100
+ 2864434397,
3101
+ 287454020,
3102
+ 1432778632,
3103
+ 2578103244
3104
+ ],
3105
+ "linked": true,
3106
+ "mask": 65537,
3107
+ "other_linked": true,
3108
+ "overlap_results": [],
3109
+ "previous_origin": [
3110
+ 2147483648,
3111
+ 2143289345,
3112
+ 2139095039
3113
+ ],
3114
+ "saved_vector": [
3115
+ 4294967295,
3116
+ 0,
3117
+ 305419896
3118
+ ],
3119
+ "values": [
3120
+ 4294967271,
3121
+ 4294967270,
3122
+ 2,
3123
+ 1,
3124
+ 1,
3125
+ 2147483648,
3126
+ 2147483649,
3127
+ 0
3128
+ ]
3129
+ },
3130
+ "source": {
3131
+ "client_bound": true,
3132
+ "client_state": [
3133
+ 1,
3134
+ 0,
3135
+ 0,
3136
+ 3
3137
+ ],
3138
+ "command": [
3139
+ 10050,
3140
+ 2864434397,
3141
+ 2147483648,
3142
+ 4294967295,
3143
+ 2271560481,
3144
+ 2139062570
3145
+ ],
3146
+ "copied": [
3147
+ 10050,
3148
+ 2864434397,
3149
+ 2147483648,
3150
+ 4294967295,
3151
+ 2271560481,
3152
+ 2139062570
3153
+ ],
3154
+ "events": [
3155
+ {
3156
+ "count": 268,
3157
+ "offset": 56,
3158
+ "op": "zero"
3159
+ },
3160
+ {
3161
+ "op": "callback",
3162
+ "slot": 2,
3163
+ "target": 153419
3164
+ }
3165
+ ],
3166
+ "guards": [
3167
+ 2864434397,
3168
+ 287454020,
3169
+ 1432778632,
3170
+ 2578103244
3171
+ ],
3172
+ "linked": true,
3173
+ "mask": 65537,
3174
+ "other_linked": true,
3175
+ "overlap_results": [],
3176
+ "previous_origin": [
3177
+ 2147483648,
3178
+ 2143289345,
3179
+ 2139095039
3180
+ ],
3181
+ "saved_vector": [
3182
+ 4294967295,
3183
+ 0,
3184
+ 305419896
3185
+ ],
3186
+ "values": [
3187
+ 4294967271,
3188
+ 4294967270,
3189
+ 2,
3190
+ 1,
3191
+ 1,
3192
+ 2147483648,
3193
+ 2147483649,
3194
+ 0
3195
+ ]
3196
+ }
3197
+ },
3198
+ {
3199
+ "rust": {
3200
+ "client_bound": true,
3201
+ "client_state": [
3202
+ 1,
3203
+ 0,
3204
+ 0,
3205
+ 3
3206
+ ],
3207
+ "command": [
3208
+ 10050,
3209
+ 2864434397,
3210
+ 2147483648,
3211
+ 4294967295,
3212
+ 2271560481,
3213
+ 2139062570
3214
+ ],
3215
+ "copied": [
3216
+ 10050,
3217
+ 2864434397,
3218
+ 2147483648,
3219
+ 4294967295,
3220
+ 2271560481,
3221
+ 2139062570
3222
+ ],
3223
+ "events": [
3224
+ {
3225
+ "count": 268,
3226
+ "offset": 56,
3227
+ "op": "zero"
3228
+ },
3229
+ {
3230
+ "op": "callback",
3231
+ "slot": 2,
3232
+ "target": 152792
3233
+ },
3234
+ {
3235
+ "op": "callback",
3236
+ "slot": 2,
3237
+ "target": 152673
3238
+ }
3239
+ ],
3240
+ "guards": [
3241
+ 2864434397,
3242
+ 287454020,
3243
+ 1432778632,
3244
+ 2578103244
3245
+ ],
3246
+ "linked": true,
3247
+ "mask": 65537,
3248
+ "other_linked": true,
3249
+ "overlap_results": [],
3250
+ "previous_origin": [
3251
+ 2147483648,
3252
+ 2143289345,
3253
+ 2139095039
3254
+ ],
3255
+ "saved_vector": [
3256
+ 4294967295,
3257
+ 0,
3258
+ 305419896
3259
+ ],
3260
+ "values": [
3261
+ 4294967271,
3262
+ 4294967270,
3263
+ 2,
3264
+ 1,
3265
+ 1,
3266
+ 2147483648,
3267
+ 2147483649,
3268
+ 0
3269
+ ]
3270
+ },
3271
+ "source": {
3272
+ "client_bound": true,
3273
+ "client_state": [
3274
+ 1,
3275
+ 0,
3276
+ 0,
3277
+ 3
3278
+ ],
3279
+ "command": [
3280
+ 10050,
3281
+ 2864434397,
3282
+ 2147483648,
3283
+ 4294967295,
3284
+ 2271560481,
3285
+ 2139062570
3286
+ ],
3287
+ "copied": [
3288
+ 10050,
3289
+ 2864434397,
3290
+ 2147483648,
3291
+ 4294967295,
3292
+ 2271560481,
3293
+ 2139062570
3294
+ ],
3295
+ "events": [
3296
+ {
3297
+ "count": 268,
3298
+ "offset": 56,
3299
+ "op": "zero"
3300
+ },
3301
+ {
3302
+ "op": "callback",
3303
+ "slot": 2,
3304
+ "target": 152792
3305
+ },
3306
+ {
3307
+ "op": "callback",
3308
+ "slot": 2,
3309
+ "target": 152673
3310
+ }
3311
+ ],
3312
+ "guards": [
3313
+ 2864434397,
3314
+ 287454020,
3315
+ 1432778632,
3316
+ 2578103244
3317
+ ],
3318
+ "linked": true,
3319
+ "mask": 65537,
3320
+ "other_linked": true,
3321
+ "overlap_results": [],
3322
+ "previous_origin": [
3323
+ 2147483648,
3324
+ 2143289345,
3325
+ 2139095039
3326
+ ],
3327
+ "saved_vector": [
3328
+ 4294967295,
3329
+ 0,
3330
+ 305419896
3331
+ ],
3332
+ "values": [
3333
+ 4294967271,
3334
+ 4294967270,
3335
+ 2,
3336
+ 1,
3337
+ 1,
3338
+ 2147483648,
3339
+ 2147483649,
3340
+ 0
3341
+ ]
3342
+ }
3343
+ },
3344
+ {
3345
+ "rust": {
3346
+ "client_bound": true,
3347
+ "client_state": [
3348
+ 1,
3349
+ 0,
3350
+ 2,
3351
+ 0
3352
+ ],
3353
+ "command": [
3354
+ 10050,
3355
+ 2864434397,
3356
+ 2147483648,
3357
+ 4294967295,
3358
+ 2271560481,
3359
+ 42
3360
+ ],
3361
+ "copied": [
3362
+ 10050,
3363
+ 2864434397,
3364
+ 2147483648,
3365
+ 4294967295,
3366
+ 2271560481,
3367
+ 42
3368
+ ],
3369
+ "events": [
3370
+ {
3371
+ "count": 268,
3372
+ "offset": 56,
3373
+ "op": "zero"
3374
+ }
3375
+ ],
3376
+ "guards": [
3377
+ 2864434397,
3378
+ 287454020,
3379
+ 1432778632,
3380
+ 2578103244
3381
+ ],
3382
+ "linked": true,
3383
+ "mask": 65537,
3384
+ "other_linked": true,
3385
+ "overlap_results": [
3386
+ 1
3387
+ ],
3388
+ "previous_origin": [
3389
+ 2147483648,
3390
+ 2143289345,
3391
+ 2139095039
3392
+ ],
3393
+ "saved_vector": [
3394
+ 4294967295,
3395
+ 0,
3396
+ 305419896
3397
+ ],
3398
+ "values": [
3399
+ 4294967271,
3400
+ 4294967270,
3401
+ 2,
3402
+ 1,
3403
+ 1,
3404
+ 2147483648,
3405
+ 2147483649,
3406
+ 0
3407
+ ]
3408
+ },
3409
+ "source": {
3410
+ "client_bound": true,
3411
+ "client_state": [
3412
+ 1,
3413
+ 0,
3414
+ 2,
3415
+ 0
3416
+ ],
3417
+ "command": [
3418
+ 10050,
3419
+ 2864434397,
3420
+ 2147483648,
3421
+ 4294967295,
3422
+ 2271560481,
3423
+ 42
3424
+ ],
3425
+ "copied": [
3426
+ 10050,
3427
+ 2864434397,
3428
+ 2147483648,
3429
+ 4294967295,
3430
+ 2271560481,
3431
+ 42
3432
+ ],
3433
+ "events": [
3434
+ {
3435
+ "count": 268,
3436
+ "offset": 56,
3437
+ "op": "zero"
3438
+ }
3439
+ ],
3440
+ "guards": [
3441
+ 2864434397,
3442
+ 287454020,
3443
+ 1432778632,
3444
+ 2578103244
3445
+ ],
3446
+ "linked": true,
3447
+ "mask": 65537,
3448
+ "other_linked": true,
3449
+ "overlap_results": [
3450
+ 1
3451
+ ],
3452
+ "previous_origin": [
3453
+ 2147483648,
3454
+ 2143289345,
3455
+ 2139095039
3456
+ ],
3457
+ "saved_vector": [
3458
+ 4294967295,
3459
+ 0,
3460
+ 305419896
3461
+ ],
3462
+ "values": [
3463
+ 4294967271,
3464
+ 4294967270,
3465
+ 2,
3466
+ 1,
3467
+ 1,
3468
+ 2147483648,
3469
+ 2147483649,
3470
+ 0
3471
+ ]
3472
+ }
3473
+ },
3474
+ {
3475
+ "rust": {
3476
+ "client_bound": true,
3477
+ "client_state": [
3478
+ 1,
3479
+ 1,
3480
+ 2,
3481
+ 0
3482
+ ],
3483
+ "command": [
3484
+ 10050,
3485
+ 2864434397,
3486
+ 2147483648,
3487
+ 4294967295,
3488
+ 2271560481,
3489
+ 2139062570
3490
+ ],
3491
+ "copied": [
3492
+ 10050,
3493
+ 2864434397,
3494
+ 2147483648,
3495
+ 4294967295,
3496
+ 2271560481,
3497
+ 2139062570
3498
+ ],
3499
+ "events": [
3500
+ {
3501
+ "count": 268,
3502
+ "offset": 56,
3503
+ "op": "zero"
3504
+ },
3505
+ {
3506
+ "op": "callback",
3507
+ "slot": 2,
3508
+ "target": 153419
3509
+ }
3510
+ ],
3511
+ "guards": [
3512
+ 2864434397,
3513
+ 287454020,
3514
+ 1432778632,
3515
+ 2578103244
3516
+ ],
3517
+ "linked": true,
3518
+ "mask": 65537,
3519
+ "other_linked": true,
3520
+ "overlap_results": [
3521
+ 1
3522
+ ],
3523
+ "previous_origin": [
3524
+ 2147483648,
3525
+ 2143289345,
3526
+ 2139095039
3527
+ ],
3528
+ "saved_vector": [
3529
+ 4294967295,
3530
+ 0,
3531
+ 305419896
3532
+ ],
3533
+ "values": [
3534
+ 4294967271,
3535
+ 4294967270,
3536
+ 2,
3537
+ 1,
3538
+ 1,
3539
+ 2147483648,
3540
+ 2147483649,
3541
+ 0
3542
+ ]
3543
+ },
3544
+ "source": {
3545
+ "client_bound": true,
3546
+ "client_state": [
3547
+ 1,
3548
+ 1,
3549
+ 2,
3550
+ 0
3551
+ ],
3552
+ "command": [
3553
+ 10050,
3554
+ 2864434397,
3555
+ 2147483648,
3556
+ 4294967295,
3557
+ 2271560481,
3558
+ 2139062570
3559
+ ],
3560
+ "copied": [
3561
+ 10050,
3562
+ 2864434397,
3563
+ 2147483648,
3564
+ 4294967295,
3565
+ 2271560481,
3566
+ 2139062570
3567
+ ],
3568
+ "events": [
3569
+ {
3570
+ "count": 268,
3571
+ "offset": 56,
3572
+ "op": "zero"
3573
+ },
3574
+ {
3575
+ "op": "callback",
3576
+ "slot": 2,
3577
+ "target": 153419
3578
+ }
3579
+ ],
3580
+ "guards": [
3581
+ 2864434397,
3582
+ 287454020,
3583
+ 1432778632,
3584
+ 2578103244
3585
+ ],
3586
+ "linked": true,
3587
+ "mask": 65537,
3588
+ "other_linked": true,
3589
+ "overlap_results": [
3590
+ 1
3591
+ ],
3592
+ "previous_origin": [
3593
+ 2147483648,
3594
+ 2143289345,
3595
+ 2139095039
3596
+ ],
3597
+ "saved_vector": [
3598
+ 4294967295,
3599
+ 0,
3600
+ 305419896
3601
+ ],
3602
+ "values": [
3603
+ 4294967271,
3604
+ 4294967270,
3605
+ 2,
3606
+ 1,
3607
+ 1,
3608
+ 2147483648,
3609
+ 2147483649,
3610
+ 0
3611
+ ]
3612
+ }
3613
+ },
3614
+ {
3615
+ "rust": {
3616
+ "client_bound": true,
3617
+ "client_state": [
3618
+ 1,
3619
+ 1,
3620
+ 2,
3621
+ 0
3622
+ ],
3623
+ "command": [
3624
+ 10050,
3625
+ 2864434397,
3626
+ 2147483648,
3627
+ 4294967295,
3628
+ 2271560481,
3629
+ 2139062570
3630
+ ],
3631
+ "copied": [
3632
+ 10050,
3633
+ 2864434397,
3634
+ 2147483648,
3635
+ 4294967295,
3636
+ 2271560481,
3637
+ 2139062570
3638
+ ],
3639
+ "events": [
3640
+ {
3641
+ "count": 268,
3642
+ "offset": 56,
3643
+ "op": "zero"
3644
+ },
3645
+ {
3646
+ "op": "callback",
3647
+ "slot": 2,
3648
+ "target": 152792
3649
+ },
3650
+ {
3651
+ "op": "callback",
3652
+ "slot": 2,
3653
+ "target": 152673
3654
+ }
3655
+ ],
3656
+ "guards": [
3657
+ 2864434397,
3658
+ 287454020,
3659
+ 1432778632,
3660
+ 2578103244
3661
+ ],
3662
+ "linked": true,
3663
+ "mask": 65537,
3664
+ "other_linked": true,
3665
+ "overlap_results": [
3666
+ 1
3667
+ ],
3668
+ "previous_origin": [
3669
+ 2147483648,
3670
+ 2143289345,
3671
+ 2139095039
3672
+ ],
3673
+ "saved_vector": [
3674
+ 4294967295,
3675
+ 0,
3676
+ 305419896
3677
+ ],
3678
+ "values": [
3679
+ 4294967271,
3680
+ 4294967270,
3681
+ 2,
3682
+ 1,
3683
+ 1,
3684
+ 2147483648,
3685
+ 2147483649,
3686
+ 0
3687
+ ]
3688
+ },
3689
+ "source": {
3690
+ "client_bound": true,
3691
+ "client_state": [
3692
+ 1,
3693
+ 1,
3694
+ 2,
3695
+ 0
3696
+ ],
3697
+ "command": [
3698
+ 10050,
3699
+ 2864434397,
3700
+ 2147483648,
3701
+ 4294967295,
3702
+ 2271560481,
3703
+ 2139062570
3704
+ ],
3705
+ "copied": [
3706
+ 10050,
3707
+ 2864434397,
3708
+ 2147483648,
3709
+ 4294967295,
3710
+ 2271560481,
3711
+ 2139062570
3712
+ ],
3713
+ "events": [
3714
+ {
3715
+ "count": 268,
3716
+ "offset": 56,
3717
+ "op": "zero"
3718
+ },
3719
+ {
3720
+ "op": "callback",
3721
+ "slot": 2,
3722
+ "target": 152792
3723
+ },
3724
+ {
3725
+ "op": "callback",
3726
+ "slot": 2,
3727
+ "target": 152673
3728
+ }
3729
+ ],
3730
+ "guards": [
3731
+ 2864434397,
3732
+ 287454020,
3733
+ 1432778632,
3734
+ 2578103244
3735
+ ],
3736
+ "linked": true,
3737
+ "mask": 65537,
3738
+ "other_linked": true,
3739
+ "overlap_results": [
3740
+ 1
3741
+ ],
3742
+ "previous_origin": [
3743
+ 2147483648,
3744
+ 2143289345,
3745
+ 2139095039
3746
+ ],
3747
+ "saved_vector": [
3748
+ 4294967295,
3749
+ 0,
3750
+ 305419896
3751
+ ],
3752
+ "values": [
3753
+ 4294967271,
3754
+ 4294967270,
3755
+ 2,
3756
+ 1,
3757
+ 1,
3758
+ 2147483648,
3759
+ 2147483649,
3760
+ 0
3761
+ ]
3762
+ }
3763
+ },
3764
+ {
3765
+ "rust": {
3766
+ "client_bound": true,
3767
+ "client_state": [
3768
+ 1,
3769
+ 0,
3770
+ 2,
3771
+ 0
3772
+ ],
3773
+ "command": [
3774
+ 10050,
3775
+ 2864434397,
3776
+ 2147483648,
3777
+ 4294967295,
3778
+ 2271560481,
3779
+ 42
3780
+ ],
3781
+ "copied": [
3782
+ 10050,
3783
+ 2864434397,
3784
+ 2147483648,
3785
+ 4294967295,
3786
+ 2271560481,
3787
+ 42
3788
+ ],
3789
+ "events": [
3790
+ {
3791
+ "count": 268,
3792
+ "offset": 56,
3793
+ "op": "zero"
3794
+ }
3795
+ ],
3796
+ "guards": [
3797
+ 2864434397,
3798
+ 287454020,
3799
+ 1432778632,
3800
+ 2578103244
3801
+ ],
3802
+ "linked": true,
3803
+ "mask": 65537,
3804
+ "other_linked": true,
3805
+ "overlap_results": [
3806
+ 1
3807
+ ],
3808
+ "previous_origin": [
3809
+ 2147483648,
3810
+ 2143289345,
3811
+ 2139095039
3812
+ ],
3813
+ "saved_vector": [
3814
+ 4294967295,
3815
+ 0,
3816
+ 305419896
3817
+ ],
3818
+ "values": [
3819
+ 4294967271,
3820
+ 4294967270,
3821
+ 2,
3822
+ 1,
3823
+ 1,
3824
+ 2147483648,
3825
+ 2147483649,
3826
+ 1
3827
+ ]
3828
+ },
3829
+ "source": {
3830
+ "client_bound": true,
3831
+ "client_state": [
3832
+ 1,
3833
+ 0,
3834
+ 2,
3835
+ 0
3836
+ ],
3837
+ "command": [
3838
+ 10050,
3839
+ 2864434397,
3840
+ 2147483648,
3841
+ 4294967295,
3842
+ 2271560481,
3843
+ 42
3844
+ ],
3845
+ "copied": [
3846
+ 10050,
3847
+ 2864434397,
3848
+ 2147483648,
3849
+ 4294967295,
3850
+ 2271560481,
3851
+ 42
3852
+ ],
3853
+ "events": [
3854
+ {
3855
+ "count": 268,
3856
+ "offset": 56,
3857
+ "op": "zero"
3858
+ }
3859
+ ],
3860
+ "guards": [
3861
+ 2864434397,
3862
+ 287454020,
3863
+ 1432778632,
3864
+ 2578103244
3865
+ ],
3866
+ "linked": true,
3867
+ "mask": 65537,
3868
+ "other_linked": true,
3869
+ "overlap_results": [
3870
+ 1
3871
+ ],
3872
+ "previous_origin": [
3873
+ 2147483648,
3874
+ 2143289345,
3875
+ 2139095039
3876
+ ],
3877
+ "saved_vector": [
3878
+ 4294967295,
3879
+ 0,
3880
+ 305419896
3881
+ ],
3882
+ "values": [
3883
+ 4294967271,
3884
+ 4294967270,
3885
+ 2,
3886
+ 1,
3887
+ 1,
3888
+ 2147483648,
3889
+ 2147483649,
3890
+ 1
3891
+ ]
3892
+ }
3893
+ },
3894
+ {
3895
+ "rust": {
3896
+ "client_bound": true,
3897
+ "client_state": [
3898
+ 1,
3899
+ 0,
3900
+ 2,
3901
+ 0
3902
+ ],
3903
+ "command": [
3904
+ 10050,
3905
+ 2864434397,
3906
+ 2147483648,
3907
+ 4294967295,
3908
+ 2271560481,
3909
+ 42
3910
+ ],
3911
+ "copied": [
3912
+ 10050,
3913
+ 2864434397,
3914
+ 2147483648,
3915
+ 4294967295,
3916
+ 2271560481,
3917
+ 42
3918
+ ],
3919
+ "events": [
3920
+ {
3921
+ "count": 268,
3922
+ "offset": 56,
3923
+ "op": "zero"
3924
+ },
3925
+ {
3926
+ "op": "callback",
3927
+ "slot": 2,
3928
+ "target": 153419
3929
+ }
3930
+ ],
3931
+ "guards": [
3932
+ 2864434397,
3933
+ 287454020,
3934
+ 1432778632,
3935
+ 2578103244
3936
+ ],
3937
+ "linked": true,
3938
+ "mask": 65537,
3939
+ "other_linked": true,
3940
+ "overlap_results": [
3941
+ 1
3942
+ ],
3943
+ "previous_origin": [
3944
+ 2147483648,
3945
+ 2143289345,
3946
+ 2139095039
3947
+ ],
3948
+ "saved_vector": [
3949
+ 4294967295,
3950
+ 0,
3951
+ 305419896
3952
+ ],
3953
+ "values": [
3954
+ 4294967271,
3955
+ 4294967270,
3956
+ 2,
3957
+ 1,
3958
+ 1,
3959
+ 2147483648,
3960
+ 2147483649,
3961
+ 1
3962
+ ]
3963
+ },
3964
+ "source": {
3965
+ "client_bound": true,
3966
+ "client_state": [
3967
+ 1,
3968
+ 0,
3969
+ 2,
3970
+ 0
3971
+ ],
3972
+ "command": [
3973
+ 10050,
3974
+ 2864434397,
3975
+ 2147483648,
3976
+ 4294967295,
3977
+ 2271560481,
3978
+ 42
3979
+ ],
3980
+ "copied": [
3981
+ 10050,
3982
+ 2864434397,
3983
+ 2147483648,
3984
+ 4294967295,
3985
+ 2271560481,
3986
+ 42
3987
+ ],
3988
+ "events": [
3989
+ {
3990
+ "count": 268,
3991
+ "offset": 56,
3992
+ "op": "zero"
3993
+ },
3994
+ {
3995
+ "op": "callback",
3996
+ "slot": 2,
3997
+ "target": 153419
3998
+ }
3999
+ ],
4000
+ "guards": [
4001
+ 2864434397,
4002
+ 287454020,
4003
+ 1432778632,
4004
+ 2578103244
4005
+ ],
4006
+ "linked": true,
4007
+ "mask": 65537,
4008
+ "other_linked": true,
4009
+ "overlap_results": [
4010
+ 1
4011
+ ],
4012
+ "previous_origin": [
4013
+ 2147483648,
4014
+ 2143289345,
4015
+ 2139095039
4016
+ ],
4017
+ "saved_vector": [
4018
+ 4294967295,
4019
+ 0,
4020
+ 305419896
4021
+ ],
4022
+ "values": [
4023
+ 4294967271,
4024
+ 4294967270,
4025
+ 2,
4026
+ 1,
4027
+ 1,
4028
+ 2147483648,
4029
+ 2147483649,
4030
+ 1
4031
+ ]
4032
+ }
4033
+ },
4034
+ {
4035
+ "rust": {
4036
+ "client_bound": true,
4037
+ "client_state": [
4038
+ 1,
4039
+ 0,
4040
+ 2,
4041
+ 0
4042
+ ],
4043
+ "command": [
4044
+ 10050,
4045
+ 2864434397,
4046
+ 2147483648,
4047
+ 4294967295,
4048
+ 2271560481,
4049
+ 42
4050
+ ],
4051
+ "copied": [
4052
+ 10050,
4053
+ 2864434397,
4054
+ 2147483648,
4055
+ 4294967295,
4056
+ 2271560481,
4057
+ 42
4058
+ ],
4059
+ "events": [
4060
+ {
4061
+ "count": 268,
4062
+ "offset": 56,
4063
+ "op": "zero"
4064
+ },
4065
+ {
4066
+ "op": "callback",
4067
+ "slot": 2,
4068
+ "target": 152792
4069
+ },
4070
+ {
4071
+ "op": "callback",
4072
+ "slot": 2,
4073
+ "target": 152673
4074
+ }
4075
+ ],
4076
+ "guards": [
4077
+ 2864434397,
4078
+ 287454020,
4079
+ 1432778632,
4080
+ 2578103244
4081
+ ],
4082
+ "linked": true,
4083
+ "mask": 65537,
4084
+ "other_linked": true,
4085
+ "overlap_results": [
4086
+ 1
4087
+ ],
4088
+ "previous_origin": [
4089
+ 2147483648,
4090
+ 2143289345,
4091
+ 2139095039
4092
+ ],
4093
+ "saved_vector": [
4094
+ 4294967295,
4095
+ 0,
4096
+ 305419896
4097
+ ],
4098
+ "values": [
4099
+ 4294967271,
4100
+ 4294967270,
4101
+ 2,
4102
+ 1,
4103
+ 1,
4104
+ 2147483648,
4105
+ 2147483649,
4106
+ 1
4107
+ ]
4108
+ },
4109
+ "source": {
4110
+ "client_bound": true,
4111
+ "client_state": [
4112
+ 1,
4113
+ 0,
4114
+ 2,
4115
+ 0
4116
+ ],
4117
+ "command": [
4118
+ 10050,
4119
+ 2864434397,
4120
+ 2147483648,
4121
+ 4294967295,
4122
+ 2271560481,
4123
+ 42
4124
+ ],
4125
+ "copied": [
4126
+ 10050,
4127
+ 2864434397,
4128
+ 2147483648,
4129
+ 4294967295,
4130
+ 2271560481,
4131
+ 42
4132
+ ],
4133
+ "events": [
4134
+ {
4135
+ "count": 268,
4136
+ "offset": 56,
4137
+ "op": "zero"
4138
+ },
4139
+ {
4140
+ "op": "callback",
4141
+ "slot": 2,
4142
+ "target": 152792
4143
+ },
4144
+ {
4145
+ "op": "callback",
4146
+ "slot": 2,
4147
+ "target": 152673
4148
+ }
4149
+ ],
4150
+ "guards": [
4151
+ 2864434397,
4152
+ 287454020,
4153
+ 1432778632,
4154
+ 2578103244
4155
+ ],
4156
+ "linked": true,
4157
+ "mask": 65537,
4158
+ "other_linked": true,
4159
+ "overlap_results": [
4160
+ 1
4161
+ ],
4162
+ "previous_origin": [
4163
+ 2147483648,
4164
+ 2143289345,
4165
+ 2139095039
4166
+ ],
4167
+ "saved_vector": [
4168
+ 4294967295,
4169
+ 0,
4170
+ 305419896
4171
+ ],
4172
+ "values": [
4173
+ 4294967271,
4174
+ 4294967270,
4175
+ 2,
4176
+ 1,
4177
+ 1,
4178
+ 2147483648,
4179
+ 2147483649,
4180
+ 1
4181
+ ]
4182
+ }
4183
+ }
4184
+ ],
4185
+ "source_report": "docs/research/qvm-client-move-assembly.json",
4186
+ "source_report_sha256": "60f6e22a1b293b34b86cf508a5cfe0e88b4220e80ce7a1a2b45ef18312806eed"
4187
+ }
docs/research/rust-health-impulse.json CHANGED
@@ -2985,7 +2985,7 @@
2985
  "exit_code": 2
2986
  }
2987
  ],
2988
- "rust_unit_tests": 247,
2989
  "source_report": "docs/research/qvm-health-impulse.json",
2990
  "source_report_sha256": "625fd8064004ea6dbdf398d51d0af844d9c635ff04c0a0790886dddb6ab81e71"
2991
  }
 
2985
  "exit_code": 2
2986
  }
2987
  ],
2988
+ "rust_unit_tests": 249,
2989
  "source_report": "docs/research/qvm-health-impulse.json",
2990
  "source_report_sha256": "625fd8064004ea6dbdf398d51d0af844d9c635ff04c0a0790886dddb6ab81e71"
2991
  }
scripts/analyze_rust_client_move_assembly.py ADDED
@@ -0,0 +1,19 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ """Compare recovered Rust policy with original QVM fixtures."""
2
+ import hashlib,json,os,subprocess
3
+ from pathlib import Path
4
+ from analyze_qvm import write_json
5
+ from rust_lifecycle_support import result
6
+
7
+ def main():
8
+ subprocess.run(['cargo','build','--offline','--package','urt-gameplay','--bin','urt-client-move-context'],check=True,capture_output=True)
9
+ binary=Path(os.environ.get('CARGO_TARGET_DIR','target'))/'debug'/'urt-client-move-context'
10
+ path=Path('docs/research/qvm-client-move-assembly.json');data=path.read_bytes();probes=[]
11
+ for p in json.loads(data)['probes']:
12
+ probes.append(dict(source={k:p[k] for k in ['events', 'command', 'copied', 'client_bound', 'mask', 'linked', 'other_linked', 'overlap_results', 'values', 'previous_origin', 'saved_vector', 'guards', 'client_state']},rust=result(binary,'assembly',encode(p['input']))))
13
+ write_json(Path('docs/research/rust-client-move-assembly.json'),dict(source_report=str(path),source_report_sha256=hashlib.sha256(data).hexdigest(),probes=probes,limits='Finite source/Rust contract parity; native time/file/network replies remain supplied or captured.'))
14
+
15
+ def encode(a):
16
+ from analyze_qvm_acceleration import word
17
+ f=a['feedback'] or dict(health=0,follow=0,flags=0,pm_type=0)
18
+ return [a['mode'],a['health'],a['follow'],a['flags'],*a['vector'][:2],a['pm_type'],a['linked'],a['entity_flags'],a['ghost'],a['other_pm'],a['other_health'],a['self_health'],*[word(v) for v in a['other_origin']],a['debug'],a['bot'],a['pause'],a['quantize'],a['option'],*a['origin'],*a['command'],int(a['feedback'] is not None),f['health'],f['follow'],f['flags'],f['pm_type'],a['vector'][2]]
19
+ if __name__=='__main__':main()
scripts/test_rust_client_move_assembly.py ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
 
1
+ import hashlib,json,unittest
2
+ from pathlib import Path
3
+ class PortTests(unittest.TestCase):
4
+ def test_original_parity(self):
5
+ r=json.loads(Path('docs/research/rust-client-move-assembly.json').read_text());self.assertGreaterEqual(len(r['probes']),12)
6
+ for p in r['probes']:self.assertEqual(p['source'],p['rust'])
7
+ def test_identity(self):
8
+ r=json.loads(Path('docs/research/rust-client-move-assembly.json').read_text());self.assertEqual(hashlib.sha256(Path(r['source_report']).read_bytes()).hexdigest(),r['source_report_sha256'])
9
+ if __name__=='__main__':unittest.main()
xtask/checks.tsv CHANGED
@@ -3788,3 +3788,27 @@ report scripts/analyze_qvm_client_move_assembly.py docs/research/qvm-client-move
3788
  edge docs/research/qvm-client-move-assembly.json scripts/test_qvm_client_move_assembly.py
3789
  group qvm-client-move-assembly scripts/analyze_qvm_client_move_assembly.py
3790
  edge scripts/analyze_qvm_client_move_assembly.py scripts/analyze_qvm_resumer_audit.py
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3788
  edge docs/research/qvm-client-move-assembly.json scripts/test_qvm_client_move_assembly.py
3789
  group qvm-client-move-assembly scripts/analyze_qvm_client_move_assembly.py
3790
  edge scripts/analyze_qvm_client_move_assembly.py scripts/analyze_qvm_resumer_audit.py
3791
+ report scripts/analyze_rust_client_move_assembly.py docs/research/rust-client-move-assembly.json
3792
+ edge docs/research/rust-client-move-assembly.json scripts/test_rust_client_move_assembly.py
3793
+ group rust-client-move-assembly scripts/analyze_rust_client_move_assembly.py
3794
+ edge scripts/analyze_rust_client_move_assembly.py scripts/analyze_qvm_resumer_audit.py
3795
+ edge Cargo.toml scripts/analyze_rust_client_move_assembly.py
3796
+ edge Cargo.lock scripts/analyze_rust_client_move_assembly.py
3797
+ edge crates/urt-gameplay/Cargo.toml scripts/analyze_rust_client_move_assembly.py
3798
+ edge crates/urt-gameplay/src/lib.rs scripts/analyze_rust_client_move_assembly.py
3799
+ edge crates/urt-gameplay/src/filter_loading.rs scripts/analyze_rust_client_move_assembly.py
3800
+ edge crates/urt-gameplay/src/filter_lifecycle.rs scripts/analyze_rust_client_move_assembly.py
3801
+ edge crates/urt-gameplay/src/native_policy.rs scripts/analyze_rust_client_move_assembly.py
3802
+ edge crates/urt-gameplay/src/bin/urt-filter-loading.rs scripts/analyze_rust_client_move_assembly.py
3803
+ edge crates/urt-gameplay/src/qvm_format.rs scripts/analyze_rust_client_move_assembly.py
3804
+ edge docs/research/qvm-client-move-assembly.json scripts/analyze_rust_client_move_assembly.py
3805
+ group rust-client-move-assembly scripts/analyze_rust_health_impulse.py
3806
+ group gameplay scripts/analyze_rust_client_move_assembly.py
3807
+ edge crates/urt-gameplay/src/filter_commands.rs scripts/analyze_rust_client_move_assembly.py
3808
+ edge crates/urt-gameplay/src/bin/urt-filter-commands.rs scripts/analyze_rust_client_move_assembly.py
3809
+ edge crates/urt-gameplay/src/client_timer.rs scripts/analyze_rust_client_move_assembly.py
3810
+ edge crates/urt-gameplay/src/bin/urt-client-timer.rs scripts/analyze_rust_client_move_assembly.py
3811
+ edge crates/urt-gameplay/src/client_processing.rs scripts/analyze_rust_client_move_assembly.py
3812
+ edge crates/urt-gameplay/src/bin/urt-client-processing.rs scripts/analyze_rust_client_move_assembly.py
3813
+ edge crates/urt-gameplay/src/client_move_context.rs scripts/analyze_rust_client_move_assembly.py
3814
+ edge crates/urt-gameplay/src/bin/urt-client-move-context.rs scripts/analyze_rust_client_move_assembly.py
xtask/src/lib.rs CHANGED
@@ -1135,6 +1135,7 @@ mod integration_tests {
1135
  ("client_move_context", "client_move_suppression"),
1136
  ("client_move_context", "client_move_mask"),
1137
  ("client_move_context", "client_move_context"),
 
1138
  ("client_move_context", "client_move_scratch"),
1139
  ("client_processing", "client_routing"),
1140
  ("client_timer", "client_routing"),
@@ -1352,6 +1353,7 @@ mod integration_tests {
1352
  ("qvm-client-move-suppression", "client_move_suppression"),
1353
  ("qvm-client-move-mask", "client_move_mask"),
1354
  ("qvm-client-move-context", "client_move_context"),
 
1355
  ("qvm-client-move-scratch", "client_move_scratch"),
1356
  ("qvm-client-routing", "client_routing"),
1357
  ("qvm-client-command-rewrite", "client_command_rewrite"),
 
1135
  ("client_move_context", "client_move_suppression"),
1136
  ("client_move_context", "client_move_mask"),
1137
  ("client_move_context", "client_move_context"),
1138
+ ("client_move_context", "client_move_assembly"),
1139
  ("client_move_context", "client_move_scratch"),
1140
  ("client_processing", "client_routing"),
1141
  ("client_timer", "client_routing"),
 
1353
  ("qvm-client-move-suppression", "client_move_suppression"),
1354
  ("qvm-client-move-mask", "client_move_mask"),
1355
  ("qvm-client-move-context", "client_move_context"),
1356
+ ("qvm-client-move-assembly", "client_move_assembly"),
1357
  ("qvm-client-move-scratch", "client_move_scratch"),
1358
  ("qvm-client-routing", "client_routing"),
1359
  ("qvm-client-command-rewrite", "client_command_rewrite"),