{
  "container_crc32_mpeg2": "0a137ec7",
  "container_sha256": "2dd65d0c1a3b0acbb6835d9e934e2bd12256064303ca2a15f9a3a41918664bc1",
  "custom_build": 4572,
  "dsp_core0_relocation": "0x08066000",
  "dsp_core0_sha256": "a0e4b3439de78c660bb00f3866a8c1050a5fc813d93461437420ebbc42dd2e6b",
  "dsp_core0_words": 14691,
  "dsp_pointer_table": "0x08029700",
  "dsp_pointer_was": "0x080101f0",
  "flash_headroom_bytes": 62417,
  "image_bytes": 396335,
  "image_end": "0x08070c2f",
  "xt8_patch": {
    "base": "0x08010000",
    "custom_build": 4572,
    "hooks": [
      {
        "address": "0x080101c8",
        "kind": "identity",
        "original": "0101861101644742312e312e353134332e343438360000000000000000000000000000000000",
        "replacement": "0101dc1101644742312e312e353134332e343537320000000000000000000000000000000000",
        "symbol": "application_identity"
      },
      {
        "address": "0x0801d790",
        "kind": "identity",
        "original": "4742312e312e353134332e3434383600",
        "replacement": "4742312e312e353134332e3435373200",
        "symbol": "runtime_build_string"
      },
      {
        "address": "0x0805a100",
        "kind": "vtable",
        "original": "0x08033283",
        "symbol": "hook_grid_press",
        "target": "0x0805dea5"
      },
      {
        "address": "0x0805a104",
        "kind": "vtable",
        "original": "0x080332ff",
        "symbol": "hook_grid_release",
        "target": "0x0805e35d"
      },
      {
        "address": "0x0805a108",
        "kind": "vtable",
        "original": "0x08033321",
        "symbol": "hook_ui_press",
        "target": "0x0805d71d"
      },
      {
        "address": "0x0805a10c",
        "kind": "vtable",
        "original": "0x0803381b",
        "symbol": "hook_ui_release",
        "target": "0x0805dd75"
      },
      {
        "address": "0x0805ac9c",
        "kind": "vtable",
        "original": "0x0804d243",
        "symbol": "hook_synth_track",
        "target": "0x0805ea41"
      },
      {
        "address": "0x0805ae5c",
        "kind": "vtable",
        "original": "0x0804d59b",
        "symbol": "hook_midi_track",
        "target": "0x0805ea81"
      },
      {
        "address": "0x0805abbc",
        "kind": "vtable",
        "original": "0x0804d935",
        "symbol": "hook_drum_track",
        "target": "0x0805eab5"
      },
      {
        "address": "0x0805a008",
        "kind": "vtable",
        "original": "0x08029fed",
        "symbol": "hook_clock",
        "target": "0x0805eaf1"
      },
      {
        "address": "0x08059fcc",
        "kind": "vtable",
        "original": "0x08029f5d",
        "symbol": "hook_start",
        "target": "0x0805eb45"
      },
      {
        "address": "0x08059fd0",
        "kind": "vtable",
        "original": "0x08029f71",
        "symbol": "hook_continue",
        "target": "0x0805eb7d"
      },
      {
        "address": "0x08059fd4",
        "kind": "vtable",
        "original": "0x08029f91",
        "symbol": "hook_stop",
        "target": "0x0805eba5"
      },
      {
        "address": "0x0805b6a0",
        "kind": "vtable",
        "original": "0x0802dbc5",
        "symbol": "hook_sequencer_primary",
        "target": "0x0805e9b9"
      },
      {
        "address": "0x0805b6ac",
        "kind": "vtable",
        "original": "0x0802dbc1",
        "symbol": "hook_sequencer_observer",
        "target": "0x0805e9fd"
      },
      {
        "address": "0x0805c114",
        "kind": "vtable",
        "original": "0x0803d6a1",
        "symbol": "hook_synth_handler_observer",
        "target": "0x0805e9a9"
      },
      {
        "address": "0x0805bbac",
        "kind": "vtable",
        "original": "0x0803bbb5",
        "symbol": "hook_live_parameter",
        "target": "0x0805d675"
      },
      {
        "address": "0x08019ae4",
        "kind": "entry",
        "original": "2de9f341",
        "replacement": "43f02ebd",
        "symbol": "hook_fat_open",
        "target": "0x0805d545"
      },
      {
        "address": "0x0802eefe",
        "kind": "entry",
        "original": "2de9f84f",
        "replacement": "2ef04bbb",
        "symbol": "hook_project_activate",
        "target": "0x0805d599"
      },
      {
        "address": "0x08033282",
        "kind": "entry",
        "original": "70b50646",
        "replacement": "2af00fbe",
        "symbol": "hook_grid_press",
        "target": "0x0805dea5"
      },
      {
        "address": "0x080332fe",
        "kind": "entry",
        "original": "38b50446",
        "replacement": "2bf02db8",
        "symbol": "hook_grid_release",
        "target": "0x0805e35d"
      },
      {
        "address": "0x08033320",
        "kind": "entry",
        "original": "38b50446",
        "replacement": "2af0fcb9",
        "symbol": "hook_ui_press",
        "target": "0x0805d71d"
      },
      {
        "address": "0x0803381a",
        "kind": "entry",
        "original": "38b50446",
        "replacement": "2af0abba",
        "symbol": "hook_ui_release",
        "target": "0x0805dd75"
      },
      {
        "address": "0x0804d242",
        "kind": "entry",
        "original": "2de9fc41",
        "replacement": "11f0fdbb",
        "symbol": "hook_synth_track",
        "target": "0x0805ea41"
      },
      {
        "address": "0x0804d59a",
        "kind": "entry",
        "original": "38b50d46",
        "replacement": "11f071ba",
        "symbol": "hook_midi_track",
        "target": "0x0805ea81"
      },
      {
        "address": "0x0804d934",
        "kind": "entry",
        "original": "2de9fc41",
        "replacement": "11f0beb8",
        "symbol": "hook_drum_track",
        "target": "0x0805eab5"
      },
      {
        "address": "0x0803bbb4",
        "kind": "entry",
        "original": "70b50446",
        "replacement": "21f05ebd",
        "symbol": "hook_live_parameter",
        "target": "0x0805d675"
      },
      {
        "address": "0x0802ddec",
        "kind": "call",
        "original": "0ff0a6fb",
        "replacement": "2ff008f9",
        "symbol": "hook_mutate_synth",
        "target": "0x0805d001"
      },
      {
        "address": "0x0802ddf2",
        "kind": "call",
        "original": "10f07dfc",
        "replacement": "2ff067fb",
        "symbol": "hook_mutate_drum",
        "target": "0x0805d4c5"
      },
      {
        "address": "0x08033b46",
        "kind": "call",
        "original": "00f026fb",
        "replacement": "2af089fc",
        "symbol": "hook_grid_render",
        "target": "0x0805e45d"
      },
      {
        "address": "0x0803415a",
        "kind": "call",
        "original": "00f01cf8",
        "replacement": "2af07ff9",
        "symbol": "hook_grid_render",
        "target": "0x0805e45d"
      },
      {
        "address": "0x08035d66",
        "kind": "call",
        "original": "e7f761fd",
        "replacement": "28f09ffd",
        "symbol": "hook_midi_receive",
        "target": "0x0805e8a9"
      },
      {
        "address": "0x0803beda",
        "kind": "branch",
        "original": "38b50446",
        "replacement": "22f0f9bb",
        "symbol": "hook_midi_send",
        "target": "0x0805e6d1"
      }
    ],
    "official_sha256": "b897e0f01c403974eafae32074876234f2da7ef834796a485993acf01423f8da",
    "official_size": 314844,
    "patched_sha256": "ca5b2dcd122ecc6cce4f6942cd8a4a3bb813c8174f76c569c1e002959d517b0c",
    "patched_size": 351092,
    "payload_base": "0x0805d000",
    "payload_size": 35700
  },
  "xt8_patcher_source": "/tmp/claude-1000/-home-jp123-circuit/af50ba5b-b2bf-4b40-ae02-21538bed96cd/scratchpad/xt8-merge-worktree/tooling/patch_xt_firmware.py",
  "xt8_payload_base": "0x0805d000",
  "xt8_payload_bytes": 35700,
  "xt8_payload_source": "/tmp/claude-1000/-home-jp123-circuit/af50ba5b-b2bf-4b40-ae02-21538bed96cd/scratchpad/xt8-merge-worktree/mod/build/payload.bin"
}
