nmarshall commited on
Commit
006789e
·
1 Parent(s): 21250a9

gameplay: resolve allocated defuse event construction

Browse files
crates/urt-gameplay/src/bin/urt-location-feedback.rs CHANGED
@@ -23,6 +23,7 @@ fn main() {
23
  "text" => println!("{}", text(&w)),
24
  "radio" => println!("{}", radio(&w)),
25
  "allocation" => println!("{}", allocation(&w)),
 
26
  _ => panic!("unknown contract"),
27
  }
28
  }
@@ -273,3 +274,60 @@ fn allocation(w: &[u32]) -> String {
273
  let out = allocate_entity(&mut pool, tick, start).unwrap();
274
  format!("{{{}}}", allocation_fields(&pool, &out))
275
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
23
  "text" => println!("{}", text(&w)),
24
  "radio" => println!("{}", radio(&w)),
25
  "allocation" => println!("{}", allocation(&w)),
26
+ "allocated" => println!("{}", allocated(&w)),
27
  _ => panic!("unknown contract"),
28
  }
29
  }
 
274
  let out = allocate_entity(&mut pool, tick, start).unwrap();
275
  format!("{{{}}}", allocation_fields(&pool, &out))
276
  }
277
+
278
+ fn allocated(w: &[u32]) -> String {
279
+ use urt_gameplay::defuse::{DefuseInput, DefuseState};
280
+ assert!(w.len() >= 14);
281
+ assert_eq!(w.len(), 14 + w[13] as usize);
282
+ let mut state = DefuseState {
283
+ flags: w[0],
284
+ flags104: w[1],
285
+ busy: w[2],
286
+ clock: w[3],
287
+ complete: w[4],
288
+ animation: w[5],
289
+ weapon: w[6],
290
+ event: [7, 0x80000001],
291
+ };
292
+ let input = DefuseInput {
293
+ tick: w[7],
294
+ duration: w[8],
295
+ index: w[9],
296
+ slot: 2,
297
+ };
298
+ let (mut pool, _, start) = decode_pool(&w[14..]);
299
+ let out = allocated_defuse_start(
300
+ &mut state,
301
+ &mut pool,
302
+ input,
303
+ start,
304
+ w[10..13].try_into().unwrap(),
305
+ )
306
+ .unwrap();
307
+ let selected = out.allocation.selected.unwrap();
308
+ let mut initial = pool.clone();
309
+ initial.slots[selected] = out.initialized;
310
+ let a = allocation_fields(&initial, &out.allocation);
311
+ let fields = [
312
+ 0, 4, 12, 16, 20, 24, 28, 32, 36, 40, 44, 84, 140, 180, 184, 188, 400, 424, 488, 492, 496,
313
+ 512, 532, 536, 540, 564, 568, 572,
314
+ ];
315
+ format!(
316
+ r#"{{"flags":{},"flags104":{},"busy":{},"clock":{},"complete":{},"animation":{},"weapon":{},"event":{},"guards":{},"allocation":{{{}}},"record":{},"links":{}}}"#,
317
+ state.flags,
318
+ state.flags104,
319
+ state.busy,
320
+ state.clock,
321
+ state.complete,
322
+ state.animation,
323
+ state.weapon,
324
+ list(&state.event),
325
+ list(&[
326
+ pool.slots[selected].words[180 / 4],
327
+ pool.slots[selected].words[188 / 4]
328
+ ]),
329
+ a,
330
+ record(&pool.slots[selected].words, &fields),
331
+ list(&out.links.iter().map(|v| *v as u32).collect::<Vec<_>>())
332
+ )
333
+ }
crates/urt-gameplay/src/location_feedback.rs CHANGED
@@ -499,3 +499,159 @@ mod allocation_tests {
499
  assert!(allocate_entity(&mut p, 5000, 0).is_err());
500
  }
501
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
499
  assert!(allocate_entity(&mut p, 5000, 0).is_err());
500
  }
501
  }
502
+
503
+ #[derive(Clone, Debug, PartialEq, Eq)]
504
+ pub struct AllocatedDefuseStart {
505
+ pub allocation: AllocationOutcome,
506
+ pub initialized: EntitySlot,
507
+ pub links: Vec<usize>,
508
+ }
509
+ fn slot_event(s: &EntitySlot) -> crate::transition::EventRecord {
510
+ let w = &s.words;
511
+ crate::transition::EventRecord {
512
+ kind: w[1],
513
+ trajectory: [w[3], w[4], w[5]],
514
+ origin: [w[6], w[7], w[8]],
515
+ velocity: [w[9], w[10], w[11]],
516
+ caller_time: w[21],
517
+ owner: w[35],
518
+ field400: w[100],
519
+ flags: w[106],
520
+ current_origin: [w[122], w[123], w[124]],
521
+ class_token: w[134],
522
+ class_hash: w[135],
523
+ event_time: w[142] as i32,
524
+ free_after_event: w[143],
525
+ }
526
+ }
527
+ fn store_event(s: &mut EntitySlot, e: &crate::transition::EventRecord) {
528
+ let offsets = [
529
+ 4, 12, 16, 20, 24, 28, 32, 36, 40, 44, 84, 140, 400, 424, 488, 492, 496, 536, 540, 568, 572,
530
+ ];
531
+ let values = [
532
+ e.kind,
533
+ e.trajectory[0],
534
+ e.trajectory[1],
535
+ e.trajectory[2],
536
+ e.origin[0],
537
+ e.origin[1],
538
+ e.origin[2],
539
+ e.velocity[0],
540
+ e.velocity[1],
541
+ e.velocity[2],
542
+ e.caller_time,
543
+ e.owner,
544
+ e.field400,
545
+ e.flags,
546
+ e.current_origin[0],
547
+ e.current_origin[1],
548
+ e.current_origin[2],
549
+ e.class_token,
550
+ e.class_hash,
551
+ e.event_time as u32,
552
+ e.free_after_event,
553
+ ];
554
+ for (o, v) in offsets.into_iter().zip(values) {
555
+ s.words[o / 4] = v;
556
+ }
557
+ }
558
+ /// Original153774 through153917, stopping before radio. Successful allocation
559
+ /// domain only; terminal allocator prefixes are exposed by allocate_entity.
560
+ /// Native registration/linking remain plans. Typed errors roll back both states.
561
+ pub fn allocated_defuse_start(
562
+ state: &mut crate::defuse::DefuseState,
563
+ pool: &mut EntityPool,
564
+ input: crate::defuse::DefuseInput,
565
+ start: u32,
566
+ origin: [u32; 3],
567
+ ) -> Result<AllocatedDefuseStart, Error> {
568
+ let mut next = *state;
569
+ let mut p = pool.clone();
570
+ crate::defuse::begin_defuse(&mut next, input)?;
571
+ let allocation = allocate_entity(&mut p, input.tick, start)?;
572
+ let index = allocation.selected.ok_or(Error::InvalidInput)?;
573
+ let initialized = p.slots[index].clone();
574
+ let mut event = slot_event(&initialized);
575
+ crate::transition::temporary_event(&mut event, origin, 83, input.tick as i32)
576
+ .map_err(|_| Error::InvalidInput)?;
577
+ store_event(&mut p.slots[index], &event);
578
+ p.slots[index].words[184 / 4] = input.duration;
579
+ p.slots[index].words[424 / 4] |= 32;
580
+ next.event = [input.duration, p.slots[index].words[424 / 4]];
581
+ *state = next;
582
+ *pool = p;
583
+ Ok(AllocatedDefuseStart {
584
+ allocation,
585
+ initialized,
586
+ links: vec![index],
587
+ })
588
+ }
589
+ #[cfg(test)]
590
+ mod allocated_defuse_tests {
591
+ use super::*;
592
+ fn pool() -> EntityPool {
593
+ let mut p = EntityPool {
594
+ count: 64,
595
+ slots: vec![
596
+ EntitySlot {
597
+ words: [0x12345678; 220]
598
+ };
599
+ 1024
600
+ ],
601
+ };
602
+ p.slots[64].words[532 / 4] = 1;
603
+ p.slots[64].words[564 / 4] = 0;
604
+ p
605
+ }
606
+ fn state() -> crate::defuse::DefuseState {
607
+ crate::defuse::DefuseState {
608
+ flags: 32864,
609
+ flags104: 2,
610
+ busy: 0,
611
+ clock: 123,
612
+ complete: 0,
613
+ animation: 99,
614
+ weapon: 11,
615
+ event: [7, 0x80000001],
616
+ }
617
+ }
618
+ fn input() -> crate::defuse::DefuseInput {
619
+ crate::defuse::DefuseInput {
620
+ tick: 5000,
621
+ duration: 5,
622
+ index: 3,
623
+ slot: 2,
624
+ }
625
+ }
626
+ #[test]
627
+ fn real_allocation_supplies_caller_event_flags_and_payload() {
628
+ let mut s = state();
629
+ let mut p = pool();
630
+ let o = allocated_defuse_start(
631
+ &mut s,
632
+ &mut p,
633
+ input(),
634
+ 0,
635
+ [1.9f32.to_bits(), (-2.9f32).to_bits(), 3.1f32.to_bits()],
636
+ )
637
+ .unwrap();
638
+ assert_eq!(o.allocation.selected, Some(64));
639
+ assert_eq!(o.allocation.registrations, [65]);
640
+ assert_eq!(s.event, [5, 0x12345678 | 32]);
641
+ assert_eq!(p.slots[64].words[4 / 4], 102);
642
+ assert_eq!(p.slots[64].words[24 / 4], 1f32.to_bits());
643
+ assert_eq!(p.slots[64].words[28 / 4], (-2f32).to_bits());
644
+ assert_eq!(p.slots[64].words[180 / 4], 0x12345678);
645
+ assert_eq!(p.slots[64].words[564 / 4], 0);
646
+ }
647
+ #[test]
648
+ fn bad_origin_rolls_back_allocator_and_start() {
649
+ let mut s = state();
650
+ let mut p = pool();
651
+ let old = (s, p.clone());
652
+ assert!(
653
+ allocated_defuse_start(&mut s, &mut p, input(), 0, [f32::NAN.to_bits(), 0, 0]).is_err()
654
+ );
655
+ assert_eq!((s, p), old);
656
+ }
657
+ }
docs/FINDINGS.md CHANGED
@@ -2022,8 +2022,12 @@ RE-1038: Thirty-five source scenarios execute radio with actual location selecti
2022
 
2023
  RE-1039: Rust composes nearest selection, bounded location text, team routing and the recovered ring formatter across35 source scenarios. Ring state wraps per recipient and149-byte clipping matches source warnings. Sender admission bypasses unused geometry; radio/marker/ring updates stage atomically. Tests cover long text, per-recipient ring advancement and inactive/error preservation. Engine box/PVS and sending remain external. [Evidence](research/RUST_LOCATION_RADIO.md).
2024
 
2025
- RE-1040: Sixteen source cases execute allocator277165 and initializer277125. First-pass reuse respects signed start+2000 and age1000 gates; a full pool retries without that age gate. Extension increments count before registration/init. Count1022 stops at diagnostics; a fully occupied1024 pool reaches fatal boundary with count1025. Initialization writes only index/in-use/class/hash/owner sentinel and preserves other words, including free time. Native registration and terminal effects remain captured/stopped. [Evidence](research/QVM_LOCATION_ALLOCATION.md).
2026
 
2027
  RE-1041: Rust matches16 actual allocator cases, including recent-free retry, count extension/registration, signed time gates and partial initialization. Terminal diagnostic/fatal outcomes preserve the source count and scan state, including count1025 before fatal handling. The supplied pool retains unrelated words. Unit tests cover retry without zeroing, terminal count behavior and rejection of subsequent allocation from invalid terminal count. Native registration/fatal handling remain plans/boundaries. [Evidence](research/RUST_LOCATION_ALLOCATION.md).
2028
 
2029
  RE-1042: Twenty-four source scenarios execute defuse start with actual allocator277165, initializer277125, constructor277695 and origin setter278138. Reuse, extension, recent-free extension and full-pool retry feed real selected records into caller payload/flag writes. Snapped origins, retained canary/free-time fields, registration counts and link targets are compared. Execution stops153917 before radio. Allocation terminals remain covered separately; native registration/linking are captured. [Evidence](research/QVM_LOCATION_ALLOCATED_DEFUSE.md).
 
 
 
 
 
2022
 
2023
  RE-1039: Rust composes nearest selection, bounded location text, team routing and the recovered ring formatter across35 source scenarios. Ring state wraps per recipient and149-byte clipping matches source warnings. Sender admission bypasses unused geometry; radio/marker/ring updates stage atomically. Tests cover long text, per-recipient ring advancement and inactive/error preservation. Engine box/PVS and sending remain external. [Evidence](research/RUST_LOCATION_RADIO.md).
2024
 
2025
+ RE-1040: Sixteen source cases execute allocator277165 and initializer277125. First-pass reuse respects signed start+2000 and age1000 gates; a full pool retries without that age gate. Extension increments count before registration/init. Count1022 stops at diagnostics; a fully occupied1024 pool reaches fatal boundary with count1025. Initialization writes only index/in-use/class/hash/field512 sentinel and preserves other words, including free time. Native registration and terminal effects remain captured/stopped. [Evidence](research/QVM_LOCATION_ALLOCATION.md).
2026
 
2027
  RE-1041: Rust matches16 actual allocator cases, including recent-free retry, count extension/registration, signed time gates and partial initialization. Terminal diagnostic/fatal outcomes preserve the source count and scan state, including count1025 before fatal handling. The supplied pool retains unrelated words. Unit tests cover retry without zeroing, terminal count behavior and rejection of subsequent allocation from invalid terminal count. Native registration/fatal handling remain plans/boundaries. [Evidence](research/RUST_LOCATION_ALLOCATION.md).
2028
 
2029
  RE-1042: Twenty-four source scenarios execute defuse start with actual allocator277165, initializer277125, constructor277695 and origin setter278138. Reuse, extension, recent-free extension and full-pool retry feed real selected records into caller payload/flag writes. Snapped origins, retained canary/free-time fields, registration counts and link targets are compared. Execution stops153917 before radio. Allocation terminals remain covered separately; native registration/linking are captured. [Evidence](research/QVM_LOCATION_ALLOCATED_DEFUSE.md).
2030
+
2031
+ RE-1043: Rust matches24 source scenarios composing real fixed-pool selection/init, event construction and caller defuse writes through the pre-radio boundary. Initial record flags and timestamps are retained rather than fabricated or zeroed. Source allocation/registration/link metadata and snapped event records match. Unsupported constructor/allocation outcomes reject atomically in this successful-allocation adapter; generic allocator terminal states remain separately exposed. Tests cover real payload flags and rollback after allocation. [Evidence](research/RUST_LOCATION_ALLOCATED_DEFUSE.md).
2032
+
2033
+ RE-1034–1043 batch validation passed:2,018 Python tests,339 Rust tests,146 deterministic affected producers and623 documentation files. All ten tasks have individual commits and focused checks. [Location/allocation evidence and next work](research/QVM_LOCATION_ALLOCATION_BATCH.md).
docs/PROVISIONAL_TODO.md CHANGED
@@ -2088,3 +2088,8 @@ RE-974–983 completed routing, command rewrite, inactivity, movement-parameter
2088
  - [x] RE-1041 Port fixed-pool allocation and terminal-state semantics ([evidence](research/RUST_LOCATION_ALLOCATION.md)).
2089
 
2090
  - [x] RE-1042 Resolve defuse start through actual event allocation ([evidence](research/QVM_LOCATION_ALLOCATED_DEFUSE.md)).
 
 
 
 
 
 
2088
  - [x] RE-1041 Port fixed-pool allocation and terminal-state semantics ([evidence](research/RUST_LOCATION_ALLOCATION.md)).
2089
 
2090
  - [x] RE-1042 Resolve defuse start through actual event allocation ([evidence](research/QVM_LOCATION_ALLOCATED_DEFUSE.md)).
2091
+
2092
+ - [x] RE-1043 Port allocated defuse start with preserved record state ([evidence](research/RUST_LOCATION_ALLOCATED_DEFUSE.md)).
2093
+
2094
+ - [x] RE-1034–1043 location/format/allocation batch:115 paired scenarios with actual location and formatter/radio chains plus allocated defuse events ([evidence](research/QVM_LOCATION_ALLOCATION_BATCH.md)).
2095
+ - [ ] RE-1044 combine allocated events and located radio with full lifecycle/native adapters ([scope](research/QVM_LOCATION_ALLOCATION_BATCH.md#next-work-re-1044)).
docs/RESEARCH_LEDGER.md CHANGED
@@ -2834,7 +2834,7 @@ Rust composes nearest selection, bounded location text, team routing and the rec
2834
 
2835
  ## 2026-10-29 — RE-1040 Recover objective-event allocator reuse and terminal boundaries
2836
 
2837
- Sixteen source cases execute allocator277165 and initializer277125. First-pass reuse respects signed start+2000 and age1000 gates; a full pool retries without that age gate. Extension increments count before registration/init. Count1022 stops at diagnostics; a fully occupied1024 pool reaches fatal boundary with count1025. Initialization writes only index/in-use/class/hash/owner sentinel and preserves other words, including free time. Native registration and terminal effects remain captured/stopped. Focused `cargo xtask test-group qvm-location-allocation` passes with deterministic report regeneration and selected regressions. Full suite deferred to task ten. Original assets unchanged; Python uses the flake-declared Nix runtime.
2838
 
2839
  ## 2026-10-29 — RE-1041 Port fixed-pool allocation and terminal-state semantics
2840
 
@@ -2843,3 +2843,7 @@ Rust matches16 actual allocator cases, including recent-free retry, count extens
2843
  ## 2026-10-29 — RE-1042 Resolve defuse start through actual event allocation
2844
 
2845
  Twenty-four source scenarios execute defuse start with actual allocator277165, initializer277125, constructor277695 and origin setter278138. Reuse, extension, recent-free extension and full-pool retry feed real selected records into caller payload/flag writes. Snapped origins, retained canary/free-time fields, registration counts and link targets are compared. Execution stops153917 before radio. Allocation terminals remain covered separately; native registration/linking are captured. Focused `cargo xtask test-group qvm-location-allocated-defuse` passes with deterministic report regeneration and selected regressions. Full suite deferred to task ten. Original assets unchanged; Python uses the flake-declared Nix runtime.
 
 
 
 
 
2834
 
2835
  ## 2026-10-29 — RE-1040 Recover objective-event allocator reuse and terminal boundaries
2836
 
2837
+ Sixteen source cases execute allocator277165 and initializer277125. First-pass reuse respects signed start+2000 and age1000 gates; a full pool retries without that age gate. Extension increments count before registration/init. Count1022 stops at diagnostics; a fully occupied1024 pool reaches fatal boundary with count1025. Initialization writes only index/in-use/class/hash/field512 sentinel and preserves other words, including free time. Native registration and terminal effects remain captured/stopped. Focused `cargo xtask test-group qvm-location-allocation` passes with deterministic report regeneration and selected regressions. Full suite deferred to task ten. Original assets unchanged; Python uses the flake-declared Nix runtime.
2838
 
2839
  ## 2026-10-29 — RE-1041 Port fixed-pool allocation and terminal-state semantics
2840
 
 
2843
  ## 2026-10-29 — RE-1042 Resolve defuse start through actual event allocation
2844
 
2845
  Twenty-four source scenarios execute defuse start with actual allocator277165, initializer277125, constructor277695 and origin setter278138. Reuse, extension, recent-free extension and full-pool retry feed real selected records into caller payload/flag writes. Snapped origins, retained canary/free-time fields, registration counts and link targets are compared. Execution stops153917 before radio. Allocation terminals remain covered separately; native registration/linking are captured. Focused `cargo xtask test-group qvm-location-allocated-defuse` passes with deterministic report regeneration and selected regressions. Full suite deferred to task ten. Original assets unchanged; Python uses the flake-declared Nix runtime.
2846
+
2847
+ ## 2026-10-29 — RE-1043 Port allocated defuse start with preserved record state
2848
+
2849
+ Rust matches24 source scenarios composing real fixed-pool selection/init, event construction and caller defuse writes through the pre-radio boundary. Initial record flags and timestamps are retained rather than fabricated or zeroed. Source allocation/registration/link metadata and snapped event records match. Unsupported constructor/allocation outcomes reject atomically in this successful-allocation adapter; generic allocator terminal states remain separately exposed. Tests cover real payload flags and rollback after allocation. Focused `cargo xtask test-group rust-location-allocated-defuse` passes with deterministic report regeneration and selected regressions. The single `cargo xtask test-full --since a1fd4e2b` run at the tenth-commit boundary passed: **2,018 Python tests** across559 modules, **339 Rust tests** (assets10, gameplay299, xtask30), **146 deterministic affected report producers**, storage policy, links across **623 documentation files** and whitespace guards. Regeneration left no changes, including earlier radio consumers. Focused dependency-registry regression 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
@@ -2125,3 +2125,8 @@ RE-974–983 recover routing, command rewriting, inactivity and composed setup t
2125
  - [x] RE-1041 Port fixed-pool allocation and terminal-state semantics ([evidence](research/RUST_LOCATION_ALLOCATION.md)).
2126
 
2127
  - [x] RE-1042 Resolve defuse start through actual event allocation ([evidence](research/QVM_LOCATION_ALLOCATED_DEFUSE.md)).
 
 
 
 
 
 
2125
  - [x] RE-1041 Port fixed-pool allocation and terminal-state semantics ([evidence](research/RUST_LOCATION_ALLOCATION.md)).
2126
 
2127
  - [x] RE-1042 Resolve defuse start through actual event allocation ([evidence](research/QVM_LOCATION_ALLOCATED_DEFUSE.md)).
2128
+
2129
+ - [x] RE-1043 Port allocated defuse start with preserved record state ([evidence](research/RUST_LOCATION_ALLOCATED_DEFUSE.md)).
2130
+
2131
+ - [x] RE-1034–1043 location/format/allocation batch:115 paired scenarios with actual location and formatter/radio chains plus allocated defuse events ([evidence](research/QVM_LOCATION_ALLOCATION_BATCH.md)).
2132
+ - [ ] RE-1044 combine allocated events and located radio with full lifecycle/native adapters ([scope](research/QVM_LOCATION_ALLOCATION_BATCH.md#next-work-re-1044)).
docs/TESTING.md CHANGED
@@ -195,3 +195,5 @@ Assistance focused pairs: `qvm-assist-acquire`/`rust-assist-acquire`, `qvm-assis
195
  Defuse focused pairs: `qvm-defuse-begin`/`rust-defuse-begin`, `qvm-defuse-cancel`/`rust-defuse-cancel`, `qvm-defuse-finish`/`rust-defuse-finish`, `qvm-defuse-complete`/`rust-defuse-complete`, and `qvm-defuse-sequence`/`rust-defuse-sequence`. Run one group per invocation. Defuse module/CLI and eligibility inputs select affected Rust producers plus gameplay test-count metadata. Full/replay source checks execute actual153419/276433/65655 with modeled sqrt and supplied/captured native effects; missing lookup stops before fatal2319. Batch-wide validation after task ten is `cargo xtask test-full --since 26cfc686`. [Evidence and boundaries](research/QVM_DEFUSE_BATCH.md).
196
 
197
  Resolved-feedback focused pairs: `qvm-effect-counter`/`rust-effect-counter`, `qvm-effect-radio`/`rust-effect-radio`, `qvm-effect-defuse-finish`/`rust-effect-defuse-finish`, `qvm-effect-defuse-begin`/`rust-effect-defuse-begin`, and `qvm-effect-defuse-complete`/`rust-effect-defuse-complete`. Run one group per invocation. Feedback/score/constructor and defuse inputs select affected producers plus gameplay test-count metadata. Function205260 is score,283463 is indexed counter increment and193620 is team radio; historical labels remain compatible. Full validation after task ten: `cargo xtask test-full --since 74572275`. [Evidence and correction](research/QVM_EFFECT_FEEDBACK_BATCH.md).
 
 
 
195
  Defuse focused pairs: `qvm-defuse-begin`/`rust-defuse-begin`, `qvm-defuse-cancel`/`rust-defuse-cancel`, `qvm-defuse-finish`/`rust-defuse-finish`, `qvm-defuse-complete`/`rust-defuse-complete`, and `qvm-defuse-sequence`/`rust-defuse-sequence`. Run one group per invocation. Defuse module/CLI and eligibility inputs select affected Rust producers plus gameplay test-count metadata. Full/replay source checks execute actual153419/276433/65655 with modeled sqrt and supplied/captured native effects; missing lookup stops before fatal2319. Batch-wide validation after task ten is `cargo xtask test-full --since 26cfc686`. [Evidence and boundaries](research/QVM_DEFUSE_BATCH.md).
196
 
197
  Resolved-feedback focused pairs: `qvm-effect-counter`/`rust-effect-counter`, `qvm-effect-radio`/`rust-effect-radio`, `qvm-effect-defuse-finish`/`rust-effect-defuse-finish`, `qvm-effect-defuse-begin`/`rust-effect-defuse-begin`, and `qvm-effect-defuse-complete`/`rust-effect-defuse-complete`. Run one group per invocation. Feedback/score/constructor and defuse inputs select affected producers plus gameplay test-count metadata. Function205260 is score,283463 is indexed counter increment and193620 is team radio; historical labels remain compatible. Full validation after task ten: `cargo xtask test-full --since 74572275`. [Evidence and correction](research/QVM_EFFECT_FEEDBACK_BATCH.md).
198
+
199
+ Location/allocation focused pairs: `qvm-location-nearest`/`rust-location-nearest`, `qvm-location-text`/`rust-location-text`, `qvm-location-radio`/`rust-location-radio`, `qvm-location-allocation`/`rust-location-allocation`, and `qvm-location-allocated-defuse`/`rust-location-allocated-defuse`. Use one group per invocation. Shared location/formatter/radio/defuse/constructor inputs select affected producers and gameplay test-count metadata. Native box/PVS/send/link/registration remain supplied or captured; allocator terminal prefixes are preserved and allocated-defuse stops before radio. Full validation after ten tasks: `cargo xtask test-full --since a1fd4e2b`. [Evidence and scope](research/QVM_LOCATION_ALLOCATION_BATCH.md).
docs/research/QVM_EFFECT_FEEDBACK_BATCH.md CHANGED
@@ -60,7 +60,9 @@ Remaining boundaries: base allocation277165, native links/sends, location268637,
60
 
61
  The single `cargo xtask test-full --since 74572275` run at the tenth-commit boundary passed: **1,998 Python tests** across549 modules, **329 Rust tests** (assets10, gameplay289, xtask30), **141 deterministic affected report producers**, storage policy, links across **612 documentation files** and whitespace guards. Regeneration left no changes, including earlier defuse outputs. Focused dependency-registry regression passed. Validation notes are amended into task ten, preserving ten commits.
62
 
63
- ## Next work: RE-1034
 
 
64
 
65
  - [ ] Connect actual location/formatter, allocation/lifetime, ranking and native link/send/log adapters into defuse and assistance feedback, reusing existing generic findings where applicable.
66
  - [ ] Migrate legacy effect-tag APIs/report readers to corrected semantic types without losing provenance or compatibility.
 
60
 
61
  The single `cargo xtask test-full --since 74572275` run at the tenth-commit boundary passed: **1,998 Python tests** across549 modules, **329 Rust tests** (assets10, gameplay289, xtask30), **141 deterministic affected report producers**, storage policy, links across **612 documentation files** and whitespace guards. Regeneration left no changes, including earlier defuse outputs. Focused dependency-registry regression passed. Validation notes are amended into task ten, preserving ten commits.
62
 
63
+ ## Follow-up from RE-1034
64
+
65
+ The [RE-1034–1043 location/allocation batch](QVM_LOCATION_ALLOCATION_BATCH.md) now covers actual location/text/formatting radio chains and allocation through defuse event construction. Native spatial/transport/lifecycle and ranking/log feedback remain open. The original follow-up scope was:
66
 
67
  - [ ] Connect actual location/formatter, allocation/lifetime, ranking and native link/send/log adapters into defuse and assistance feedback, reusing existing generic findings where applicable.
68
  - [ ] Migrate legacy effect-tag APIs/report readers to corrected semantic types without losing provenance or compatibility.
docs/research/QVM_LOCATION_ALLOCATION.md CHANGED
@@ -2,4 +2,4 @@
2
 
3
  RE-1040. Focused validation: `cargo xtask test-group qvm-location-allocation`. [Machine report](qvm-location-allocation.json).
4
 
5
- Sixteen source cases execute allocator277165 and initializer277125. First-pass reuse respects signed start+2000 and age1000 gates; a full pool retries without that age gate. Extension increments count before registration/init. Count1022 stops at diagnostics; a fully occupied1024 pool reaches fatal boundary with count1025. Initialization writes only index/in-use/class/hash/owner sentinel and preserves other words, including free time. Native registration and terminal effects remain captured/stopped.
 
2
 
3
  RE-1040. Focused validation: `cargo xtask test-group qvm-location-allocation`. [Machine report](qvm-location-allocation.json).
4
 
5
+ Sixteen source cases execute allocator277165 and initializer277125. First-pass reuse respects signed start+2000 and age1000 gates; a full pool retries without that age gate. Extension increments count before registration/init. Count1022 stops at diagnostics; a fully occupied1024 pool reaches fatal boundary with count1025. Initialization writes only index/in-use/class/hash/field512 sentinel and preserves other words, including free time. Native registration and terminal effects remain captured/stopped.
docs/research/QVM_LOCATION_ALLOCATION_BATCH.md ADDED
@@ -0,0 +1,69 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Location, formatting and objective allocation: RE-1034–1043
2
+
3
+ Ten tasks recover five source/Rust contracts across **115 paired scenarios**. They extend the [resolved effect-feedback batch](QVM_EFFECT_FEEDBACK_BATCH.md) by executing location selection/text and the actual radio formatting chain, then connecting successful pool allocation to defuse event construction. Every task has its own commit and focused validation.
4
+
5
+ | Tasks | Contract | Paired scenarios |
6
+ | --- | --- | ---: |
7
+ | RE-1034 / RE-1035 | [Source location selection](QVM_LOCATION_NEAREST.md) / [Rust selection](RUST_LOCATION_NEAREST.md) | 16 |
8
+ | RE-1036 / RE-1037 | [Source bounded location text](QVM_LOCATION_TEXT.md) / [Rust text](RUST_LOCATION_TEXT.md) | 24 |
9
+ | RE-1038 / RE-1039 | [Source located radio](QVM_LOCATION_RADIO.md) / [Rust radio](RUST_LOCATION_RADIO.md) | 35 |
10
+ | RE-1040 / RE-1041 | [Source allocator](QVM_LOCATION_ALLOCATION.md) / [Rust allocator](RUST_LOCATION_ALLOCATION.md) | 16 |
11
+ | RE-1042 / RE-1043 | [Source allocated defuse event](QVM_LOCATION_ALLOCATED_DEFUSE.md) / [Rust composition](RUST_LOCATION_ALLOCATED_DEFUSE.md) | 24 |
12
+
13
+ ## Cached, trigger and nearest location268248
14
+
15
+ An existing actor848 pointer returns immediately only while signed current tick is strictly before cached entity596 expiry. Equality is expired. No query, classname comparison or fallback geometry is evaluated on a live cache hit. The function does not update the actor's cache field on any recovered path.
16
+
17
+ On a miss, engine-33 receives an origin-centered query box with extents40/40/52 and a1024-entry response buffer. The first returned entity whose classname compares case-insensitively equal to `trigger_location` wins immediately. Actual69386 performs the comparison. Query results and their order are supplied engine evidence; the routine does not independently prove geometric trigger containment.
18
+
19
+ Otherwise it traverses the list at34999640. Each entity524 points to a structure whose24 field holds the next location. Squared f32 distance must be at most the current best, initially201326592. Engine-27 PVS is queried only within that bound. A visible candidate replaces the best, including equal distances, so later visible ties win. Supplied identity/order, finite positions and native box/PVS responses bound this contract. Tests include cache equality/wrap, trigger precedence, hidden locations, empty lists and distance-bound rejection.
20
+
21
+ ## Location text268637 and actual formatting
22
+
23
+ The wrapper always calls selection once. A null result returns0 without clearing the destination. A selected location formats its592 string through actual70386/37914 and bounded-copy helpers, then returns1 regardless of empty text or clipping. The original warning5123 occurs when formatted length reaches capacity. The destination is zero-padded within capacity; neighboring bytes survive.
24
+
25
+ Twenty-four cases cover missing/found location, empty/quoted text and capacities1/4/16/150. Rust uses the existing recovered bounded formatter. A missing location can bypass otherwise unused zero-capacity input; a found unsupported capacity rejects without mutation. This wrapper contract supplies the selected pointer; the next composition executes actual selection.
26
+
27
+ ## Radio location/formatting composition
28
+
29
+ Thirty-five scenarios execute193620,268637,268248,70386,70458,37914 and their recovered comparison/classification/formatting helpers. The location label now derives from actual cache/trigger/list/PVS selection instead of a supplied text response. A missing location reaches the original caller's first-byte clearing path and produces empty radio text.
30
+
31
+ The actual ring formatter alternates buffers and advances its counter for each recipient. Source/Rust cases cover counter wrapping, mode/team/sender gates, no recipients and64-entry tables. Quotes remain literal bytes. A160-byte location label clips to149 bytes in the150-byte location buffer, emits one warning and is then inserted into the radio command. Marker deadlines change only after sends as established in the prior batch.
32
+
33
+ Rust stages marker/ring updates and reuses the existing formatting and radio policies. Engine box/PVS responses and native network sends remain boundaries. The downstream client interpretation/audio behavior of radio messages is not exercised.
34
+
35
+ ## Allocator277165 and initializer277125
36
+
37
+ The allocator scans non-client entities from slot64. A first-pass free record is skipped when its signed free timestamp is later than start+2000 and its wrapped signed age is below1000. A pool with count1024 retries once without the recent-free gate. Successful reuse preserves count and requests no registration.
38
+
39
+ Extension increments count, requests native-16 registration and initializes the selected slot. At count1022 with no reusable record, the source resets its scan index to0 and reaches the diagnostic-loop boundary. At a full1024-entry pool with no reusable record, it retries, increments count to1025 and reaches the fatal boundary before registration/initialization. These prefixes are preserved rather than clamped or invented as successful allocations.
40
+
41
+ Initialization writes index0, in-use532, class536/hash540 and field512=1023. It does not zero the record. Sixteen cases compare initialization and retained canary/free-time fields, exact age/start thresholds, signed wraps, extension/reuse/retry and terminal prefixes. Initial bytes outside the current count are explicitly supplied; the64-entry fixture already seeds slot64 with free-time0, which initialization preserves.
42
+
43
+ Rust uses caller-supplied fixed pool records. Terminal outcomes expose the preceding source count/scan writes and do not execute diagnostic/fatal effects. A subsequent allocation with terminal count1025 rejects. Native registration/lifetime and allocation concurrency remain external.
44
+
45
+ ## Allocated defuse start through153917
46
+
47
+ Twenty-four source cases compose153774 with actual277695→277165→277125 and278138. Successful reuse, extension, recent-free extension and full-pool retry return real selected records to the constructor and caller. The constructor snaps origin and initializes event metadata; the caller then writes configured duration to184 and ORs mask32 into424.
48
+
49
+ Reports compare the initialized record separately from the final event, registration counts, selected slots, link requests, caller flags/clock/animation and retained neighboring words. Raw old record flags feed the caller event state; they are not replaced with synthetic fixed flags. Source execution stops at153917 before radio routing. Located radio is verified separately above; a complete combined allocator/radio/client path remains future work.
50
+
51
+ The Rust composition stages defuse and pool state until allocation/construction succeeds. Its successful-allocation source domain excludes allocator terminal prefixes, which are separately exposed by the generic allocator. Unsupported composition inputs reject atomically; that typed adapter guarantee does not assert rollback behavior for original fatal/undefined domains. Native linking and registration remain plans.
52
+
53
+ ## Validation and remaining boundaries
54
+
55
+ Every task runs the matching `cargo xtask test-group qvm-location-*` or `rust-location-*` before committing. Selected reports regenerate twice identically. Source reports retain verified QVM identity and trace summaries; independent cache/format/arithmetic/pool expectations check results. Rust reports retain source-report SHA256 and compare all projected fields. Ten additional Rust tests cover ties, cache/trigger bypass, missing/clipped text, radio ring state, terminal allocator counts, preserved records and atomic composition errors.
56
+
57
+ Dependency mappings include the location module/CLI, formatter, radio, defuse and event-constructor consumers plus gameplay test-count metadata. The registry regression verifies selection. One full-suite check follows task ten: `cargo xtask test-full --since a1fd4e2b`. Python uses only the flake-declared Nix runtime, including Git hooks. Original assets are unchanged.
58
+
59
+ Native engine box/PVS, linking, registration, sending, allocation lifecycle and full ranking/log feedback remain explicit boundaries. These are finite QVM/Rust policies, not native runtime/platform conformance.
60
+
61
+ The single `cargo xtask test-full --since a1fd4e2b` run at the tenth-commit boundary passed: **2,018 Python tests** across559 modules, **339 Rust tests** (assets10, gameplay299, xtask30), **146 deterministic affected report producers**, storage policy, links across **623 documentation files** and whitespace guards. Regeneration left no changes, including earlier radio consumers. Focused dependency-registry regression passed. Validation notes are amended into task ten, preserving ten commits.
62
+
63
+ ## Next work: RE-1044
64
+
65
+ - [ ] Combine allocated objective events and located radio with the complete defuse callback and longer lifecycle sequences, including allocation-terminal caller prefixes.
66
+ - [ ] Connect remaining ranking/log feedback and native box/PVS/link/register/send adapters, reusing existing engine research where applicable.
67
+ - [ ] Verify location/cache ownership, real spatial candidate generation and entity/linked identity/aliasing through allocation/free cycles.
68
+ - [ ] Migrate historical effect labels to semantic APIs while retaining evidence compatibility; connect radio/objective client rendering/audio consumers.
69
+ - [ ] Compose full154089 preparation, assistance/self recovery, defusing, movement54475 and timer155714; continue asset conversion, Bevy/Solari rendering and macOS/Linux acceptance.
docs/research/README.md CHANGED
@@ -1655,3 +1655,7 @@ The extension collector adds five focused tests for native tail calls, command-r
1655
  - [RE-1041: Port fixed-pool allocation and terminal-state semantics](RUST_LOCATION_ALLOCATION.md).
1656
 
1657
  - [RE-1042: Resolve defuse start through actual event allocation](QVM_LOCATION_ALLOCATED_DEFUSE.md).
 
 
 
 
 
1655
  - [RE-1041: Port fixed-pool allocation and terminal-state semantics](RUST_LOCATION_ALLOCATION.md).
1656
 
1657
  - [RE-1042: Resolve defuse start through actual event allocation](QVM_LOCATION_ALLOCATED_DEFUSE.md).
1658
+
1659
+ - [RE-1043: Port allocated defuse start with preserved record state](RUST_LOCATION_ALLOCATED_DEFUSE.md).
1660
+
1661
+ - [Location, formatting and objective allocation: RE-1034–1043](QVM_LOCATION_ALLOCATION_BATCH.md).
docs/research/RUST_LOCATION_ALLOCATED_DEFUSE.md ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ # Port allocated defuse start with preserved record state
2
+
3
+ RE-1043. Focused validation: `cargo xtask test-group rust-location-allocated-defuse`. [Machine report](rust-location-allocated-defuse.json).
4
+
5
+ Rust matches24 source scenarios composing real fixed-pool selection/init, event construction and caller defuse writes through the pre-radio boundary. Initial record flags and timestamps are retained rather than fabricated or zeroed. Source allocation/registration/link metadata and snapped event records match. Unsupported constructor/allocation outcomes reject atomically in this successful-allocation adapter; generic allocator terminal states remain separately exposed. Tests cover real payload flags and rollback after allocation.
docs/research/rust-health-impulse.json CHANGED
@@ -2985,7 +2985,7 @@
2985
  "exit_code": 2
2986
  }
2987
  ],
2988
- "rust_unit_tests": 297,
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": 299,
2989
  "source_report": "docs/research/qvm-health-impulse.json",
2990
  "source_report_sha256": "625fd8064004ea6dbdf398d51d0af844d9c635ff04c0a0790886dddb6ab81e71"
2991
  }
docs/research/rust-location-allocated-defuse.json ADDED
@@ -0,0 +1,3415 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "limits": "Finite source/Rust contract parity; native time/file/network replies remain supplied or captured.",
3
+ "probes": [
4
+ {
5
+ "rust": {
6
+ "allocation": {
7
+ "count": 65,
8
+ "record": {
9
+ "0": 64,
10
+ "140": 305419896,
11
+ "424": 305419896,
12
+ "512": 1023,
13
+ "532": 1,
14
+ "536": 97243,
15
+ "540": 3226498489,
16
+ "564": 0,
17
+ "84": 305419896
18
+ },
19
+ "registrations": [
20
+ 65
21
+ ],
22
+ "retry": 0,
23
+ "scan_index": 64,
24
+ "selected": 64,
25
+ "status": "returned"
26
+ },
27
+ "animation": 2,
28
+ "busy": 1,
29
+ "clock": 5000,
30
+ "complete": 0,
31
+ "event": [
32
+ 0,
33
+ 305419896
34
+ ],
35
+ "flags": 2147516420,
36
+ "flags104": 2147483666,
37
+ "guards": [
38
+ 305419896,
39
+ 305419896
40
+ ],
41
+ "links": [
42
+ 64
43
+ ],
44
+ "record": {
45
+ "0": 64,
46
+ "12": 0,
47
+ "140": 305419896,
48
+ "16": 0,
49
+ "180": 305419896,
50
+ "184": 0,
51
+ "188": 305419896,
52
+ "20": 0,
53
+ "24": 1065353216,
54
+ "28": 3221225472,
55
+ "32": 1077936128,
56
+ "36": 0,
57
+ "4": 102,
58
+ "40": 0,
59
+ "400": 305419896,
60
+ "424": 305419896,
61
+ "44": 0,
62
+ "488": 1065353216,
63
+ "492": 3221225472,
64
+ "496": 1077936128,
65
+ "512": 1023,
66
+ "532": 1,
67
+ "536": 97191,
68
+ "540": 662184166,
69
+ "564": 0,
70
+ "568": 5000,
71
+ "572": 1,
72
+ "84": 305419896
73
+ },
74
+ "weapon": 305397771
75
+ },
76
+ "source": {
77
+ "allocation": {
78
+ "count": 65,
79
+ "record": {
80
+ "0": 64,
81
+ "140": 305419896,
82
+ "424": 305419896,
83
+ "512": 1023,
84
+ "532": 1,
85
+ "536": 97243,
86
+ "540": 3226498489,
87
+ "564": 0,
88
+ "84": 305419896
89
+ },
90
+ "registrations": [
91
+ 65
92
+ ],
93
+ "retry": 0,
94
+ "scan_index": 64,
95
+ "selected": 64,
96
+ "status": "returned"
97
+ },
98
+ "animation": 2,
99
+ "busy": 1,
100
+ "clock": 5000,
101
+ "complete": 0,
102
+ "event": [
103
+ 0,
104
+ 305419896
105
+ ],
106
+ "flags": 2147516420,
107
+ "flags104": 2147483666,
108
+ "guards": [
109
+ 305419896,
110
+ 305419896
111
+ ],
112
+ "links": [
113
+ 64
114
+ ],
115
+ "record": {
116
+ "0": 64,
117
+ "12": 0,
118
+ "140": 305419896,
119
+ "16": 0,
120
+ "180": 305419896,
121
+ "184": 0,
122
+ "188": 305419896,
123
+ "20": 0,
124
+ "24": 1065353216,
125
+ "28": 3221225472,
126
+ "32": 1077936128,
127
+ "36": 0,
128
+ "4": 102,
129
+ "40": 0,
130
+ "400": 305419896,
131
+ "424": 305419896,
132
+ "44": 0,
133
+ "488": 1065353216,
134
+ "492": 3221225472,
135
+ "496": 1077936128,
136
+ "512": 1023,
137
+ "532": 1,
138
+ "536": 97191,
139
+ "540": 662184166,
140
+ "564": 0,
141
+ "568": 5000,
142
+ "572": 1,
143
+ "84": 305419896
144
+ },
145
+ "weapon": 305397771
146
+ }
147
+ },
148
+ {
149
+ "rust": {
150
+ "allocation": {
151
+ "count": 65,
152
+ "record": {
153
+ "0": 64,
154
+ "140": 305419896,
155
+ "424": 305419896,
156
+ "512": 1023,
157
+ "532": 1,
158
+ "536": 97243,
159
+ "540": 3226498489,
160
+ "564": 0,
161
+ "84": 305419896
162
+ },
163
+ "registrations": [
164
+ 65
165
+ ],
166
+ "retry": 0,
167
+ "scan_index": 64,
168
+ "selected": 64,
169
+ "status": "returned"
170
+ },
171
+ "animation": 2,
172
+ "busy": 1,
173
+ "clock": 5000,
174
+ "complete": 0,
175
+ "event": [
176
+ 5,
177
+ 305419896
178
+ ],
179
+ "flags": 2147516420,
180
+ "flags104": 2147483666,
181
+ "guards": [
182
+ 305419896,
183
+ 305419896
184
+ ],
185
+ "links": [
186
+ 64
187
+ ],
188
+ "record": {
189
+ "0": 64,
190
+ "12": 0,
191
+ "140": 305419896,
192
+ "16": 0,
193
+ "180": 305419896,
194
+ "184": 5,
195
+ "188": 305419896,
196
+ "20": 0,
197
+ "24": 1065353216,
198
+ "28": 3221225472,
199
+ "32": 1077936128,
200
+ "36": 0,
201
+ "4": 102,
202
+ "40": 0,
203
+ "400": 305419896,
204
+ "424": 305419896,
205
+ "44": 0,
206
+ "488": 1065353216,
207
+ "492": 3221225472,
208
+ "496": 1077936128,
209
+ "512": 1023,
210
+ "532": 1,
211
+ "536": 97191,
212
+ "540": 662184166,
213
+ "564": 0,
214
+ "568": 5000,
215
+ "572": 1,
216
+ "84": 305419896
217
+ },
218
+ "weapon": 305397771
219
+ },
220
+ "source": {
221
+ "allocation": {
222
+ "count": 65,
223
+ "record": {
224
+ "0": 64,
225
+ "140": 305419896,
226
+ "424": 305419896,
227
+ "512": 1023,
228
+ "532": 1,
229
+ "536": 97243,
230
+ "540": 3226498489,
231
+ "564": 0,
232
+ "84": 305419896
233
+ },
234
+ "registrations": [
235
+ 65
236
+ ],
237
+ "retry": 0,
238
+ "scan_index": 64,
239
+ "selected": 64,
240
+ "status": "returned"
241
+ },
242
+ "animation": 2,
243
+ "busy": 1,
244
+ "clock": 5000,
245
+ "complete": 0,
246
+ "event": [
247
+ 5,
248
+ 305419896
249
+ ],
250
+ "flags": 2147516420,
251
+ "flags104": 2147483666,
252
+ "guards": [
253
+ 305419896,
254
+ 305419896
255
+ ],
256
+ "links": [
257
+ 64
258
+ ],
259
+ "record": {
260
+ "0": 64,
261
+ "12": 0,
262
+ "140": 305419896,
263
+ "16": 0,
264
+ "180": 305419896,
265
+ "184": 5,
266
+ "188": 305419896,
267
+ "20": 0,
268
+ "24": 1065353216,
269
+ "28": 3221225472,
270
+ "32": 1077936128,
271
+ "36": 0,
272
+ "4": 102,
273
+ "40": 0,
274
+ "400": 305419896,
275
+ "424": 305419896,
276
+ "44": 0,
277
+ "488": 1065353216,
278
+ "492": 3221225472,
279
+ "496": 1077936128,
280
+ "512": 1023,
281
+ "532": 1,
282
+ "536": 97191,
283
+ "540": 662184166,
284
+ "564": 0,
285
+ "568": 5000,
286
+ "572": 1,
287
+ "84": 305419896
288
+ },
289
+ "weapon": 305397771
290
+ }
291
+ },
292
+ {
293
+ "rust": {
294
+ "allocation": {
295
+ "count": 65,
296
+ "record": {
297
+ "0": 64,
298
+ "140": 305419896,
299
+ "424": 305419896,
300
+ "512": 1023,
301
+ "532": 1,
302
+ "536": 97243,
303
+ "540": 3226498489,
304
+ "564": 0,
305
+ "84": 305419896
306
+ },
307
+ "registrations": [
308
+ 65
309
+ ],
310
+ "retry": 0,
311
+ "scan_index": 64,
312
+ "selected": 64,
313
+ "status": "returned"
314
+ },
315
+ "animation": 2,
316
+ "busy": 1,
317
+ "clock": 5000,
318
+ "complete": 0,
319
+ "event": [
320
+ 4294967295,
321
+ 305419896
322
+ ],
323
+ "flags": 2147516420,
324
+ "flags104": 2147483666,
325
+ "guards": [
326
+ 305419896,
327
+ 305419896
328
+ ],
329
+ "links": [
330
+ 64
331
+ ],
332
+ "record": {
333
+ "0": 64,
334
+ "12": 0,
335
+ "140": 305419896,
336
+ "16": 0,
337
+ "180": 305419896,
338
+ "184": 4294967295,
339
+ "188": 305419896,
340
+ "20": 0,
341
+ "24": 1065353216,
342
+ "28": 3221225472,
343
+ "32": 1077936128,
344
+ "36": 0,
345
+ "4": 102,
346
+ "40": 0,
347
+ "400": 305419896,
348
+ "424": 305419896,
349
+ "44": 0,
350
+ "488": 1065353216,
351
+ "492": 3221225472,
352
+ "496": 1077936128,
353
+ "512": 1023,
354
+ "532": 1,
355
+ "536": 97191,
356
+ "540": 662184166,
357
+ "564": 0,
358
+ "568": 5000,
359
+ "572": 1,
360
+ "84": 305419896
361
+ },
362
+ "weapon": 305397771
363
+ },
364
+ "source": {
365
+ "allocation": {
366
+ "count": 65,
367
+ "record": {
368
+ "0": 64,
369
+ "140": 305419896,
370
+ "424": 305419896,
371
+ "512": 1023,
372
+ "532": 1,
373
+ "536": 97243,
374
+ "540": 3226498489,
375
+ "564": 0,
376
+ "84": 305419896
377
+ },
378
+ "registrations": [
379
+ 65
380
+ ],
381
+ "retry": 0,
382
+ "scan_index": 64,
383
+ "selected": 64,
384
+ "status": "returned"
385
+ },
386
+ "animation": 2,
387
+ "busy": 1,
388
+ "clock": 5000,
389
+ "complete": 0,
390
+ "event": [
391
+ 4294967295,
392
+ 305419896
393
+ ],
394
+ "flags": 2147516420,
395
+ "flags104": 2147483666,
396
+ "guards": [
397
+ 305419896,
398
+ 305419896
399
+ ],
400
+ "links": [
401
+ 64
402
+ ],
403
+ "record": {
404
+ "0": 64,
405
+ "12": 0,
406
+ "140": 305419896,
407
+ "16": 0,
408
+ "180": 305419896,
409
+ "184": 4294967295,
410
+ "188": 305419896,
411
+ "20": 0,
412
+ "24": 1065353216,
413
+ "28": 3221225472,
414
+ "32": 1077936128,
415
+ "36": 0,
416
+ "4": 102,
417
+ "40": 0,
418
+ "400": 305419896,
419
+ "424": 305419896,
420
+ "44": 0,
421
+ "488": 1065353216,
422
+ "492": 3221225472,
423
+ "496": 1077936128,
424
+ "512": 1023,
425
+ "532": 1,
426
+ "536": 97191,
427
+ "540": 662184166,
428
+ "564": 0,
429
+ "568": 5000,
430
+ "572": 1,
431
+ "84": 305419896
432
+ },
433
+ "weapon": 305397771
434
+ }
435
+ },
436
+ {
437
+ "rust": {
438
+ "allocation": {
439
+ "count": 65,
440
+ "record": {
441
+ "0": 64,
442
+ "140": 305419896,
443
+ "424": 305419896,
444
+ "512": 1023,
445
+ "532": 1,
446
+ "536": 97243,
447
+ "540": 3226498489,
448
+ "564": 0,
449
+ "84": 305419896
450
+ },
451
+ "registrations": [
452
+ 65
453
+ ],
454
+ "retry": 0,
455
+ "scan_index": 64,
456
+ "selected": 64,
457
+ "status": "returned"
458
+ },
459
+ "animation": 2,
460
+ "busy": 1,
461
+ "clock": 5000,
462
+ "complete": 0,
463
+ "event": [
464
+ 0,
465
+ 305419896
466
+ ],
467
+ "flags": 2147516420,
468
+ "flags104": 2147483666,
469
+ "guards": [
470
+ 305419896,
471
+ 305419896
472
+ ],
473
+ "links": [
474
+ 64
475
+ ],
476
+ "record": {
477
+ "0": 64,
478
+ "12": 0,
479
+ "140": 305419896,
480
+ "16": 0,
481
+ "180": 305419896,
482
+ "184": 0,
483
+ "188": 305419896,
484
+ "20": 0,
485
+ "24": 0,
486
+ "28": 0,
487
+ "32": 0,
488
+ "36": 0,
489
+ "4": 102,
490
+ "40": 0,
491
+ "400": 305419896,
492
+ "424": 305419896,
493
+ "44": 0,
494
+ "488": 0,
495
+ "492": 0,
496
+ "496": 0,
497
+ "512": 1023,
498
+ "532": 1,
499
+ "536": 97191,
500
+ "540": 662184166,
501
+ "564": 0,
502
+ "568": 5000,
503
+ "572": 1,
504
+ "84": 305419896
505
+ },
506
+ "weapon": 305397771
507
+ },
508
+ "source": {
509
+ "allocation": {
510
+ "count": 65,
511
+ "record": {
512
+ "0": 64,
513
+ "140": 305419896,
514
+ "424": 305419896,
515
+ "512": 1023,
516
+ "532": 1,
517
+ "536": 97243,
518
+ "540": 3226498489,
519
+ "564": 0,
520
+ "84": 305419896
521
+ },
522
+ "registrations": [
523
+ 65
524
+ ],
525
+ "retry": 0,
526
+ "scan_index": 64,
527
+ "selected": 64,
528
+ "status": "returned"
529
+ },
530
+ "animation": 2,
531
+ "busy": 1,
532
+ "clock": 5000,
533
+ "complete": 0,
534
+ "event": [
535
+ 0,
536
+ 305419896
537
+ ],
538
+ "flags": 2147516420,
539
+ "flags104": 2147483666,
540
+ "guards": [
541
+ 305419896,
542
+ 305419896
543
+ ],
544
+ "links": [
545
+ 64
546
+ ],
547
+ "record": {
548
+ "0": 64,
549
+ "12": 0,
550
+ "140": 305419896,
551
+ "16": 0,
552
+ "180": 305419896,
553
+ "184": 0,
554
+ "188": 305419896,
555
+ "20": 0,
556
+ "24": 0,
557
+ "28": 0,
558
+ "32": 0,
559
+ "36": 0,
560
+ "4": 102,
561
+ "40": 0,
562
+ "400": 305419896,
563
+ "424": 305419896,
564
+ "44": 0,
565
+ "488": 0,
566
+ "492": 0,
567
+ "496": 0,
568
+ "512": 1023,
569
+ "532": 1,
570
+ "536": 97191,
571
+ "540": 662184166,
572
+ "564": 0,
573
+ "568": 5000,
574
+ "572": 1,
575
+ "84": 305419896
576
+ },
577
+ "weapon": 305397771
578
+ }
579
+ },
580
+ {
581
+ "rust": {
582
+ "allocation": {
583
+ "count": 65,
584
+ "record": {
585
+ "0": 64,
586
+ "140": 305419896,
587
+ "424": 305419896,
588
+ "512": 1023,
589
+ "532": 1,
590
+ "536": 97243,
591
+ "540": 3226498489,
592
+ "564": 0,
593
+ "84": 305419896
594
+ },
595
+ "registrations": [
596
+ 65
597
+ ],
598
+ "retry": 0,
599
+ "scan_index": 64,
600
+ "selected": 64,
601
+ "status": "returned"
602
+ },
603
+ "animation": 2,
604
+ "busy": 1,
605
+ "clock": 5000,
606
+ "complete": 0,
607
+ "event": [
608
+ 5,
609
+ 305419896
610
+ ],
611
+ "flags": 2147516420,
612
+ "flags104": 2147483666,
613
+ "guards": [
614
+ 305419896,
615
+ 305419896
616
+ ],
617
+ "links": [
618
+ 64
619
+ ],
620
+ "record": {
621
+ "0": 64,
622
+ "12": 0,
623
+ "140": 305419896,
624
+ "16": 0,
625
+ "180": 305419896,
626
+ "184": 5,
627
+ "188": 305419896,
628
+ "20": 0,
629
+ "24": 0,
630
+ "28": 0,
631
+ "32": 0,
632
+ "36": 0,
633
+ "4": 102,
634
+ "40": 0,
635
+ "400": 305419896,
636
+ "424": 305419896,
637
+ "44": 0,
638
+ "488": 0,
639
+ "492": 0,
640
+ "496": 0,
641
+ "512": 1023,
642
+ "532": 1,
643
+ "536": 97191,
644
+ "540": 662184166,
645
+ "564": 0,
646
+ "568": 5000,
647
+ "572": 1,
648
+ "84": 305419896
649
+ },
650
+ "weapon": 305397771
651
+ },
652
+ "source": {
653
+ "allocation": {
654
+ "count": 65,
655
+ "record": {
656
+ "0": 64,
657
+ "140": 305419896,
658
+ "424": 305419896,
659
+ "512": 1023,
660
+ "532": 1,
661
+ "536": 97243,
662
+ "540": 3226498489,
663
+ "564": 0,
664
+ "84": 305419896
665
+ },
666
+ "registrations": [
667
+ 65
668
+ ],
669
+ "retry": 0,
670
+ "scan_index": 64,
671
+ "selected": 64,
672
+ "status": "returned"
673
+ },
674
+ "animation": 2,
675
+ "busy": 1,
676
+ "clock": 5000,
677
+ "complete": 0,
678
+ "event": [
679
+ 5,
680
+ 305419896
681
+ ],
682
+ "flags": 2147516420,
683
+ "flags104": 2147483666,
684
+ "guards": [
685
+ 305419896,
686
+ 305419896
687
+ ],
688
+ "links": [
689
+ 64
690
+ ],
691
+ "record": {
692
+ "0": 64,
693
+ "12": 0,
694
+ "140": 305419896,
695
+ "16": 0,
696
+ "180": 305419896,
697
+ "184": 5,
698
+ "188": 305419896,
699
+ "20": 0,
700
+ "24": 0,
701
+ "28": 0,
702
+ "32": 0,
703
+ "36": 0,
704
+ "4": 102,
705
+ "40": 0,
706
+ "400": 305419896,
707
+ "424": 305419896,
708
+ "44": 0,
709
+ "488": 0,
710
+ "492": 0,
711
+ "496": 0,
712
+ "512": 1023,
713
+ "532": 1,
714
+ "536": 97191,
715
+ "540": 662184166,
716
+ "564": 0,
717
+ "568": 5000,
718
+ "572": 1,
719
+ "84": 305419896
720
+ },
721
+ "weapon": 305397771
722
+ }
723
+ },
724
+ {
725
+ "rust": {
726
+ "allocation": {
727
+ "count": 65,
728
+ "record": {
729
+ "0": 64,
730
+ "140": 305419896,
731
+ "424": 305419896,
732
+ "512": 1023,
733
+ "532": 1,
734
+ "536": 97243,
735
+ "540": 3226498489,
736
+ "564": 0,
737
+ "84": 305419896
738
+ },
739
+ "registrations": [
740
+ 65
741
+ ],
742
+ "retry": 0,
743
+ "scan_index": 64,
744
+ "selected": 64,
745
+ "status": "returned"
746
+ },
747
+ "animation": 2,
748
+ "busy": 1,
749
+ "clock": 5000,
750
+ "complete": 0,
751
+ "event": [
752
+ 4294967295,
753
+ 305419896
754
+ ],
755
+ "flags": 2147516420,
756
+ "flags104": 2147483666,
757
+ "guards": [
758
+ 305419896,
759
+ 305419896
760
+ ],
761
+ "links": [
762
+ 64
763
+ ],
764
+ "record": {
765
+ "0": 64,
766
+ "12": 0,
767
+ "140": 305419896,
768
+ "16": 0,
769
+ "180": 305419896,
770
+ "184": 4294967295,
771
+ "188": 305419896,
772
+ "20": 0,
773
+ "24": 0,
774
+ "28": 0,
775
+ "32": 0,
776
+ "36": 0,
777
+ "4": 102,
778
+ "40": 0,
779
+ "400": 305419896,
780
+ "424": 305419896,
781
+ "44": 0,
782
+ "488": 0,
783
+ "492": 0,
784
+ "496": 0,
785
+ "512": 1023,
786
+ "532": 1,
787
+ "536": 97191,
788
+ "540": 662184166,
789
+ "564": 0,
790
+ "568": 5000,
791
+ "572": 1,
792
+ "84": 305419896
793
+ },
794
+ "weapon": 305397771
795
+ },
796
+ "source": {
797
+ "allocation": {
798
+ "count": 65,
799
+ "record": {
800
+ "0": 64,
801
+ "140": 305419896,
802
+ "424": 305419896,
803
+ "512": 1023,
804
+ "532": 1,
805
+ "536": 97243,
806
+ "540": 3226498489,
807
+ "564": 0,
808
+ "84": 305419896
809
+ },
810
+ "registrations": [
811
+ 65
812
+ ],
813
+ "retry": 0,
814
+ "scan_index": 64,
815
+ "selected": 64,
816
+ "status": "returned"
817
+ },
818
+ "animation": 2,
819
+ "busy": 1,
820
+ "clock": 5000,
821
+ "complete": 0,
822
+ "event": [
823
+ 4294967295,
824
+ 305419896
825
+ ],
826
+ "flags": 2147516420,
827
+ "flags104": 2147483666,
828
+ "guards": [
829
+ 305419896,
830
+ 305419896
831
+ ],
832
+ "links": [
833
+ 64
834
+ ],
835
+ "record": {
836
+ "0": 64,
837
+ "12": 0,
838
+ "140": 305419896,
839
+ "16": 0,
840
+ "180": 305419896,
841
+ "184": 4294967295,
842
+ "188": 305419896,
843
+ "20": 0,
844
+ "24": 0,
845
+ "28": 0,
846
+ "32": 0,
847
+ "36": 0,
848
+ "4": 102,
849
+ "40": 0,
850
+ "400": 305419896,
851
+ "424": 305419896,
852
+ "44": 0,
853
+ "488": 0,
854
+ "492": 0,
855
+ "496": 0,
856
+ "512": 1023,
857
+ "532": 1,
858
+ "536": 97191,
859
+ "540": 662184166,
860
+ "564": 0,
861
+ "568": 5000,
862
+ "572": 1,
863
+ "84": 305419896
864
+ },
865
+ "weapon": 305397771
866
+ }
867
+ },
868
+ {
869
+ "rust": {
870
+ "allocation": {
871
+ "count": 66,
872
+ "record": {
873
+ "0": 64,
874
+ "140": 305419896,
875
+ "424": 305419896,
876
+ "512": 1023,
877
+ "532": 1,
878
+ "536": 97243,
879
+ "540": 3226498489,
880
+ "564": 0,
881
+ "84": 305419896
882
+ },
883
+ "registrations": [],
884
+ "retry": 0,
885
+ "scan_index": 64,
886
+ "selected": 64,
887
+ "status": "returned"
888
+ },
889
+ "animation": 2,
890
+ "busy": 1,
891
+ "clock": 5000,
892
+ "complete": 0,
893
+ "event": [
894
+ 0,
895
+ 305419896
896
+ ],
897
+ "flags": 2147516420,
898
+ "flags104": 2147483666,
899
+ "guards": [
900
+ 305419896,
901
+ 305419896
902
+ ],
903
+ "links": [
904
+ 64
905
+ ],
906
+ "record": {
907
+ "0": 64,
908
+ "12": 0,
909
+ "140": 305419896,
910
+ "16": 0,
911
+ "180": 305419896,
912
+ "184": 0,
913
+ "188": 305419896,
914
+ "20": 0,
915
+ "24": 1065353216,
916
+ "28": 3221225472,
917
+ "32": 1077936128,
918
+ "36": 0,
919
+ "4": 102,
920
+ "40": 0,
921
+ "400": 305419896,
922
+ "424": 305419896,
923
+ "44": 0,
924
+ "488": 1065353216,
925
+ "492": 3221225472,
926
+ "496": 1077936128,
927
+ "512": 1023,
928
+ "532": 1,
929
+ "536": 97191,
930
+ "540": 662184166,
931
+ "564": 0,
932
+ "568": 5000,
933
+ "572": 1,
934
+ "84": 305419896
935
+ },
936
+ "weapon": 305397771
937
+ },
938
+ "source": {
939
+ "allocation": {
940
+ "count": 66,
941
+ "record": {
942
+ "0": 64,
943
+ "140": 305419896,
944
+ "424": 305419896,
945
+ "512": 1023,
946
+ "532": 1,
947
+ "536": 97243,
948
+ "540": 3226498489,
949
+ "564": 0,
950
+ "84": 305419896
951
+ },
952
+ "registrations": [],
953
+ "retry": 0,
954
+ "scan_index": 64,
955
+ "selected": 64,
956
+ "status": "returned"
957
+ },
958
+ "animation": 2,
959
+ "busy": 1,
960
+ "clock": 5000,
961
+ "complete": 0,
962
+ "event": [
963
+ 0,
964
+ 305419896
965
+ ],
966
+ "flags": 2147516420,
967
+ "flags104": 2147483666,
968
+ "guards": [
969
+ 305419896,
970
+ 305419896
971
+ ],
972
+ "links": [
973
+ 64
974
+ ],
975
+ "record": {
976
+ "0": 64,
977
+ "12": 0,
978
+ "140": 305419896,
979
+ "16": 0,
980
+ "180": 305419896,
981
+ "184": 0,
982
+ "188": 305419896,
983
+ "20": 0,
984
+ "24": 1065353216,
985
+ "28": 3221225472,
986
+ "32": 1077936128,
987
+ "36": 0,
988
+ "4": 102,
989
+ "40": 0,
990
+ "400": 305419896,
991
+ "424": 305419896,
992
+ "44": 0,
993
+ "488": 1065353216,
994
+ "492": 3221225472,
995
+ "496": 1077936128,
996
+ "512": 1023,
997
+ "532": 1,
998
+ "536": 97191,
999
+ "540": 662184166,
1000
+ "564": 0,
1001
+ "568": 5000,
1002
+ "572": 1,
1003
+ "84": 305419896
1004
+ },
1005
+ "weapon": 305397771
1006
+ }
1007
+ },
1008
+ {
1009
+ "rust": {
1010
+ "allocation": {
1011
+ "count": 66,
1012
+ "record": {
1013
+ "0": 64,
1014
+ "140": 305419896,
1015
+ "424": 305419896,
1016
+ "512": 1023,
1017
+ "532": 1,
1018
+ "536": 97243,
1019
+ "540": 3226498489,
1020
+ "564": 0,
1021
+ "84": 305419896
1022
+ },
1023
+ "registrations": [],
1024
+ "retry": 0,
1025
+ "scan_index": 64,
1026
+ "selected": 64,
1027
+ "status": "returned"
1028
+ },
1029
+ "animation": 2,
1030
+ "busy": 1,
1031
+ "clock": 5000,
1032
+ "complete": 0,
1033
+ "event": [
1034
+ 5,
1035
+ 305419896
1036
+ ],
1037
+ "flags": 2147516420,
1038
+ "flags104": 2147483666,
1039
+ "guards": [
1040
+ 305419896,
1041
+ 305419896
1042
+ ],
1043
+ "links": [
1044
+ 64
1045
+ ],
1046
+ "record": {
1047
+ "0": 64,
1048
+ "12": 0,
1049
+ "140": 305419896,
1050
+ "16": 0,
1051
+ "180": 305419896,
1052
+ "184": 5,
1053
+ "188": 305419896,
1054
+ "20": 0,
1055
+ "24": 1065353216,
1056
+ "28": 3221225472,
1057
+ "32": 1077936128,
1058
+ "36": 0,
1059
+ "4": 102,
1060
+ "40": 0,
1061
+ "400": 305419896,
1062
+ "424": 305419896,
1063
+ "44": 0,
1064
+ "488": 1065353216,
1065
+ "492": 3221225472,
1066
+ "496": 1077936128,
1067
+ "512": 1023,
1068
+ "532": 1,
1069
+ "536": 97191,
1070
+ "540": 662184166,
1071
+ "564": 0,
1072
+ "568": 5000,
1073
+ "572": 1,
1074
+ "84": 305419896
1075
+ },
1076
+ "weapon": 305397771
1077
+ },
1078
+ "source": {
1079
+ "allocation": {
1080
+ "count": 66,
1081
+ "record": {
1082
+ "0": 64,
1083
+ "140": 305419896,
1084
+ "424": 305419896,
1085
+ "512": 1023,
1086
+ "532": 1,
1087
+ "536": 97243,
1088
+ "540": 3226498489,
1089
+ "564": 0,
1090
+ "84": 305419896
1091
+ },
1092
+ "registrations": [],
1093
+ "retry": 0,
1094
+ "scan_index": 64,
1095
+ "selected": 64,
1096
+ "status": "returned"
1097
+ },
1098
+ "animation": 2,
1099
+ "busy": 1,
1100
+ "clock": 5000,
1101
+ "complete": 0,
1102
+ "event": [
1103
+ 5,
1104
+ 305419896
1105
+ ],
1106
+ "flags": 2147516420,
1107
+ "flags104": 2147483666,
1108
+ "guards": [
1109
+ 305419896,
1110
+ 305419896
1111
+ ],
1112
+ "links": [
1113
+ 64
1114
+ ],
1115
+ "record": {
1116
+ "0": 64,
1117
+ "12": 0,
1118
+ "140": 305419896,
1119
+ "16": 0,
1120
+ "180": 305419896,
1121
+ "184": 5,
1122
+ "188": 305419896,
1123
+ "20": 0,
1124
+ "24": 1065353216,
1125
+ "28": 3221225472,
1126
+ "32": 1077936128,
1127
+ "36": 0,
1128
+ "4": 102,
1129
+ "40": 0,
1130
+ "400": 305419896,
1131
+ "424": 305419896,
1132
+ "44": 0,
1133
+ "488": 1065353216,
1134
+ "492": 3221225472,
1135
+ "496": 1077936128,
1136
+ "512": 1023,
1137
+ "532": 1,
1138
+ "536": 97191,
1139
+ "540": 662184166,
1140
+ "564": 0,
1141
+ "568": 5000,
1142
+ "572": 1,
1143
+ "84": 305419896
1144
+ },
1145
+ "weapon": 305397771
1146
+ }
1147
+ },
1148
+ {
1149
+ "rust": {
1150
+ "allocation": {
1151
+ "count": 66,
1152
+ "record": {
1153
+ "0": 64,
1154
+ "140": 305419896,
1155
+ "424": 305419896,
1156
+ "512": 1023,
1157
+ "532": 1,
1158
+ "536": 97243,
1159
+ "540": 3226498489,
1160
+ "564": 0,
1161
+ "84": 305419896
1162
+ },
1163
+ "registrations": [],
1164
+ "retry": 0,
1165
+ "scan_index": 64,
1166
+ "selected": 64,
1167
+ "status": "returned"
1168
+ },
1169
+ "animation": 2,
1170
+ "busy": 1,
1171
+ "clock": 5000,
1172
+ "complete": 0,
1173
+ "event": [
1174
+ 4294967295,
1175
+ 305419896
1176
+ ],
1177
+ "flags": 2147516420,
1178
+ "flags104": 2147483666,
1179
+ "guards": [
1180
+ 305419896,
1181
+ 305419896
1182
+ ],
1183
+ "links": [
1184
+ 64
1185
+ ],
1186
+ "record": {
1187
+ "0": 64,
1188
+ "12": 0,
1189
+ "140": 305419896,
1190
+ "16": 0,
1191
+ "180": 305419896,
1192
+ "184": 4294967295,
1193
+ "188": 305419896,
1194
+ "20": 0,
1195
+ "24": 1065353216,
1196
+ "28": 3221225472,
1197
+ "32": 1077936128,
1198
+ "36": 0,
1199
+ "4": 102,
1200
+ "40": 0,
1201
+ "400": 305419896,
1202
+ "424": 305419896,
1203
+ "44": 0,
1204
+ "488": 1065353216,
1205
+ "492": 3221225472,
1206
+ "496": 1077936128,
1207
+ "512": 1023,
1208
+ "532": 1,
1209
+ "536": 97191,
1210
+ "540": 662184166,
1211
+ "564": 0,
1212
+ "568": 5000,
1213
+ "572": 1,
1214
+ "84": 305419896
1215
+ },
1216
+ "weapon": 305397771
1217
+ },
1218
+ "source": {
1219
+ "allocation": {
1220
+ "count": 66,
1221
+ "record": {
1222
+ "0": 64,
1223
+ "140": 305419896,
1224
+ "424": 305419896,
1225
+ "512": 1023,
1226
+ "532": 1,
1227
+ "536": 97243,
1228
+ "540": 3226498489,
1229
+ "564": 0,
1230
+ "84": 305419896
1231
+ },
1232
+ "registrations": [],
1233
+ "retry": 0,
1234
+ "scan_index": 64,
1235
+ "selected": 64,
1236
+ "status": "returned"
1237
+ },
1238
+ "animation": 2,
1239
+ "busy": 1,
1240
+ "clock": 5000,
1241
+ "complete": 0,
1242
+ "event": [
1243
+ 4294967295,
1244
+ 305419896
1245
+ ],
1246
+ "flags": 2147516420,
1247
+ "flags104": 2147483666,
1248
+ "guards": [
1249
+ 305419896,
1250
+ 305419896
1251
+ ],
1252
+ "links": [
1253
+ 64
1254
+ ],
1255
+ "record": {
1256
+ "0": 64,
1257
+ "12": 0,
1258
+ "140": 305419896,
1259
+ "16": 0,
1260
+ "180": 305419896,
1261
+ "184": 4294967295,
1262
+ "188": 305419896,
1263
+ "20": 0,
1264
+ "24": 1065353216,
1265
+ "28": 3221225472,
1266
+ "32": 1077936128,
1267
+ "36": 0,
1268
+ "4": 102,
1269
+ "40": 0,
1270
+ "400": 305419896,
1271
+ "424": 305419896,
1272
+ "44": 0,
1273
+ "488": 1065353216,
1274
+ "492": 3221225472,
1275
+ "496": 1077936128,
1276
+ "512": 1023,
1277
+ "532": 1,
1278
+ "536": 97191,
1279
+ "540": 662184166,
1280
+ "564": 0,
1281
+ "568": 5000,
1282
+ "572": 1,
1283
+ "84": 305419896
1284
+ },
1285
+ "weapon": 305397771
1286
+ }
1287
+ },
1288
+ {
1289
+ "rust": {
1290
+ "allocation": {
1291
+ "count": 66,
1292
+ "record": {
1293
+ "0": 64,
1294
+ "140": 305419896,
1295
+ "424": 305419896,
1296
+ "512": 1023,
1297
+ "532": 1,
1298
+ "536": 97243,
1299
+ "540": 3226498489,
1300
+ "564": 0,
1301
+ "84": 305419896
1302
+ },
1303
+ "registrations": [],
1304
+ "retry": 0,
1305
+ "scan_index": 64,
1306
+ "selected": 64,
1307
+ "status": "returned"
1308
+ },
1309
+ "animation": 2,
1310
+ "busy": 1,
1311
+ "clock": 5000,
1312
+ "complete": 0,
1313
+ "event": [
1314
+ 0,
1315
+ 305419896
1316
+ ],
1317
+ "flags": 2147516420,
1318
+ "flags104": 2147483666,
1319
+ "guards": [
1320
+ 305419896,
1321
+ 305419896
1322
+ ],
1323
+ "links": [
1324
+ 64
1325
+ ],
1326
+ "record": {
1327
+ "0": 64,
1328
+ "12": 0,
1329
+ "140": 305419896,
1330
+ "16": 0,
1331
+ "180": 305419896,
1332
+ "184": 0,
1333
+ "188": 305419896,
1334
+ "20": 0,
1335
+ "24": 0,
1336
+ "28": 0,
1337
+ "32": 0,
1338
+ "36": 0,
1339
+ "4": 102,
1340
+ "40": 0,
1341
+ "400": 305419896,
1342
+ "424": 305419896,
1343
+ "44": 0,
1344
+ "488": 0,
1345
+ "492": 0,
1346
+ "496": 0,
1347
+ "512": 1023,
1348
+ "532": 1,
1349
+ "536": 97191,
1350
+ "540": 662184166,
1351
+ "564": 0,
1352
+ "568": 5000,
1353
+ "572": 1,
1354
+ "84": 305419896
1355
+ },
1356
+ "weapon": 305397771
1357
+ },
1358
+ "source": {
1359
+ "allocation": {
1360
+ "count": 66,
1361
+ "record": {
1362
+ "0": 64,
1363
+ "140": 305419896,
1364
+ "424": 305419896,
1365
+ "512": 1023,
1366
+ "532": 1,
1367
+ "536": 97243,
1368
+ "540": 3226498489,
1369
+ "564": 0,
1370
+ "84": 305419896
1371
+ },
1372
+ "registrations": [],
1373
+ "retry": 0,
1374
+ "scan_index": 64,
1375
+ "selected": 64,
1376
+ "status": "returned"
1377
+ },
1378
+ "animation": 2,
1379
+ "busy": 1,
1380
+ "clock": 5000,
1381
+ "complete": 0,
1382
+ "event": [
1383
+ 0,
1384
+ 305419896
1385
+ ],
1386
+ "flags": 2147516420,
1387
+ "flags104": 2147483666,
1388
+ "guards": [
1389
+ 305419896,
1390
+ 305419896
1391
+ ],
1392
+ "links": [
1393
+ 64
1394
+ ],
1395
+ "record": {
1396
+ "0": 64,
1397
+ "12": 0,
1398
+ "140": 305419896,
1399
+ "16": 0,
1400
+ "180": 305419896,
1401
+ "184": 0,
1402
+ "188": 305419896,
1403
+ "20": 0,
1404
+ "24": 0,
1405
+ "28": 0,
1406
+ "32": 0,
1407
+ "36": 0,
1408
+ "4": 102,
1409
+ "40": 0,
1410
+ "400": 305419896,
1411
+ "424": 305419896,
1412
+ "44": 0,
1413
+ "488": 0,
1414
+ "492": 0,
1415
+ "496": 0,
1416
+ "512": 1023,
1417
+ "532": 1,
1418
+ "536": 97191,
1419
+ "540": 662184166,
1420
+ "564": 0,
1421
+ "568": 5000,
1422
+ "572": 1,
1423
+ "84": 305419896
1424
+ },
1425
+ "weapon": 305397771
1426
+ }
1427
+ },
1428
+ {
1429
+ "rust": {
1430
+ "allocation": {
1431
+ "count": 66,
1432
+ "record": {
1433
+ "0": 64,
1434
+ "140": 305419896,
1435
+ "424": 305419896,
1436
+ "512": 1023,
1437
+ "532": 1,
1438
+ "536": 97243,
1439
+ "540": 3226498489,
1440
+ "564": 0,
1441
+ "84": 305419896
1442
+ },
1443
+ "registrations": [],
1444
+ "retry": 0,
1445
+ "scan_index": 64,
1446
+ "selected": 64,
1447
+ "status": "returned"
1448
+ },
1449
+ "animation": 2,
1450
+ "busy": 1,
1451
+ "clock": 5000,
1452
+ "complete": 0,
1453
+ "event": [
1454
+ 5,
1455
+ 305419896
1456
+ ],
1457
+ "flags": 2147516420,
1458
+ "flags104": 2147483666,
1459
+ "guards": [
1460
+ 305419896,
1461
+ 305419896
1462
+ ],
1463
+ "links": [
1464
+ 64
1465
+ ],
1466
+ "record": {
1467
+ "0": 64,
1468
+ "12": 0,
1469
+ "140": 305419896,
1470
+ "16": 0,
1471
+ "180": 305419896,
1472
+ "184": 5,
1473
+ "188": 305419896,
1474
+ "20": 0,
1475
+ "24": 0,
1476
+ "28": 0,
1477
+ "32": 0,
1478
+ "36": 0,
1479
+ "4": 102,
1480
+ "40": 0,
1481
+ "400": 305419896,
1482
+ "424": 305419896,
1483
+ "44": 0,
1484
+ "488": 0,
1485
+ "492": 0,
1486
+ "496": 0,
1487
+ "512": 1023,
1488
+ "532": 1,
1489
+ "536": 97191,
1490
+ "540": 662184166,
1491
+ "564": 0,
1492
+ "568": 5000,
1493
+ "572": 1,
1494
+ "84": 305419896
1495
+ },
1496
+ "weapon": 305397771
1497
+ },
1498
+ "source": {
1499
+ "allocation": {
1500
+ "count": 66,
1501
+ "record": {
1502
+ "0": 64,
1503
+ "140": 305419896,
1504
+ "424": 305419896,
1505
+ "512": 1023,
1506
+ "532": 1,
1507
+ "536": 97243,
1508
+ "540": 3226498489,
1509
+ "564": 0,
1510
+ "84": 305419896
1511
+ },
1512
+ "registrations": [],
1513
+ "retry": 0,
1514
+ "scan_index": 64,
1515
+ "selected": 64,
1516
+ "status": "returned"
1517
+ },
1518
+ "animation": 2,
1519
+ "busy": 1,
1520
+ "clock": 5000,
1521
+ "complete": 0,
1522
+ "event": [
1523
+ 5,
1524
+ 305419896
1525
+ ],
1526
+ "flags": 2147516420,
1527
+ "flags104": 2147483666,
1528
+ "guards": [
1529
+ 305419896,
1530
+ 305419896
1531
+ ],
1532
+ "links": [
1533
+ 64
1534
+ ],
1535
+ "record": {
1536
+ "0": 64,
1537
+ "12": 0,
1538
+ "140": 305419896,
1539
+ "16": 0,
1540
+ "180": 305419896,
1541
+ "184": 5,
1542
+ "188": 305419896,
1543
+ "20": 0,
1544
+ "24": 0,
1545
+ "28": 0,
1546
+ "32": 0,
1547
+ "36": 0,
1548
+ "4": 102,
1549
+ "40": 0,
1550
+ "400": 305419896,
1551
+ "424": 305419896,
1552
+ "44": 0,
1553
+ "488": 0,
1554
+ "492": 0,
1555
+ "496": 0,
1556
+ "512": 1023,
1557
+ "532": 1,
1558
+ "536": 97191,
1559
+ "540": 662184166,
1560
+ "564": 0,
1561
+ "568": 5000,
1562
+ "572": 1,
1563
+ "84": 305419896
1564
+ },
1565
+ "weapon": 305397771
1566
+ }
1567
+ },
1568
+ {
1569
+ "rust": {
1570
+ "allocation": {
1571
+ "count": 66,
1572
+ "record": {
1573
+ "0": 64,
1574
+ "140": 305419896,
1575
+ "424": 305419896,
1576
+ "512": 1023,
1577
+ "532": 1,
1578
+ "536": 97243,
1579
+ "540": 3226498489,
1580
+ "564": 0,
1581
+ "84": 305419896
1582
+ },
1583
+ "registrations": [],
1584
+ "retry": 0,
1585
+ "scan_index": 64,
1586
+ "selected": 64,
1587
+ "status": "returned"
1588
+ },
1589
+ "animation": 2,
1590
+ "busy": 1,
1591
+ "clock": 5000,
1592
+ "complete": 0,
1593
+ "event": [
1594
+ 4294967295,
1595
+ 305419896
1596
+ ],
1597
+ "flags": 2147516420,
1598
+ "flags104": 2147483666,
1599
+ "guards": [
1600
+ 305419896,
1601
+ 305419896
1602
+ ],
1603
+ "links": [
1604
+ 64
1605
+ ],
1606
+ "record": {
1607
+ "0": 64,
1608
+ "12": 0,
1609
+ "140": 305419896,
1610
+ "16": 0,
1611
+ "180": 305419896,
1612
+ "184": 4294967295,
1613
+ "188": 305419896,
1614
+ "20": 0,
1615
+ "24": 0,
1616
+ "28": 0,
1617
+ "32": 0,
1618
+ "36": 0,
1619
+ "4": 102,
1620
+ "40": 0,
1621
+ "400": 305419896,
1622
+ "424": 305419896,
1623
+ "44": 0,
1624
+ "488": 0,
1625
+ "492": 0,
1626
+ "496": 0,
1627
+ "512": 1023,
1628
+ "532": 1,
1629
+ "536": 97191,
1630
+ "540": 662184166,
1631
+ "564": 0,
1632
+ "568": 5000,
1633
+ "572": 1,
1634
+ "84": 305419896
1635
+ },
1636
+ "weapon": 305397771
1637
+ },
1638
+ "source": {
1639
+ "allocation": {
1640
+ "count": 66,
1641
+ "record": {
1642
+ "0": 64,
1643
+ "140": 305419896,
1644
+ "424": 305419896,
1645
+ "512": 1023,
1646
+ "532": 1,
1647
+ "536": 97243,
1648
+ "540": 3226498489,
1649
+ "564": 0,
1650
+ "84": 305419896
1651
+ },
1652
+ "registrations": [],
1653
+ "retry": 0,
1654
+ "scan_index": 64,
1655
+ "selected": 64,
1656
+ "status": "returned"
1657
+ },
1658
+ "animation": 2,
1659
+ "busy": 1,
1660
+ "clock": 5000,
1661
+ "complete": 0,
1662
+ "event": [
1663
+ 4294967295,
1664
+ 305419896
1665
+ ],
1666
+ "flags": 2147516420,
1667
+ "flags104": 2147483666,
1668
+ "guards": [
1669
+ 305419896,
1670
+ 305419896
1671
+ ],
1672
+ "links": [
1673
+ 64
1674
+ ],
1675
+ "record": {
1676
+ "0": 64,
1677
+ "12": 0,
1678
+ "140": 305419896,
1679
+ "16": 0,
1680
+ "180": 305419896,
1681
+ "184": 4294967295,
1682
+ "188": 305419896,
1683
+ "20": 0,
1684
+ "24": 0,
1685
+ "28": 0,
1686
+ "32": 0,
1687
+ "36": 0,
1688
+ "4": 102,
1689
+ "40": 0,
1690
+ "400": 305419896,
1691
+ "424": 305419896,
1692
+ "44": 0,
1693
+ "488": 0,
1694
+ "492": 0,
1695
+ "496": 0,
1696
+ "512": 1023,
1697
+ "532": 1,
1698
+ "536": 97191,
1699
+ "540": 662184166,
1700
+ "564": 0,
1701
+ "568": 5000,
1702
+ "572": 1,
1703
+ "84": 305419896
1704
+ },
1705
+ "weapon": 305397771
1706
+ }
1707
+ },
1708
+ {
1709
+ "rust": {
1710
+ "allocation": {
1711
+ "count": 67,
1712
+ "record": {
1713
+ "0": 66,
1714
+ "140": 305419896,
1715
+ "424": 305419896,
1716
+ "512": 1023,
1717
+ "532": 1,
1718
+ "536": 97243,
1719
+ "540": 3226498489,
1720
+ "564": 305419896,
1721
+ "84": 305419896
1722
+ },
1723
+ "registrations": [
1724
+ 67
1725
+ ],
1726
+ "retry": 0,
1727
+ "scan_index": 66,
1728
+ "selected": 66,
1729
+ "status": "returned"
1730
+ },
1731
+ "animation": 2,
1732
+ "busy": 1,
1733
+ "clock": 5000,
1734
+ "complete": 0,
1735
+ "event": [
1736
+ 0,
1737
+ 305419896
1738
+ ],
1739
+ "flags": 2147516420,
1740
+ "flags104": 2147483666,
1741
+ "guards": [
1742
+ 305419896,
1743
+ 305419896
1744
+ ],
1745
+ "links": [
1746
+ 66
1747
+ ],
1748
+ "record": {
1749
+ "0": 66,
1750
+ "12": 0,
1751
+ "140": 305419896,
1752
+ "16": 0,
1753
+ "180": 305419896,
1754
+ "184": 0,
1755
+ "188": 305419896,
1756
+ "20": 0,
1757
+ "24": 1065353216,
1758
+ "28": 3221225472,
1759
+ "32": 1077936128,
1760
+ "36": 0,
1761
+ "4": 102,
1762
+ "40": 0,
1763
+ "400": 305419896,
1764
+ "424": 305419896,
1765
+ "44": 0,
1766
+ "488": 1065353216,
1767
+ "492": 3221225472,
1768
+ "496": 1077936128,
1769
+ "512": 1023,
1770
+ "532": 1,
1771
+ "536": 97191,
1772
+ "540": 662184166,
1773
+ "564": 305419896,
1774
+ "568": 5000,
1775
+ "572": 1,
1776
+ "84": 305419896
1777
+ },
1778
+ "weapon": 305397771
1779
+ },
1780
+ "source": {
1781
+ "allocation": {
1782
+ "count": 67,
1783
+ "record": {
1784
+ "0": 66,
1785
+ "140": 305419896,
1786
+ "424": 305419896,
1787
+ "512": 1023,
1788
+ "532": 1,
1789
+ "536": 97243,
1790
+ "540": 3226498489,
1791
+ "564": 305419896,
1792
+ "84": 305419896
1793
+ },
1794
+ "registrations": [
1795
+ 67
1796
+ ],
1797
+ "retry": 0,
1798
+ "scan_index": 66,
1799
+ "selected": 66,
1800
+ "status": "returned"
1801
+ },
1802
+ "animation": 2,
1803
+ "busy": 1,
1804
+ "clock": 5000,
1805
+ "complete": 0,
1806
+ "event": [
1807
+ 0,
1808
+ 305419896
1809
+ ],
1810
+ "flags": 2147516420,
1811
+ "flags104": 2147483666,
1812
+ "guards": [
1813
+ 305419896,
1814
+ 305419896
1815
+ ],
1816
+ "links": [
1817
+ 66
1818
+ ],
1819
+ "record": {
1820
+ "0": 66,
1821
+ "12": 0,
1822
+ "140": 305419896,
1823
+ "16": 0,
1824
+ "180": 305419896,
1825
+ "184": 0,
1826
+ "188": 305419896,
1827
+ "20": 0,
1828
+ "24": 1065353216,
1829
+ "28": 3221225472,
1830
+ "32": 1077936128,
1831
+ "36": 0,
1832
+ "4": 102,
1833
+ "40": 0,
1834
+ "400": 305419896,
1835
+ "424": 305419896,
1836
+ "44": 0,
1837
+ "488": 1065353216,
1838
+ "492": 3221225472,
1839
+ "496": 1077936128,
1840
+ "512": 1023,
1841
+ "532": 1,
1842
+ "536": 97191,
1843
+ "540": 662184166,
1844
+ "564": 305419896,
1845
+ "568": 5000,
1846
+ "572": 1,
1847
+ "84": 305419896
1848
+ },
1849
+ "weapon": 305397771
1850
+ }
1851
+ },
1852
+ {
1853
+ "rust": {
1854
+ "allocation": {
1855
+ "count": 67,
1856
+ "record": {
1857
+ "0": 66,
1858
+ "140": 305419896,
1859
+ "424": 305419896,
1860
+ "512": 1023,
1861
+ "532": 1,
1862
+ "536": 97243,
1863
+ "540": 3226498489,
1864
+ "564": 305419896,
1865
+ "84": 305419896
1866
+ },
1867
+ "registrations": [
1868
+ 67
1869
+ ],
1870
+ "retry": 0,
1871
+ "scan_index": 66,
1872
+ "selected": 66,
1873
+ "status": "returned"
1874
+ },
1875
+ "animation": 2,
1876
+ "busy": 1,
1877
+ "clock": 5000,
1878
+ "complete": 0,
1879
+ "event": [
1880
+ 5,
1881
+ 305419896
1882
+ ],
1883
+ "flags": 2147516420,
1884
+ "flags104": 2147483666,
1885
+ "guards": [
1886
+ 305419896,
1887
+ 305419896
1888
+ ],
1889
+ "links": [
1890
+ 66
1891
+ ],
1892
+ "record": {
1893
+ "0": 66,
1894
+ "12": 0,
1895
+ "140": 305419896,
1896
+ "16": 0,
1897
+ "180": 305419896,
1898
+ "184": 5,
1899
+ "188": 305419896,
1900
+ "20": 0,
1901
+ "24": 1065353216,
1902
+ "28": 3221225472,
1903
+ "32": 1077936128,
1904
+ "36": 0,
1905
+ "4": 102,
1906
+ "40": 0,
1907
+ "400": 305419896,
1908
+ "424": 305419896,
1909
+ "44": 0,
1910
+ "488": 1065353216,
1911
+ "492": 3221225472,
1912
+ "496": 1077936128,
1913
+ "512": 1023,
1914
+ "532": 1,
1915
+ "536": 97191,
1916
+ "540": 662184166,
1917
+ "564": 305419896,
1918
+ "568": 5000,
1919
+ "572": 1,
1920
+ "84": 305419896
1921
+ },
1922
+ "weapon": 305397771
1923
+ },
1924
+ "source": {
1925
+ "allocation": {
1926
+ "count": 67,
1927
+ "record": {
1928
+ "0": 66,
1929
+ "140": 305419896,
1930
+ "424": 305419896,
1931
+ "512": 1023,
1932
+ "532": 1,
1933
+ "536": 97243,
1934
+ "540": 3226498489,
1935
+ "564": 305419896,
1936
+ "84": 305419896
1937
+ },
1938
+ "registrations": [
1939
+ 67
1940
+ ],
1941
+ "retry": 0,
1942
+ "scan_index": 66,
1943
+ "selected": 66,
1944
+ "status": "returned"
1945
+ },
1946
+ "animation": 2,
1947
+ "busy": 1,
1948
+ "clock": 5000,
1949
+ "complete": 0,
1950
+ "event": [
1951
+ 5,
1952
+ 305419896
1953
+ ],
1954
+ "flags": 2147516420,
1955
+ "flags104": 2147483666,
1956
+ "guards": [
1957
+ 305419896,
1958
+ 305419896
1959
+ ],
1960
+ "links": [
1961
+ 66
1962
+ ],
1963
+ "record": {
1964
+ "0": 66,
1965
+ "12": 0,
1966
+ "140": 305419896,
1967
+ "16": 0,
1968
+ "180": 305419896,
1969
+ "184": 5,
1970
+ "188": 305419896,
1971
+ "20": 0,
1972
+ "24": 1065353216,
1973
+ "28": 3221225472,
1974
+ "32": 1077936128,
1975
+ "36": 0,
1976
+ "4": 102,
1977
+ "40": 0,
1978
+ "400": 305419896,
1979
+ "424": 305419896,
1980
+ "44": 0,
1981
+ "488": 1065353216,
1982
+ "492": 3221225472,
1983
+ "496": 1077936128,
1984
+ "512": 1023,
1985
+ "532": 1,
1986
+ "536": 97191,
1987
+ "540": 662184166,
1988
+ "564": 305419896,
1989
+ "568": 5000,
1990
+ "572": 1,
1991
+ "84": 305419896
1992
+ },
1993
+ "weapon": 305397771
1994
+ }
1995
+ },
1996
+ {
1997
+ "rust": {
1998
+ "allocation": {
1999
+ "count": 67,
2000
+ "record": {
2001
+ "0": 66,
2002
+ "140": 305419896,
2003
+ "424": 305419896,
2004
+ "512": 1023,
2005
+ "532": 1,
2006
+ "536": 97243,
2007
+ "540": 3226498489,
2008
+ "564": 305419896,
2009
+ "84": 305419896
2010
+ },
2011
+ "registrations": [
2012
+ 67
2013
+ ],
2014
+ "retry": 0,
2015
+ "scan_index": 66,
2016
+ "selected": 66,
2017
+ "status": "returned"
2018
+ },
2019
+ "animation": 2,
2020
+ "busy": 1,
2021
+ "clock": 5000,
2022
+ "complete": 0,
2023
+ "event": [
2024
+ 4294967295,
2025
+ 305419896
2026
+ ],
2027
+ "flags": 2147516420,
2028
+ "flags104": 2147483666,
2029
+ "guards": [
2030
+ 305419896,
2031
+ 305419896
2032
+ ],
2033
+ "links": [
2034
+ 66
2035
+ ],
2036
+ "record": {
2037
+ "0": 66,
2038
+ "12": 0,
2039
+ "140": 305419896,
2040
+ "16": 0,
2041
+ "180": 305419896,
2042
+ "184": 4294967295,
2043
+ "188": 305419896,
2044
+ "20": 0,
2045
+ "24": 1065353216,
2046
+ "28": 3221225472,
2047
+ "32": 1077936128,
2048
+ "36": 0,
2049
+ "4": 102,
2050
+ "40": 0,
2051
+ "400": 305419896,
2052
+ "424": 305419896,
2053
+ "44": 0,
2054
+ "488": 1065353216,
2055
+ "492": 3221225472,
2056
+ "496": 1077936128,
2057
+ "512": 1023,
2058
+ "532": 1,
2059
+ "536": 97191,
2060
+ "540": 662184166,
2061
+ "564": 305419896,
2062
+ "568": 5000,
2063
+ "572": 1,
2064
+ "84": 305419896
2065
+ },
2066
+ "weapon": 305397771
2067
+ },
2068
+ "source": {
2069
+ "allocation": {
2070
+ "count": 67,
2071
+ "record": {
2072
+ "0": 66,
2073
+ "140": 305419896,
2074
+ "424": 305419896,
2075
+ "512": 1023,
2076
+ "532": 1,
2077
+ "536": 97243,
2078
+ "540": 3226498489,
2079
+ "564": 305419896,
2080
+ "84": 305419896
2081
+ },
2082
+ "registrations": [
2083
+ 67
2084
+ ],
2085
+ "retry": 0,
2086
+ "scan_index": 66,
2087
+ "selected": 66,
2088
+ "status": "returned"
2089
+ },
2090
+ "animation": 2,
2091
+ "busy": 1,
2092
+ "clock": 5000,
2093
+ "complete": 0,
2094
+ "event": [
2095
+ 4294967295,
2096
+ 305419896
2097
+ ],
2098
+ "flags": 2147516420,
2099
+ "flags104": 2147483666,
2100
+ "guards": [
2101
+ 305419896,
2102
+ 305419896
2103
+ ],
2104
+ "links": [
2105
+ 66
2106
+ ],
2107
+ "record": {
2108
+ "0": 66,
2109
+ "12": 0,
2110
+ "140": 305419896,
2111
+ "16": 0,
2112
+ "180": 305419896,
2113
+ "184": 4294967295,
2114
+ "188": 305419896,
2115
+ "20": 0,
2116
+ "24": 1065353216,
2117
+ "28": 3221225472,
2118
+ "32": 1077936128,
2119
+ "36": 0,
2120
+ "4": 102,
2121
+ "40": 0,
2122
+ "400": 305419896,
2123
+ "424": 305419896,
2124
+ "44": 0,
2125
+ "488": 1065353216,
2126
+ "492": 3221225472,
2127
+ "496": 1077936128,
2128
+ "512": 1023,
2129
+ "532": 1,
2130
+ "536": 97191,
2131
+ "540": 662184166,
2132
+ "564": 305419896,
2133
+ "568": 5000,
2134
+ "572": 1,
2135
+ "84": 305419896
2136
+ },
2137
+ "weapon": 305397771
2138
+ }
2139
+ },
2140
+ {
2141
+ "rust": {
2142
+ "allocation": {
2143
+ "count": 67,
2144
+ "record": {
2145
+ "0": 66,
2146
+ "140": 305419896,
2147
+ "424": 305419896,
2148
+ "512": 1023,
2149
+ "532": 1,
2150
+ "536": 97243,
2151
+ "540": 3226498489,
2152
+ "564": 305419896,
2153
+ "84": 305419896
2154
+ },
2155
+ "registrations": [
2156
+ 67
2157
+ ],
2158
+ "retry": 0,
2159
+ "scan_index": 66,
2160
+ "selected": 66,
2161
+ "status": "returned"
2162
+ },
2163
+ "animation": 2,
2164
+ "busy": 1,
2165
+ "clock": 5000,
2166
+ "complete": 0,
2167
+ "event": [
2168
+ 0,
2169
+ 305419896
2170
+ ],
2171
+ "flags": 2147516420,
2172
+ "flags104": 2147483666,
2173
+ "guards": [
2174
+ 305419896,
2175
+ 305419896
2176
+ ],
2177
+ "links": [
2178
+ 66
2179
+ ],
2180
+ "record": {
2181
+ "0": 66,
2182
+ "12": 0,
2183
+ "140": 305419896,
2184
+ "16": 0,
2185
+ "180": 305419896,
2186
+ "184": 0,
2187
+ "188": 305419896,
2188
+ "20": 0,
2189
+ "24": 0,
2190
+ "28": 0,
2191
+ "32": 0,
2192
+ "36": 0,
2193
+ "4": 102,
2194
+ "40": 0,
2195
+ "400": 305419896,
2196
+ "424": 305419896,
2197
+ "44": 0,
2198
+ "488": 0,
2199
+ "492": 0,
2200
+ "496": 0,
2201
+ "512": 1023,
2202
+ "532": 1,
2203
+ "536": 97191,
2204
+ "540": 662184166,
2205
+ "564": 305419896,
2206
+ "568": 5000,
2207
+ "572": 1,
2208
+ "84": 305419896
2209
+ },
2210
+ "weapon": 305397771
2211
+ },
2212
+ "source": {
2213
+ "allocation": {
2214
+ "count": 67,
2215
+ "record": {
2216
+ "0": 66,
2217
+ "140": 305419896,
2218
+ "424": 305419896,
2219
+ "512": 1023,
2220
+ "532": 1,
2221
+ "536": 97243,
2222
+ "540": 3226498489,
2223
+ "564": 305419896,
2224
+ "84": 305419896
2225
+ },
2226
+ "registrations": [
2227
+ 67
2228
+ ],
2229
+ "retry": 0,
2230
+ "scan_index": 66,
2231
+ "selected": 66,
2232
+ "status": "returned"
2233
+ },
2234
+ "animation": 2,
2235
+ "busy": 1,
2236
+ "clock": 5000,
2237
+ "complete": 0,
2238
+ "event": [
2239
+ 0,
2240
+ 305419896
2241
+ ],
2242
+ "flags": 2147516420,
2243
+ "flags104": 2147483666,
2244
+ "guards": [
2245
+ 305419896,
2246
+ 305419896
2247
+ ],
2248
+ "links": [
2249
+ 66
2250
+ ],
2251
+ "record": {
2252
+ "0": 66,
2253
+ "12": 0,
2254
+ "140": 305419896,
2255
+ "16": 0,
2256
+ "180": 305419896,
2257
+ "184": 0,
2258
+ "188": 305419896,
2259
+ "20": 0,
2260
+ "24": 0,
2261
+ "28": 0,
2262
+ "32": 0,
2263
+ "36": 0,
2264
+ "4": 102,
2265
+ "40": 0,
2266
+ "400": 305419896,
2267
+ "424": 305419896,
2268
+ "44": 0,
2269
+ "488": 0,
2270
+ "492": 0,
2271
+ "496": 0,
2272
+ "512": 1023,
2273
+ "532": 1,
2274
+ "536": 97191,
2275
+ "540": 662184166,
2276
+ "564": 305419896,
2277
+ "568": 5000,
2278
+ "572": 1,
2279
+ "84": 305419896
2280
+ },
2281
+ "weapon": 305397771
2282
+ }
2283
+ },
2284
+ {
2285
+ "rust": {
2286
+ "allocation": {
2287
+ "count": 67,
2288
+ "record": {
2289
+ "0": 66,
2290
+ "140": 305419896,
2291
+ "424": 305419896,
2292
+ "512": 1023,
2293
+ "532": 1,
2294
+ "536": 97243,
2295
+ "540": 3226498489,
2296
+ "564": 305419896,
2297
+ "84": 305419896
2298
+ },
2299
+ "registrations": [
2300
+ 67
2301
+ ],
2302
+ "retry": 0,
2303
+ "scan_index": 66,
2304
+ "selected": 66,
2305
+ "status": "returned"
2306
+ },
2307
+ "animation": 2,
2308
+ "busy": 1,
2309
+ "clock": 5000,
2310
+ "complete": 0,
2311
+ "event": [
2312
+ 5,
2313
+ 305419896
2314
+ ],
2315
+ "flags": 2147516420,
2316
+ "flags104": 2147483666,
2317
+ "guards": [
2318
+ 305419896,
2319
+ 305419896
2320
+ ],
2321
+ "links": [
2322
+ 66
2323
+ ],
2324
+ "record": {
2325
+ "0": 66,
2326
+ "12": 0,
2327
+ "140": 305419896,
2328
+ "16": 0,
2329
+ "180": 305419896,
2330
+ "184": 5,
2331
+ "188": 305419896,
2332
+ "20": 0,
2333
+ "24": 0,
2334
+ "28": 0,
2335
+ "32": 0,
2336
+ "36": 0,
2337
+ "4": 102,
2338
+ "40": 0,
2339
+ "400": 305419896,
2340
+ "424": 305419896,
2341
+ "44": 0,
2342
+ "488": 0,
2343
+ "492": 0,
2344
+ "496": 0,
2345
+ "512": 1023,
2346
+ "532": 1,
2347
+ "536": 97191,
2348
+ "540": 662184166,
2349
+ "564": 305419896,
2350
+ "568": 5000,
2351
+ "572": 1,
2352
+ "84": 305419896
2353
+ },
2354
+ "weapon": 305397771
2355
+ },
2356
+ "source": {
2357
+ "allocation": {
2358
+ "count": 67,
2359
+ "record": {
2360
+ "0": 66,
2361
+ "140": 305419896,
2362
+ "424": 305419896,
2363
+ "512": 1023,
2364
+ "532": 1,
2365
+ "536": 97243,
2366
+ "540": 3226498489,
2367
+ "564": 305419896,
2368
+ "84": 305419896
2369
+ },
2370
+ "registrations": [
2371
+ 67
2372
+ ],
2373
+ "retry": 0,
2374
+ "scan_index": 66,
2375
+ "selected": 66,
2376
+ "status": "returned"
2377
+ },
2378
+ "animation": 2,
2379
+ "busy": 1,
2380
+ "clock": 5000,
2381
+ "complete": 0,
2382
+ "event": [
2383
+ 5,
2384
+ 305419896
2385
+ ],
2386
+ "flags": 2147516420,
2387
+ "flags104": 2147483666,
2388
+ "guards": [
2389
+ 305419896,
2390
+ 305419896
2391
+ ],
2392
+ "links": [
2393
+ 66
2394
+ ],
2395
+ "record": {
2396
+ "0": 66,
2397
+ "12": 0,
2398
+ "140": 305419896,
2399
+ "16": 0,
2400
+ "180": 305419896,
2401
+ "184": 5,
2402
+ "188": 305419896,
2403
+ "20": 0,
2404
+ "24": 0,
2405
+ "28": 0,
2406
+ "32": 0,
2407
+ "36": 0,
2408
+ "4": 102,
2409
+ "40": 0,
2410
+ "400": 305419896,
2411
+ "424": 305419896,
2412
+ "44": 0,
2413
+ "488": 0,
2414
+ "492": 0,
2415
+ "496": 0,
2416
+ "512": 1023,
2417
+ "532": 1,
2418
+ "536": 97191,
2419
+ "540": 662184166,
2420
+ "564": 305419896,
2421
+ "568": 5000,
2422
+ "572": 1,
2423
+ "84": 305419896
2424
+ },
2425
+ "weapon": 305397771
2426
+ }
2427
+ },
2428
+ {
2429
+ "rust": {
2430
+ "allocation": {
2431
+ "count": 67,
2432
+ "record": {
2433
+ "0": 66,
2434
+ "140": 305419896,
2435
+ "424": 305419896,
2436
+ "512": 1023,
2437
+ "532": 1,
2438
+ "536": 97243,
2439
+ "540": 3226498489,
2440
+ "564": 305419896,
2441
+ "84": 305419896
2442
+ },
2443
+ "registrations": [
2444
+ 67
2445
+ ],
2446
+ "retry": 0,
2447
+ "scan_index": 66,
2448
+ "selected": 66,
2449
+ "status": "returned"
2450
+ },
2451
+ "animation": 2,
2452
+ "busy": 1,
2453
+ "clock": 5000,
2454
+ "complete": 0,
2455
+ "event": [
2456
+ 4294967295,
2457
+ 305419896
2458
+ ],
2459
+ "flags": 2147516420,
2460
+ "flags104": 2147483666,
2461
+ "guards": [
2462
+ 305419896,
2463
+ 305419896
2464
+ ],
2465
+ "links": [
2466
+ 66
2467
+ ],
2468
+ "record": {
2469
+ "0": 66,
2470
+ "12": 0,
2471
+ "140": 305419896,
2472
+ "16": 0,
2473
+ "180": 305419896,
2474
+ "184": 4294967295,
2475
+ "188": 305419896,
2476
+ "20": 0,
2477
+ "24": 0,
2478
+ "28": 0,
2479
+ "32": 0,
2480
+ "36": 0,
2481
+ "4": 102,
2482
+ "40": 0,
2483
+ "400": 305419896,
2484
+ "424": 305419896,
2485
+ "44": 0,
2486
+ "488": 0,
2487
+ "492": 0,
2488
+ "496": 0,
2489
+ "512": 1023,
2490
+ "532": 1,
2491
+ "536": 97191,
2492
+ "540": 662184166,
2493
+ "564": 305419896,
2494
+ "568": 5000,
2495
+ "572": 1,
2496
+ "84": 305419896
2497
+ },
2498
+ "weapon": 305397771
2499
+ },
2500
+ "source": {
2501
+ "allocation": {
2502
+ "count": 67,
2503
+ "record": {
2504
+ "0": 66,
2505
+ "140": 305419896,
2506
+ "424": 305419896,
2507
+ "512": 1023,
2508
+ "532": 1,
2509
+ "536": 97243,
2510
+ "540": 3226498489,
2511
+ "564": 305419896,
2512
+ "84": 305419896
2513
+ },
2514
+ "registrations": [
2515
+ 67
2516
+ ],
2517
+ "retry": 0,
2518
+ "scan_index": 66,
2519
+ "selected": 66,
2520
+ "status": "returned"
2521
+ },
2522
+ "animation": 2,
2523
+ "busy": 1,
2524
+ "clock": 5000,
2525
+ "complete": 0,
2526
+ "event": [
2527
+ 4294967295,
2528
+ 305419896
2529
+ ],
2530
+ "flags": 2147516420,
2531
+ "flags104": 2147483666,
2532
+ "guards": [
2533
+ 305419896,
2534
+ 305419896
2535
+ ],
2536
+ "links": [
2537
+ 66
2538
+ ],
2539
+ "record": {
2540
+ "0": 66,
2541
+ "12": 0,
2542
+ "140": 305419896,
2543
+ "16": 0,
2544
+ "180": 305419896,
2545
+ "184": 4294967295,
2546
+ "188": 305419896,
2547
+ "20": 0,
2548
+ "24": 0,
2549
+ "28": 0,
2550
+ "32": 0,
2551
+ "36": 0,
2552
+ "4": 102,
2553
+ "40": 0,
2554
+ "400": 305419896,
2555
+ "424": 305419896,
2556
+ "44": 0,
2557
+ "488": 0,
2558
+ "492": 0,
2559
+ "496": 0,
2560
+ "512": 1023,
2561
+ "532": 1,
2562
+ "536": 97191,
2563
+ "540": 662184166,
2564
+ "564": 305419896,
2565
+ "568": 5000,
2566
+ "572": 1,
2567
+ "84": 305419896
2568
+ },
2569
+ "weapon": 305397771
2570
+ }
2571
+ },
2572
+ {
2573
+ "rust": {
2574
+ "allocation": {
2575
+ "count": 1024,
2576
+ "record": {
2577
+ "0": 65,
2578
+ "140": 305419896,
2579
+ "424": 305419896,
2580
+ "512": 1023,
2581
+ "532": 1,
2582
+ "536": 97243,
2583
+ "540": 3226498489,
2584
+ "564": 4999,
2585
+ "84": 305419896
2586
+ },
2587
+ "registrations": [],
2588
+ "retry": 1,
2589
+ "scan_index": 65,
2590
+ "selected": 65,
2591
+ "status": "returned"
2592
+ },
2593
+ "animation": 2,
2594
+ "busy": 1,
2595
+ "clock": 5000,
2596
+ "complete": 0,
2597
+ "event": [
2598
+ 0,
2599
+ 305419896
2600
+ ],
2601
+ "flags": 2147516420,
2602
+ "flags104": 2147483666,
2603
+ "guards": [
2604
+ 305419896,
2605
+ 305419896
2606
+ ],
2607
+ "links": [
2608
+ 65
2609
+ ],
2610
+ "record": {
2611
+ "0": 65,
2612
+ "12": 0,
2613
+ "140": 305419896,
2614
+ "16": 0,
2615
+ "180": 305419896,
2616
+ "184": 0,
2617
+ "188": 305419896,
2618
+ "20": 0,
2619
+ "24": 1065353216,
2620
+ "28": 3221225472,
2621
+ "32": 1077936128,
2622
+ "36": 0,
2623
+ "4": 102,
2624
+ "40": 0,
2625
+ "400": 305419896,
2626
+ "424": 305419896,
2627
+ "44": 0,
2628
+ "488": 1065353216,
2629
+ "492": 3221225472,
2630
+ "496": 1077936128,
2631
+ "512": 1023,
2632
+ "532": 1,
2633
+ "536": 97191,
2634
+ "540": 662184166,
2635
+ "564": 4999,
2636
+ "568": 5000,
2637
+ "572": 1,
2638
+ "84": 305419896
2639
+ },
2640
+ "weapon": 305397771
2641
+ },
2642
+ "source": {
2643
+ "allocation": {
2644
+ "count": 1024,
2645
+ "record": {
2646
+ "0": 65,
2647
+ "140": 305419896,
2648
+ "424": 305419896,
2649
+ "512": 1023,
2650
+ "532": 1,
2651
+ "536": 97243,
2652
+ "540": 3226498489,
2653
+ "564": 4999,
2654
+ "84": 305419896
2655
+ },
2656
+ "registrations": [],
2657
+ "retry": 1,
2658
+ "scan_index": 65,
2659
+ "selected": 65,
2660
+ "status": "returned"
2661
+ },
2662
+ "animation": 2,
2663
+ "busy": 1,
2664
+ "clock": 5000,
2665
+ "complete": 0,
2666
+ "event": [
2667
+ 0,
2668
+ 305419896
2669
+ ],
2670
+ "flags": 2147516420,
2671
+ "flags104": 2147483666,
2672
+ "guards": [
2673
+ 305419896,
2674
+ 305419896
2675
+ ],
2676
+ "links": [
2677
+ 65
2678
+ ],
2679
+ "record": {
2680
+ "0": 65,
2681
+ "12": 0,
2682
+ "140": 305419896,
2683
+ "16": 0,
2684
+ "180": 305419896,
2685
+ "184": 0,
2686
+ "188": 305419896,
2687
+ "20": 0,
2688
+ "24": 1065353216,
2689
+ "28": 3221225472,
2690
+ "32": 1077936128,
2691
+ "36": 0,
2692
+ "4": 102,
2693
+ "40": 0,
2694
+ "400": 305419896,
2695
+ "424": 305419896,
2696
+ "44": 0,
2697
+ "488": 1065353216,
2698
+ "492": 3221225472,
2699
+ "496": 1077936128,
2700
+ "512": 1023,
2701
+ "532": 1,
2702
+ "536": 97191,
2703
+ "540": 662184166,
2704
+ "564": 4999,
2705
+ "568": 5000,
2706
+ "572": 1,
2707
+ "84": 305419896
2708
+ },
2709
+ "weapon": 305397771
2710
+ }
2711
+ },
2712
+ {
2713
+ "rust": {
2714
+ "allocation": {
2715
+ "count": 1024,
2716
+ "record": {
2717
+ "0": 65,
2718
+ "140": 305419896,
2719
+ "424": 305419896,
2720
+ "512": 1023,
2721
+ "532": 1,
2722
+ "536": 97243,
2723
+ "540": 3226498489,
2724
+ "564": 4999,
2725
+ "84": 305419896
2726
+ },
2727
+ "registrations": [],
2728
+ "retry": 1,
2729
+ "scan_index": 65,
2730
+ "selected": 65,
2731
+ "status": "returned"
2732
+ },
2733
+ "animation": 2,
2734
+ "busy": 1,
2735
+ "clock": 5000,
2736
+ "complete": 0,
2737
+ "event": [
2738
+ 5,
2739
+ 305419896
2740
+ ],
2741
+ "flags": 2147516420,
2742
+ "flags104": 2147483666,
2743
+ "guards": [
2744
+ 305419896,
2745
+ 305419896
2746
+ ],
2747
+ "links": [
2748
+ 65
2749
+ ],
2750
+ "record": {
2751
+ "0": 65,
2752
+ "12": 0,
2753
+ "140": 305419896,
2754
+ "16": 0,
2755
+ "180": 305419896,
2756
+ "184": 5,
2757
+ "188": 305419896,
2758
+ "20": 0,
2759
+ "24": 1065353216,
2760
+ "28": 3221225472,
2761
+ "32": 1077936128,
2762
+ "36": 0,
2763
+ "4": 102,
2764
+ "40": 0,
2765
+ "400": 305419896,
2766
+ "424": 305419896,
2767
+ "44": 0,
2768
+ "488": 1065353216,
2769
+ "492": 3221225472,
2770
+ "496": 1077936128,
2771
+ "512": 1023,
2772
+ "532": 1,
2773
+ "536": 97191,
2774
+ "540": 662184166,
2775
+ "564": 4999,
2776
+ "568": 5000,
2777
+ "572": 1,
2778
+ "84": 305419896
2779
+ },
2780
+ "weapon": 305397771
2781
+ },
2782
+ "source": {
2783
+ "allocation": {
2784
+ "count": 1024,
2785
+ "record": {
2786
+ "0": 65,
2787
+ "140": 305419896,
2788
+ "424": 305419896,
2789
+ "512": 1023,
2790
+ "532": 1,
2791
+ "536": 97243,
2792
+ "540": 3226498489,
2793
+ "564": 4999,
2794
+ "84": 305419896
2795
+ },
2796
+ "registrations": [],
2797
+ "retry": 1,
2798
+ "scan_index": 65,
2799
+ "selected": 65,
2800
+ "status": "returned"
2801
+ },
2802
+ "animation": 2,
2803
+ "busy": 1,
2804
+ "clock": 5000,
2805
+ "complete": 0,
2806
+ "event": [
2807
+ 5,
2808
+ 305419896
2809
+ ],
2810
+ "flags": 2147516420,
2811
+ "flags104": 2147483666,
2812
+ "guards": [
2813
+ 305419896,
2814
+ 305419896
2815
+ ],
2816
+ "links": [
2817
+ 65
2818
+ ],
2819
+ "record": {
2820
+ "0": 65,
2821
+ "12": 0,
2822
+ "140": 305419896,
2823
+ "16": 0,
2824
+ "180": 305419896,
2825
+ "184": 5,
2826
+ "188": 305419896,
2827
+ "20": 0,
2828
+ "24": 1065353216,
2829
+ "28": 3221225472,
2830
+ "32": 1077936128,
2831
+ "36": 0,
2832
+ "4": 102,
2833
+ "40": 0,
2834
+ "400": 305419896,
2835
+ "424": 305419896,
2836
+ "44": 0,
2837
+ "488": 1065353216,
2838
+ "492": 3221225472,
2839
+ "496": 1077936128,
2840
+ "512": 1023,
2841
+ "532": 1,
2842
+ "536": 97191,
2843
+ "540": 662184166,
2844
+ "564": 4999,
2845
+ "568": 5000,
2846
+ "572": 1,
2847
+ "84": 305419896
2848
+ },
2849
+ "weapon": 305397771
2850
+ }
2851
+ },
2852
+ {
2853
+ "rust": {
2854
+ "allocation": {
2855
+ "count": 1024,
2856
+ "record": {
2857
+ "0": 65,
2858
+ "140": 305419896,
2859
+ "424": 305419896,
2860
+ "512": 1023,
2861
+ "532": 1,
2862
+ "536": 97243,
2863
+ "540": 3226498489,
2864
+ "564": 4999,
2865
+ "84": 305419896
2866
+ },
2867
+ "registrations": [],
2868
+ "retry": 1,
2869
+ "scan_index": 65,
2870
+ "selected": 65,
2871
+ "status": "returned"
2872
+ },
2873
+ "animation": 2,
2874
+ "busy": 1,
2875
+ "clock": 5000,
2876
+ "complete": 0,
2877
+ "event": [
2878
+ 4294967295,
2879
+ 305419896
2880
+ ],
2881
+ "flags": 2147516420,
2882
+ "flags104": 2147483666,
2883
+ "guards": [
2884
+ 305419896,
2885
+ 305419896
2886
+ ],
2887
+ "links": [
2888
+ 65
2889
+ ],
2890
+ "record": {
2891
+ "0": 65,
2892
+ "12": 0,
2893
+ "140": 305419896,
2894
+ "16": 0,
2895
+ "180": 305419896,
2896
+ "184": 4294967295,
2897
+ "188": 305419896,
2898
+ "20": 0,
2899
+ "24": 1065353216,
2900
+ "28": 3221225472,
2901
+ "32": 1077936128,
2902
+ "36": 0,
2903
+ "4": 102,
2904
+ "40": 0,
2905
+ "400": 305419896,
2906
+ "424": 305419896,
2907
+ "44": 0,
2908
+ "488": 1065353216,
2909
+ "492": 3221225472,
2910
+ "496": 1077936128,
2911
+ "512": 1023,
2912
+ "532": 1,
2913
+ "536": 97191,
2914
+ "540": 662184166,
2915
+ "564": 4999,
2916
+ "568": 5000,
2917
+ "572": 1,
2918
+ "84": 305419896
2919
+ },
2920
+ "weapon": 305397771
2921
+ },
2922
+ "source": {
2923
+ "allocation": {
2924
+ "count": 1024,
2925
+ "record": {
2926
+ "0": 65,
2927
+ "140": 305419896,
2928
+ "424": 305419896,
2929
+ "512": 1023,
2930
+ "532": 1,
2931
+ "536": 97243,
2932
+ "540": 3226498489,
2933
+ "564": 4999,
2934
+ "84": 305419896
2935
+ },
2936
+ "registrations": [],
2937
+ "retry": 1,
2938
+ "scan_index": 65,
2939
+ "selected": 65,
2940
+ "status": "returned"
2941
+ },
2942
+ "animation": 2,
2943
+ "busy": 1,
2944
+ "clock": 5000,
2945
+ "complete": 0,
2946
+ "event": [
2947
+ 4294967295,
2948
+ 305419896
2949
+ ],
2950
+ "flags": 2147516420,
2951
+ "flags104": 2147483666,
2952
+ "guards": [
2953
+ 305419896,
2954
+ 305419896
2955
+ ],
2956
+ "links": [
2957
+ 65
2958
+ ],
2959
+ "record": {
2960
+ "0": 65,
2961
+ "12": 0,
2962
+ "140": 305419896,
2963
+ "16": 0,
2964
+ "180": 305419896,
2965
+ "184": 4294967295,
2966
+ "188": 305419896,
2967
+ "20": 0,
2968
+ "24": 1065353216,
2969
+ "28": 3221225472,
2970
+ "32": 1077936128,
2971
+ "36": 0,
2972
+ "4": 102,
2973
+ "40": 0,
2974
+ "400": 305419896,
2975
+ "424": 305419896,
2976
+ "44": 0,
2977
+ "488": 1065353216,
2978
+ "492": 3221225472,
2979
+ "496": 1077936128,
2980
+ "512": 1023,
2981
+ "532": 1,
2982
+ "536": 97191,
2983
+ "540": 662184166,
2984
+ "564": 4999,
2985
+ "568": 5000,
2986
+ "572": 1,
2987
+ "84": 305419896
2988
+ },
2989
+ "weapon": 305397771
2990
+ }
2991
+ },
2992
+ {
2993
+ "rust": {
2994
+ "allocation": {
2995
+ "count": 1024,
2996
+ "record": {
2997
+ "0": 65,
2998
+ "140": 305419896,
2999
+ "424": 305419896,
3000
+ "512": 1023,
3001
+ "532": 1,
3002
+ "536": 97243,
3003
+ "540": 3226498489,
3004
+ "564": 4999,
3005
+ "84": 305419896
3006
+ },
3007
+ "registrations": [],
3008
+ "retry": 1,
3009
+ "scan_index": 65,
3010
+ "selected": 65,
3011
+ "status": "returned"
3012
+ },
3013
+ "animation": 2,
3014
+ "busy": 1,
3015
+ "clock": 5000,
3016
+ "complete": 0,
3017
+ "event": [
3018
+ 0,
3019
+ 305419896
3020
+ ],
3021
+ "flags": 2147516420,
3022
+ "flags104": 2147483666,
3023
+ "guards": [
3024
+ 305419896,
3025
+ 305419896
3026
+ ],
3027
+ "links": [
3028
+ 65
3029
+ ],
3030
+ "record": {
3031
+ "0": 65,
3032
+ "12": 0,
3033
+ "140": 305419896,
3034
+ "16": 0,
3035
+ "180": 305419896,
3036
+ "184": 0,
3037
+ "188": 305419896,
3038
+ "20": 0,
3039
+ "24": 0,
3040
+ "28": 0,
3041
+ "32": 0,
3042
+ "36": 0,
3043
+ "4": 102,
3044
+ "40": 0,
3045
+ "400": 305419896,
3046
+ "424": 305419896,
3047
+ "44": 0,
3048
+ "488": 0,
3049
+ "492": 0,
3050
+ "496": 0,
3051
+ "512": 1023,
3052
+ "532": 1,
3053
+ "536": 97191,
3054
+ "540": 662184166,
3055
+ "564": 4999,
3056
+ "568": 5000,
3057
+ "572": 1,
3058
+ "84": 305419896
3059
+ },
3060
+ "weapon": 305397771
3061
+ },
3062
+ "source": {
3063
+ "allocation": {
3064
+ "count": 1024,
3065
+ "record": {
3066
+ "0": 65,
3067
+ "140": 305419896,
3068
+ "424": 305419896,
3069
+ "512": 1023,
3070
+ "532": 1,
3071
+ "536": 97243,
3072
+ "540": 3226498489,
3073
+ "564": 4999,
3074
+ "84": 305419896
3075
+ },
3076
+ "registrations": [],
3077
+ "retry": 1,
3078
+ "scan_index": 65,
3079
+ "selected": 65,
3080
+ "status": "returned"
3081
+ },
3082
+ "animation": 2,
3083
+ "busy": 1,
3084
+ "clock": 5000,
3085
+ "complete": 0,
3086
+ "event": [
3087
+ 0,
3088
+ 305419896
3089
+ ],
3090
+ "flags": 2147516420,
3091
+ "flags104": 2147483666,
3092
+ "guards": [
3093
+ 305419896,
3094
+ 305419896
3095
+ ],
3096
+ "links": [
3097
+ 65
3098
+ ],
3099
+ "record": {
3100
+ "0": 65,
3101
+ "12": 0,
3102
+ "140": 305419896,
3103
+ "16": 0,
3104
+ "180": 305419896,
3105
+ "184": 0,
3106
+ "188": 305419896,
3107
+ "20": 0,
3108
+ "24": 0,
3109
+ "28": 0,
3110
+ "32": 0,
3111
+ "36": 0,
3112
+ "4": 102,
3113
+ "40": 0,
3114
+ "400": 305419896,
3115
+ "424": 305419896,
3116
+ "44": 0,
3117
+ "488": 0,
3118
+ "492": 0,
3119
+ "496": 0,
3120
+ "512": 1023,
3121
+ "532": 1,
3122
+ "536": 97191,
3123
+ "540": 662184166,
3124
+ "564": 4999,
3125
+ "568": 5000,
3126
+ "572": 1,
3127
+ "84": 305419896
3128
+ },
3129
+ "weapon": 305397771
3130
+ }
3131
+ },
3132
+ {
3133
+ "rust": {
3134
+ "allocation": {
3135
+ "count": 1024,
3136
+ "record": {
3137
+ "0": 65,
3138
+ "140": 305419896,
3139
+ "424": 305419896,
3140
+ "512": 1023,
3141
+ "532": 1,
3142
+ "536": 97243,
3143
+ "540": 3226498489,
3144
+ "564": 4999,
3145
+ "84": 305419896
3146
+ },
3147
+ "registrations": [],
3148
+ "retry": 1,
3149
+ "scan_index": 65,
3150
+ "selected": 65,
3151
+ "status": "returned"
3152
+ },
3153
+ "animation": 2,
3154
+ "busy": 1,
3155
+ "clock": 5000,
3156
+ "complete": 0,
3157
+ "event": [
3158
+ 5,
3159
+ 305419896
3160
+ ],
3161
+ "flags": 2147516420,
3162
+ "flags104": 2147483666,
3163
+ "guards": [
3164
+ 305419896,
3165
+ 305419896
3166
+ ],
3167
+ "links": [
3168
+ 65
3169
+ ],
3170
+ "record": {
3171
+ "0": 65,
3172
+ "12": 0,
3173
+ "140": 305419896,
3174
+ "16": 0,
3175
+ "180": 305419896,
3176
+ "184": 5,
3177
+ "188": 305419896,
3178
+ "20": 0,
3179
+ "24": 0,
3180
+ "28": 0,
3181
+ "32": 0,
3182
+ "36": 0,
3183
+ "4": 102,
3184
+ "40": 0,
3185
+ "400": 305419896,
3186
+ "424": 305419896,
3187
+ "44": 0,
3188
+ "488": 0,
3189
+ "492": 0,
3190
+ "496": 0,
3191
+ "512": 1023,
3192
+ "532": 1,
3193
+ "536": 97191,
3194
+ "540": 662184166,
3195
+ "564": 4999,
3196
+ "568": 5000,
3197
+ "572": 1,
3198
+ "84": 305419896
3199
+ },
3200
+ "weapon": 305397771
3201
+ },
3202
+ "source": {
3203
+ "allocation": {
3204
+ "count": 1024,
3205
+ "record": {
3206
+ "0": 65,
3207
+ "140": 305419896,
3208
+ "424": 305419896,
3209
+ "512": 1023,
3210
+ "532": 1,
3211
+ "536": 97243,
3212
+ "540": 3226498489,
3213
+ "564": 4999,
3214
+ "84": 305419896
3215
+ },
3216
+ "registrations": [],
3217
+ "retry": 1,
3218
+ "scan_index": 65,
3219
+ "selected": 65,
3220
+ "status": "returned"
3221
+ },
3222
+ "animation": 2,
3223
+ "busy": 1,
3224
+ "clock": 5000,
3225
+ "complete": 0,
3226
+ "event": [
3227
+ 5,
3228
+ 305419896
3229
+ ],
3230
+ "flags": 2147516420,
3231
+ "flags104": 2147483666,
3232
+ "guards": [
3233
+ 305419896,
3234
+ 305419896
3235
+ ],
3236
+ "links": [
3237
+ 65
3238
+ ],
3239
+ "record": {
3240
+ "0": 65,
3241
+ "12": 0,
3242
+ "140": 305419896,
3243
+ "16": 0,
3244
+ "180": 305419896,
3245
+ "184": 5,
3246
+ "188": 305419896,
3247
+ "20": 0,
3248
+ "24": 0,
3249
+ "28": 0,
3250
+ "32": 0,
3251
+ "36": 0,
3252
+ "4": 102,
3253
+ "40": 0,
3254
+ "400": 305419896,
3255
+ "424": 305419896,
3256
+ "44": 0,
3257
+ "488": 0,
3258
+ "492": 0,
3259
+ "496": 0,
3260
+ "512": 1023,
3261
+ "532": 1,
3262
+ "536": 97191,
3263
+ "540": 662184166,
3264
+ "564": 4999,
3265
+ "568": 5000,
3266
+ "572": 1,
3267
+ "84": 305419896
3268
+ },
3269
+ "weapon": 305397771
3270
+ }
3271
+ },
3272
+ {
3273
+ "rust": {
3274
+ "allocation": {
3275
+ "count": 1024,
3276
+ "record": {
3277
+ "0": 65,
3278
+ "140": 305419896,
3279
+ "424": 305419896,
3280
+ "512": 1023,
3281
+ "532": 1,
3282
+ "536": 97243,
3283
+ "540": 3226498489,
3284
+ "564": 4999,
3285
+ "84": 305419896
3286
+ },
3287
+ "registrations": [],
3288
+ "retry": 1,
3289
+ "scan_index": 65,
3290
+ "selected": 65,
3291
+ "status": "returned"
3292
+ },
3293
+ "animation": 2,
3294
+ "busy": 1,
3295
+ "clock": 5000,
3296
+ "complete": 0,
3297
+ "event": [
3298
+ 4294967295,
3299
+ 305419896
3300
+ ],
3301
+ "flags": 2147516420,
3302
+ "flags104": 2147483666,
3303
+ "guards": [
3304
+ 305419896,
3305
+ 305419896
3306
+ ],
3307
+ "links": [
3308
+ 65
3309
+ ],
3310
+ "record": {
3311
+ "0": 65,
3312
+ "12": 0,
3313
+ "140": 305419896,
3314
+ "16": 0,
3315
+ "180": 305419896,
3316
+ "184": 4294967295,
3317
+ "188": 305419896,
3318
+ "20": 0,
3319
+ "24": 0,
3320
+ "28": 0,
3321
+ "32": 0,
3322
+ "36": 0,
3323
+ "4": 102,
3324
+ "40": 0,
3325
+ "400": 305419896,
3326
+ "424": 305419896,
3327
+ "44": 0,
3328
+ "488": 0,
3329
+ "492": 0,
3330
+ "496": 0,
3331
+ "512": 1023,
3332
+ "532": 1,
3333
+ "536": 97191,
3334
+ "540": 662184166,
3335
+ "564": 4999,
3336
+ "568": 5000,
3337
+ "572": 1,
3338
+ "84": 305419896
3339
+ },
3340
+ "weapon": 305397771
3341
+ },
3342
+ "source": {
3343
+ "allocation": {
3344
+ "count": 1024,
3345
+ "record": {
3346
+ "0": 65,
3347
+ "140": 305419896,
3348
+ "424": 305419896,
3349
+ "512": 1023,
3350
+ "532": 1,
3351
+ "536": 97243,
3352
+ "540": 3226498489,
3353
+ "564": 4999,
3354
+ "84": 305419896
3355
+ },
3356
+ "registrations": [],
3357
+ "retry": 1,
3358
+ "scan_index": 65,
3359
+ "selected": 65,
3360
+ "status": "returned"
3361
+ },
3362
+ "animation": 2,
3363
+ "busy": 1,
3364
+ "clock": 5000,
3365
+ "complete": 0,
3366
+ "event": [
3367
+ 4294967295,
3368
+ 305419896
3369
+ ],
3370
+ "flags": 2147516420,
3371
+ "flags104": 2147483666,
3372
+ "guards": [
3373
+ 305419896,
3374
+ 305419896
3375
+ ],
3376
+ "links": [
3377
+ 65
3378
+ ],
3379
+ "record": {
3380
+ "0": 65,
3381
+ "12": 0,
3382
+ "140": 305419896,
3383
+ "16": 0,
3384
+ "180": 305419896,
3385
+ "184": 4294967295,
3386
+ "188": 305419896,
3387
+ "20": 0,
3388
+ "24": 0,
3389
+ "28": 0,
3390
+ "32": 0,
3391
+ "36": 0,
3392
+ "4": 102,
3393
+ "40": 0,
3394
+ "400": 305419896,
3395
+ "424": 305419896,
3396
+ "44": 0,
3397
+ "488": 0,
3398
+ "492": 0,
3399
+ "496": 0,
3400
+ "512": 1023,
3401
+ "532": 1,
3402
+ "536": 97191,
3403
+ "540": 662184166,
3404
+ "564": 4999,
3405
+ "568": 5000,
3406
+ "572": 1,
3407
+ "84": 305419896
3408
+ },
3409
+ "weapon": 305397771
3410
+ }
3411
+ }
3412
+ ],
3413
+ "source_report": "docs/research/qvm-location-allocated-defuse.json",
3414
+ "source_report_sha256": "1ca6195899689c51d68ab78aae18f42bf6ff50a7dce691ba259f89d2c01fb0b0"
3415
+ }
scripts/analyze_rust_location_allocated_defuse.py ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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-location-feedback'],check=True,capture_output=True)
9
+ binary=Path(os.environ.get('CARGO_TARGET_DIR','target'))/'debug'/'urt-location-feedback'
10
+ path=Path('docs/research/qvm-location-allocated-defuse.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 ['flags', 'flags104', 'busy', 'clock', 'complete', 'animation', 'weapon', 'event', 'guards', 'allocation', 'record', 'links']},rust=result(binary,'allocated',encode(p['input']))))
13
+ write_json(Path('docs/research/rust-location-allocated-defuse.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
+ from analyze_rust_defuse_begin import encode as base_encode
16
+ from analyze_rust_location_allocation import encode as allocation_encode
17
+ def encode(a):
18
+ from analyze_qvm_acceleration import word
19
+ pool=allocation_encode(a['allocation'])
20
+ return base_encode(a)+[word(v) for v in a['origin']]+[len(pool),*pool]
21
+ if __name__=='__main__':main()
scripts/test_rust_location_allocated_defuse.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-location-allocated-defuse.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-location-allocated-defuse.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
@@ -4698,3 +4698,44 @@ report scripts/analyze_qvm_location_allocated_defuse.py docs/research/qvm-locati
4698
  edge docs/research/qvm-location-allocated-defuse.json scripts/test_qvm_location_allocated_defuse.py
4699
  group qvm-location-allocated-defuse scripts/analyze_qvm_location_allocated_defuse.py
4700
  edge scripts/analyze_qvm_location_allocated_defuse.py scripts/analyze_qvm_resumer_audit.py
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4698
  edge docs/research/qvm-location-allocated-defuse.json scripts/test_qvm_location_allocated_defuse.py
4699
  group qvm-location-allocated-defuse scripts/analyze_qvm_location_allocated_defuse.py
4700
  edge scripts/analyze_qvm_location_allocated_defuse.py scripts/analyze_qvm_resumer_audit.py
4701
+ report scripts/analyze_rust_location_allocated_defuse.py docs/research/rust-location-allocated-defuse.json
4702
+ edge docs/research/rust-location-allocated-defuse.json scripts/test_rust_location_allocated_defuse.py
4703
+ group rust-location-allocated-defuse scripts/analyze_rust_location_allocated_defuse.py
4704
+ edge scripts/analyze_rust_location_allocated_defuse.py scripts/analyze_qvm_resumer_audit.py
4705
+ edge Cargo.toml scripts/analyze_rust_location_allocated_defuse.py
4706
+ edge Cargo.lock scripts/analyze_rust_location_allocated_defuse.py
4707
+ edge crates/urt-gameplay/Cargo.toml scripts/analyze_rust_location_allocated_defuse.py
4708
+ edge crates/urt-gameplay/src/lib.rs scripts/analyze_rust_location_allocated_defuse.py
4709
+ edge crates/urt-gameplay/src/filter_loading.rs scripts/analyze_rust_location_allocated_defuse.py
4710
+ edge crates/urt-gameplay/src/filter_lifecycle.rs scripts/analyze_rust_location_allocated_defuse.py
4711
+ edge crates/urt-gameplay/src/native_policy.rs scripts/analyze_rust_location_allocated_defuse.py
4712
+ edge crates/urt-gameplay/src/bin/urt-filter-loading.rs scripts/analyze_rust_location_allocated_defuse.py
4713
+ edge crates/urt-gameplay/src/qvm_format.rs scripts/analyze_rust_location_allocated_defuse.py
4714
+ edge docs/research/qvm-location-allocated-defuse.json scripts/analyze_rust_location_allocated_defuse.py
4715
+ group rust-location-allocated-defuse scripts/analyze_rust_health_impulse.py
4716
+ group gameplay scripts/analyze_rust_location_allocated_defuse.py
4717
+ edge crates/urt-gameplay/src/filter_commands.rs scripts/analyze_rust_location_allocated_defuse.py
4718
+ edge crates/urt-gameplay/src/bin/urt-filter-commands.rs scripts/analyze_rust_location_allocated_defuse.py
4719
+ edge crates/urt-gameplay/src/client_timer.rs scripts/analyze_rust_location_allocated_defuse.py
4720
+ edge crates/urt-gameplay/src/bin/urt-client-timer.rs scripts/analyze_rust_location_allocated_defuse.py
4721
+ edge crates/urt-gameplay/src/client_processing.rs scripts/analyze_rust_location_allocated_defuse.py
4722
+ edge crates/urt-gameplay/src/bin/urt-client-processing.rs scripts/analyze_rust_location_allocated_defuse.py
4723
+ edge crates/urt-gameplay/src/client_move_context.rs scripts/analyze_rust_location_allocated_defuse.py
4724
+ edge crates/urt-gameplay/src/bin/urt-client-move-context.rs scripts/analyze_rust_location_allocated_defuse.py
4725
+ edge crates/urt-gameplay/src/move_callbacks.rs scripts/analyze_rust_location_allocated_defuse.py
4726
+ edge crates/urt-gameplay/src/bin/urt-move-callbacks.rs scripts/analyze_rust_location_allocated_defuse.py
4727
+ edge crates/urt-gameplay/src/assistance.rs scripts/analyze_rust_location_allocated_defuse.py
4728
+ edge crates/urt-gameplay/src/bin/urt-assistance.rs scripts/analyze_rust_location_allocated_defuse.py
4729
+ edge crates/urt-gameplay/src/move_callbacks.rs scripts/analyze_rust_location_allocated_defuse.py
4730
+ edge crates/urt-gameplay/src/defuse.rs scripts/analyze_rust_location_allocated_defuse.py
4731
+ edge crates/urt-gameplay/src/bin/urt-defuse.rs scripts/analyze_rust_location_allocated_defuse.py
4732
+ edge crates/urt-gameplay/src/move_callbacks.rs scripts/analyze_rust_location_allocated_defuse.py
4733
+ edge crates/urt-gameplay/src/effect_feedback.rs scripts/analyze_rust_location_allocated_defuse.py
4734
+ edge crates/urt-gameplay/src/bin/urt-effect-feedback.rs scripts/analyze_rust_location_allocated_defuse.py
4735
+ edge crates/urt-gameplay/src/score.rs scripts/analyze_rust_location_allocated_defuse.py
4736
+ edge crates/urt-gameplay/src/transition.rs scripts/analyze_rust_location_allocated_defuse.py
4737
+ edge crates/urt-gameplay/src/location_feedback.rs scripts/analyze_rust_location_allocated_defuse.py
4738
+ edge crates/urt-gameplay/src/bin/urt-location-feedback.rs scripts/analyze_rust_location_allocated_defuse.py
4739
+ edge crates/urt-gameplay/src/qvm_format.rs scripts/analyze_rust_location_allocated_defuse.py
4740
+ edge crates/urt-gameplay/src/defuse.rs scripts/analyze_rust_location_allocated_defuse.py
4741
+ edge crates/urt-gameplay/src/transition.rs scripts/analyze_rust_location_allocated_defuse.py
xtask/src/lib.rs CHANGED
@@ -1186,6 +1186,10 @@ mod integration_tests {
1186
  ("qvm_format", "location_radio"),
1187
  ("location_feedback", "location_allocation"),
1188
  ("qvm_format", "location_allocation"),
 
 
 
 
1189
  ("client_move_context", "client_move_scratch"),
1190
  ("client_processing", "client_routing"),
1191
  ("client_timer", "client_routing"),
@@ -1428,6 +1432,7 @@ mod integration_tests {
1428
  ("qvm-location-text", "location_text"),
1429
  ("qvm-location-radio", "location_radio"),
1430
  ("qvm-location-allocation", "location_allocation"),
 
1431
  ("qvm-client-move-scratch", "client_move_scratch"),
1432
  ("qvm-client-routing", "client_routing"),
1433
  ("qvm-client-command-rewrite", "client_command_rewrite"),
 
1186
  ("qvm_format", "location_radio"),
1187
  ("location_feedback", "location_allocation"),
1188
  ("qvm_format", "location_allocation"),
1189
+ ("location_feedback", "location_allocated_defuse"),
1190
+ ("defuse", "location_allocated_defuse"),
1191
+ ("transition", "location_allocated_defuse"),
1192
+ ("qvm_format", "location_allocated_defuse"),
1193
  ("client_move_context", "client_move_scratch"),
1194
  ("client_processing", "client_routing"),
1195
  ("client_timer", "client_routing"),
 
1432
  ("qvm-location-text", "location_text"),
1433
  ("qvm-location-radio", "location_radio"),
1434
  ("qvm-location-allocation", "location_allocation"),
1435
+ ("qvm-location-allocated-defuse", "location_allocated_defuse"),
1436
  ("qvm-client-move-scratch", "client_move_scratch"),
1437
  ("qvm-client-routing", "client_routing"),
1438
  ("qvm-client-command-rewrite", "client_command_rewrite"),