{
  "version": 1,
  "kind": "hwanse-battle-frame-gate-review",
  "source": [
    "out/battle_display_vm_static_decode.json",
    "out/battle_action_event_timeline_review.json",
    "out/battle_helper_sync_timing_review.json",
    "out/runtime_timing.json"
  ],
  "status": "actor-repeat-gates-expanded-helper-gates-indexed",
  "wallClockCalibration": {
    "status": "exe-main-loop-grounded",
    "tickMs": 48,
    "fpsApprox": 20.833,
    "evidence": [
      "KERNEL32.dll!GetTickCount refs: 0x00401946, 0x0040197c, 0x00401a18",
      "frame interval global 0x0059e37c = 48ms",
      "update target 0x00411476 is called from 0x004019f2",
      "catch-up update count is clamped to 3"
    ],
    "previewPolicy": "durationMs = max(1, gate) * 48; wait barriers such as 0xbf/0xc1 remain barrier events, not fixed frame gates."
  },
  "summary": {
    "rows": 156,
    "rowsWithRepeatLoopExpansion": 18,
    "rowsWithEngineWaitBarrier": 144,
    "rowsWithHelperFrameScript": 52,
    "rowsWithDirectFrameSelector": 16,
    "resultHitEventsAfterRepeatExpansion": 239,
    "confirmedHitEventsAfterRepeatExpansion": 239,
    "timingClassCounts": {
      "actor-frame-gates": 12,
      "actor-gates-plus-engine-wait": 82,
      "actor-gates-plus-engine-wait-and-helper": 44,
      "fixed-gate-repeat-expanded": 18
    },
    "waitBarrierOpcodeCounts": {
      "0xbf": 217,
      "0xc1": 59
    }
  },
  "interpretationNotes": [
    "0x21 frame gate values are fixed EXE gate fields and are accumulated as gate units, not browser milliseconds.",
    "0x06 repeat-loop bodies are expanded for schedule review. The repeat count is total body executions, so only count-1 extra copies are appended after the original body.",
    "0xbf almost always appears after 0xc2 result sound and 0xad hit flag set/clear. It is best treated as a result/reaction barrier, not as a fixed sound-duration delay.",
    "0xc1 carries an actor flag mask and is best treated separately as an actor-flag barrier.",
    "Helper frameScripts have their own 0x21 frame/gate timelines and are indexed per skill when the helper id is known.",
    "This report verifies scheduling coverage only. It still does not prove damage, miss, critical, or status formula timing.",
    "Static EXE main-loop analysis grounds wall-clock preview at 48ms per frame gate tick (about 20.83Hz update)."
  ],
  "rows": [
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "호격권",
      "familyName": "호격권",
      "skillIdHex": "0x0a",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d6540",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "actor.skillId branch가 0x0a..0x0d 숙련도 차이를 가르고 idle/end marker에서 정상 종료된다.",
      "rawFrameCount": 6,
      "expandedFrameCount": 6,
      "rawDurationGate": 18,
      "expandedDurationGate": 18,
      "rawFrameGateSequence": [
        {
          "frame": 21,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 4
        },
        {
          "frame": 25,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 6
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 21,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 22,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 25,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 26,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004d6618",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "호격권",
      "familyName": "호격권",
      "skillIdHex": "0x0b",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d6540",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "actor.skillId branch가 0x0a..0x0d 숙련도 차이를 가르고 idle/end marker에서 정상 종료된다.",
      "rawFrameCount": 6,
      "expandedFrameCount": 6,
      "rawDurationGate": 18,
      "expandedDurationGate": 18,
      "rawFrameGateSequence": [
        {
          "frame": 21,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 4
        },
        {
          "frame": 25,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 6
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 21,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 22,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 25,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 26,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x004d65fc",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004d6618",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        112
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 112,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004badcc",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004bae04",
              "durationGate": 8,
              "frameGateSequence": [
                {
                  "frame": 190,
                  "gate": 8,
                  "tick": 0
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "호격권",
      "familyName": "호격권",
      "skillIdHex": "0x0c",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d6540",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "actor.skillId branch가 0x0a..0x0d 숙련도 차이를 가르고 idle/end marker에서 정상 종료된다.",
      "rawFrameCount": 8,
      "expandedFrameCount": 8,
      "rawDurationGate": 22,
      "expandedDurationGate": 22,
      "rawFrameGateSequence": [
        {
          "frame": 21,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 4
        },
        {
          "frame": 23,
          "gate": 2
        },
        {
          "frame": 24,
          "gate": 2
        },
        {
          "frame": 25,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 6
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 21,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 22,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 23,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 24,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 25,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 26,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x004d65fc",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004d6618",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        113
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 113,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004bae1c",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004bae54",
              "durationGate": 35,
              "frameGateSequence": [
                {
                  "frame": 190,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 190,
                  "gate": 6,
                  "tick": 2
                },
                {
                  "frame": 190,
                  "gate": 2,
                  "tick": 8
                },
                {
                  "frame": 190,
                  "gate": 4,
                  "tick": 10
                },
                {
                  "frame": 190,
                  "gate": 2,
                  "tick": 14
                },
                {
                  "frame": 190,
                  "gate": 3,
                  "tick": 16
                },
                {
                  "frame": 190,
                  "gate": 2,
                  "tick": 19
                },
                {
                  "frame": 190,
                  "gate": 2,
                  "tick": 21
                },
                {
                  "frame": 190,
                  "gate": 12,
                  "tick": 23
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "호격권",
      "familyName": "호격권",
      "skillIdHex": "0x0d",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d6540",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "actor.skillId branch가 0x0a..0x0d 숙련도 차이를 가르고 idle/end marker에서 정상 종료된다.",
      "rawFrameCount": 12,
      "expandedFrameCount": 12,
      "rawDurationGate": 30,
      "expandedDurationGate": 30,
      "rawFrameGateSequence": [
        {
          "frame": 21,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 4
        },
        {
          "frame": 23,
          "gate": 2
        },
        {
          "frame": 24,
          "gate": 2
        },
        {
          "frame": 23,
          "gate": 2
        },
        {
          "frame": 24,
          "gate": 2
        },
        {
          "frame": 23,
          "gate": 2
        },
        {
          "frame": 24,
          "gate": 2
        },
        {
          "frame": 25,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 6
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 21,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 22,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 23,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 24,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 23,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 24,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 23,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 24,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 25,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 22,
          "frame": 26,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 28,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x004d65fc",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004d6618",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        114
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 114,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004baeec",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004baf24",
              "durationGate": 61,
              "frameGateSequence": [
                {
                  "frame": 191,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 191,
                  "gate": 10,
                  "tick": 2
                },
                {
                  "frame": 191,
                  "gate": 2,
                  "tick": 12
                },
                {
                  "frame": 191,
                  "gate": 8,
                  "tick": 14
                },
                {
                  "frame": 191,
                  "gate": 2,
                  "tick": 22
                },
                {
                  "frame": 191,
                  "gate": 6,
                  "tick": 24
                },
                {
                  "frame": 191,
                  "gate": 2,
                  "tick": 30
                },
                {
                  "frame": 191,
                  "gate": 4,
                  "tick": 32
                },
                {
                  "frame": 191,
                  "gate": 2,
                  "tick": 36
                },
                {
                  "frame": 191,
                  "gate": 3,
                  "tick": 38
                },
                {
                  "frame": 191,
                  "gate": 2,
                  "tick": 41
                },
                {
                  "frame": 191,
                  "gate": 2,
                  "tick": 43
                },
                {
                  "frame": 191,
                  "gate": 16,
                  "tick": 45
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "맹호비상각",
      "familyName": "맹호비상각",
      "skillIdHex": "0x0e",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d6640",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "actor.skillId branch와 target-relative movement block이 확인되고 idle/end marker에서 정상 종료된다.",
      "rawFrameCount": 2,
      "expandedFrameCount": 2,
      "rawDurationGate": 34,
      "expandedDurationGate": 34,
      "rawFrameGateSequence": [
        {
          "frame": 7,
          "gate": 32
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 7,
          "gate": 32,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 32,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004d66b8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "맹호비상각",
      "familyName": "맹호비상각",
      "skillIdHex": "0x0f",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d6640",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "actor.skillId branch와 target-relative movement block이 확인되고 idle/end marker에서 정상 종료된다.",
      "rawFrameCount": 2,
      "expandedFrameCount": 2,
      "rawDurationGate": 26,
      "expandedDurationGate": 26,
      "rawFrameGateSequence": [
        {
          "frame": 7,
          "gate": 24
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 7,
          "gate": 24,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004d66b8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "맹호비상각",
      "familyName": "맹호비상각",
      "skillIdHex": "0x10",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d6640",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "actor.skillId branch와 target-relative movement block이 확인되고 idle/end marker에서 정상 종료된다.",
      "rawFrameCount": 2,
      "expandedFrameCount": 2,
      "rawDurationGate": 18,
      "expandedDurationGate": 18,
      "rawFrameGateSequence": [
        {
          "frame": 7,
          "gate": 16
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 7,
          "gate": 16,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004d66b8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "맹호비상각",
      "familyName": "맹호비상각",
      "skillIdHex": "0x11",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d6640",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "actor.skillId branch와 target-relative movement block이 확인되고 idle/end marker에서 정상 종료된다.",
      "rawFrameCount": 2,
      "expandedFrameCount": 2,
      "rawDurationGate": 10,
      "expandedDurationGate": 10,
      "rawFrameGateSequence": [
        {
          "frame": 7,
          "gate": 8
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 7,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004d66b8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "폭전축",
      "familyName": "폭전축/퍽전축",
      "skillIdHex": "0x12",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d66d4",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "0x14는 한국판 기술명 오타 퍽전축으로 분리되지만 같은 branch family 안의 숙련도 변형이다.",
      "rawFrameCount": 9,
      "expandedFrameCount": 9,
      "rawDurationGate": 20,
      "expandedDurationGate": 20,
      "rawFrameGateSequence": [
        {
          "frame": 3,
          "gate": 2
        },
        {
          "frame": 4,
          "gate": 3
        },
        {
          "frame": 4,
          "gate": 1
        },
        {
          "frame": 5,
          "gate": 2
        },
        {
          "frame": 6,
          "gate": 2
        },
        {
          "frame": 6,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        },
        {
          "frame": 4,
          "gate": 4
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 4,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 5,
          "frame": 4,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 5,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 6,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 6,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 4,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004d6750",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "폭전축",
      "familyName": "폭전축/퍽전축",
      "skillIdHex": "0x13",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d66d4",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "0x14는 한국판 기술명 오타 퍽전축으로 분리되지만 같은 branch family 안의 숙련도 변형이다.",
      "rawFrameCount": 9,
      "expandedFrameCount": 9,
      "rawDurationGate": 20,
      "expandedDurationGate": 20,
      "rawFrameGateSequence": [
        {
          "frame": 3,
          "gate": 2
        },
        {
          "frame": 4,
          "gate": 3
        },
        {
          "frame": 4,
          "gate": 1
        },
        {
          "frame": 5,
          "gate": 2
        },
        {
          "frame": 6,
          "gate": 2
        },
        {
          "frame": 6,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        },
        {
          "frame": 4,
          "gate": 4
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 4,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 5,
          "frame": 4,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 5,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 6,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 6,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 4,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004d6750",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        115
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 115,
          "syncSignals": [
            "wait/yield"
          ],
          "childScriptVaHex": "0x004baffc",
          "frameScriptCount": 0,
          "actorFlagCount": 0,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "퍽전축",
      "familyName": "폭전축/퍽전축",
      "skillIdHex": "0x14",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d66d4",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "0x14는 한국판 기술명 오타 퍽전축으로 분리되지만 같은 branch family 안의 숙련도 변형이다.",
      "rawFrameCount": 9,
      "expandedFrameCount": 9,
      "rawDurationGate": 20,
      "expandedDurationGate": 20,
      "rawFrameGateSequence": [
        {
          "frame": 3,
          "gate": 2
        },
        {
          "frame": 4,
          "gate": 3
        },
        {
          "frame": 4,
          "gate": 1
        },
        {
          "frame": 5,
          "gate": 2
        },
        {
          "frame": 6,
          "gate": 2
        },
        {
          "frame": 6,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        },
        {
          "frame": 4,
          "gate": 4
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 4,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 5,
          "frame": 4,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 5,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 6,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 6,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 4,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x004d6750",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d6778",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 2,
      "confirmedHitEventCount": 2,
      "helperIds": [
        116
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 116,
          "syncSignals": [
            "wait/yield"
          ],
          "childScriptVaHex": "0x004bb0f8",
          "frameScriptCount": 0,
          "actorFlagCount": 0,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "폭전축",
      "familyName": "폭전축/퍽전축",
      "skillIdHex": "0x15",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d66d4",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "0x14는 한국판 기술명 오타 퍽전축으로 분리되지만 같은 branch family 안의 숙련도 변형이다.",
      "rawFrameCount": 9,
      "expandedFrameCount": 9,
      "rawDurationGate": 20,
      "expandedDurationGate": 20,
      "rawFrameGateSequence": [
        {
          "frame": 3,
          "gate": 2
        },
        {
          "frame": 4,
          "gate": 3
        },
        {
          "frame": 4,
          "gate": 1
        },
        {
          "frame": 5,
          "gate": 2
        },
        {
          "frame": 6,
          "gate": 2
        },
        {
          "frame": 6,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        },
        {
          "frame": 4,
          "gate": 4
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 4,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 5,
          "frame": 4,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 5,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 6,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 6,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 4,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 3,
      "waitBarriers": [
        {
          "vaHex": "0x004d6750",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d6778",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d67a0",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 3,
      "confirmedHitEventCount": 3,
      "helperIds": [
        117
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 117,
          "syncSignals": [
            "wait/yield"
          ],
          "childScriptVaHex": "0x004bb11c",
          "frameScriptCount": 0,
          "actorFlagCount": 0,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "맹호스페셜",
      "familyName": "맹호스페셜",
      "skillIdHex": "0x16",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d67e0",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "actor.skillId branch가 0x16..0x19 숙련도 차이를 가르고 같은 branch block 안에서 정상 종료된다.",
      "rawFrameCount": 14,
      "expandedFrameCount": 14,
      "rawDurationGate": 32,
      "expandedDurationGate": 32,
      "rawFrameGateSequence": [
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 2
        },
        {
          "frame": 21,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 2
        },
        {
          "frame": 25,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        },
        {
          "frame": 8,
          "gate": 4
        },
        {
          "frame": 9,
          "gate": 2
        },
        {
          "frame": 10,
          "gate": 4
        },
        {
          "frame": 11,
          "gate": 2
        },
        {
          "frame": 11,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 13,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 21,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 22,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 25,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 8,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 9,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 22,
          "frame": 10,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 26,
          "frame": 11,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 28,
          "frame": 11,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 3,
      "waitBarriers": [
        {
          "vaHex": "0x004d6804",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d6844",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d6940",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 3,
      "confirmedHitEventCount": 3,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "맹호스페셜",
      "familyName": "맹호스페셜",
      "skillIdHex": "0x17",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d67e0",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "actor.skillId branch가 0x16..0x19 숙련도 차이를 가르고 같은 branch block 안에서 정상 종료된다.",
      "rawFrameCount": 10,
      "expandedFrameCount": 10,
      "rawDurationGate": 22,
      "expandedDurationGate": 22,
      "rawFrameGateSequence": [
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 2
        },
        {
          "frame": 21,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 2
        },
        {
          "frame": 25,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        },
        {
          "frame": 7,
          "gate": 4
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 13,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 21,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 22,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 25,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 7,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 3,
      "waitBarriers": [
        {
          "vaHex": "0x004d6804",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d6844",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d69f8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 3,
      "confirmedHitEventCount": 3,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "맹호스페셜",
      "familyName": "맹호스페셜",
      "skillIdHex": "0x18",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d67e0",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "actor.skillId branch가 0x16..0x19 숙련도 차이를 가르고 같은 branch block 안에서 정상 종료된다.",
      "rawFrameCount": 20,
      "expandedFrameCount": 20,
      "rawDurationGate": 48,
      "expandedDurationGate": 48,
      "rawFrameGateSequence": [
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 2
        },
        {
          "frame": 21,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 2
        },
        {
          "frame": 25,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        },
        {
          "frame": 8,
          "gate": 4
        },
        {
          "frame": 9,
          "gate": 2
        },
        {
          "frame": 10,
          "gate": 4
        },
        {
          "frame": 11,
          "gate": 2
        },
        {
          "frame": 11,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        },
        {
          "frame": 4,
          "gate": 4
        },
        {
          "frame": 5,
          "gate": 2
        },
        {
          "frame": 6,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        },
        {
          "frame": 4,
          "gate": 4
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 13,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 21,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 22,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 25,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 8,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 9,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 22,
          "frame": 10,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 26,
          "frame": 11,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 28,
          "frame": 11,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 32,
          "frame": 4,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 36,
          "frame": 5,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 38,
          "frame": 6,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 40,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 42,
          "frame": 4,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 46,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 4,
      "waitBarriers": [
        {
          "vaHex": "0x004d6804",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d6844",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d6940",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d6998",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 4,
      "confirmedHitEventCount": 4,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "맹호스페셜",
      "familyName": "맹호스페셜",
      "skillIdHex": "0x19",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d67e0",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "actor.skillId branch가 0x16..0x19 숙련도 차이를 가르고 같은 branch block 안에서 정상 종료된다.",
      "rawFrameCount": 28,
      "expandedFrameCount": 28,
      "rawDurationGate": 66,
      "expandedDurationGate": 66,
      "rawFrameGateSequence": [
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 2
        },
        {
          "frame": 21,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 2
        },
        {
          "frame": 25,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        },
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        },
        {
          "frame": 21,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 4
        },
        {
          "frame": 25,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 8,
          "gate": 4
        },
        {
          "frame": 9,
          "gate": 2
        },
        {
          "frame": 10,
          "gate": 4
        },
        {
          "frame": 11,
          "gate": 2
        },
        {
          "frame": 11,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        },
        {
          "frame": 4,
          "gate": 4
        },
        {
          "frame": 5,
          "gate": 2
        },
        {
          "frame": 6,
          "gate": 2
        },
        {
          "frame": 7,
          "gate": 4
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 13,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 21,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 22,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 25,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 13,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 13,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 22,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 21,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 26,
          "frame": 22,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 25,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 32,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 34,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 36,
          "frame": 8,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 40,
          "frame": 9,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 42,
          "frame": 10,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 46,
          "frame": 11,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 48,
          "frame": 11,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 50,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 52,
          "frame": 4,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 56,
          "frame": 5,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 58,
          "frame": 6,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 60,
          "frame": 7,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 64,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 7,
      "waitBarriers": [
        {
          "vaHex": "0x004d6804",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d6844",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d6894",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d68e4",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d6940",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d6998",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d69f8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 7,
      "confirmedHitEventCount": 7,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "비기·맹호광파참",
      "familyName": "비기·맹호광파참",
      "skillIdHex": "0x1a",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d6a14",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "actor.skillId branch가 레벨별 hit/write 반복 수를 가르고 idle/end marker에서 정상 종료된다. 0x004d6a10은 선행 branch-tail byte라 0x004d6a14부터 걷는다.",
      "rawFrameCount": 7,
      "expandedFrameCount": 7,
      "rawDurationGate": 13,
      "expandedDurationGate": 13,
      "rawFrameGateSequence": [
        {
          "frame": 0,
          "gate": 2
        },
        {
          "frame": 18,
          "gate": 2
        },
        {
          "frame": 19,
          "gate": 1
        },
        {
          "frame": 20,
          "gate": 4
        },
        {
          "frame": 20,
          "gate": 1
        },
        {
          "frame": 20,
          "gate": 1
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 18,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 19,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 5,
          "frame": 20,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 9,
          "frame": 20,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 20,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 11,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 4,
      "waitBarriers": [
        {
          "vaHex": "0x004d6a74",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004d6adc",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d6afc",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d6b1c",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 1,
      "resultHitEventCount": 3,
      "confirmedHitEventCount": 3,
      "helperIds": [
        19,
        23
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 4,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 23,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b4e3c",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 3,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 19,
          "syncSignals": [
            "wait/yield"
          ],
          "childScriptVaHex": "0x004b3fc4",
          "frameScriptCount": 0,
          "actorFlagCount": 0,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "비기·맹호광파참",
      "familyName": "비기·맹호광파참",
      "skillIdHex": "0x1b",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d6a14",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "actor.skillId branch가 레벨별 hit/write 반복 수를 가르고 idle/end marker에서 정상 종료된다. 0x004d6a10은 선행 branch-tail byte라 0x004d6a14부터 걷는다.",
      "rawFrameCount": 7,
      "expandedFrameCount": 7,
      "rawDurationGate": 13,
      "expandedDurationGate": 13,
      "rawFrameGateSequence": [
        {
          "frame": 0,
          "gate": 2
        },
        {
          "frame": 18,
          "gate": 2
        },
        {
          "frame": 19,
          "gate": 1
        },
        {
          "frame": 20,
          "gate": 4
        },
        {
          "frame": 20,
          "gate": 1
        },
        {
          "frame": 20,
          "gate": 1
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 18,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 19,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 5,
          "frame": 20,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 9,
          "frame": 20,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 20,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 11,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 4,
      "waitBarriers": [
        {
          "vaHex": "0x004d6a74",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004d6adc",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d6afc",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d6b1c",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 1,
      "resultHitEventCount": 3,
      "confirmedHitEventCount": 3,
      "helperIds": [
        20,
        27
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 4,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 27,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b4f0c",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 3,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 20,
          "syncSignals": [
            "wait/yield"
          ],
          "childScriptVaHex": "0x004b41e4",
          "frameScriptCount": 0,
          "actorFlagCount": 0,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "비기·맹호광파참",
      "familyName": "비기·맹호광파참",
      "skillIdHex": "0x1c",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d6a14",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "actor.skillId branch가 레벨별 hit/write 반복 수를 가르고 idle/end marker에서 정상 종료된다. 0x004d6a10은 선행 branch-tail byte라 0x004d6a14부터 걷는다.",
      "rawFrameCount": 8,
      "expandedFrameCount": 8,
      "rawDurationGate": 14,
      "expandedDurationGate": 14,
      "rawFrameGateSequence": [
        {
          "frame": 0,
          "gate": 2
        },
        {
          "frame": 18,
          "gate": 2
        },
        {
          "frame": 19,
          "gate": 1
        },
        {
          "frame": 20,
          "gate": 4
        },
        {
          "frame": 20,
          "gate": 1
        },
        {
          "frame": 20,
          "gate": 1
        },
        {
          "frame": 20,
          "gate": 1
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 18,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 19,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 5,
          "frame": 20,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 9,
          "frame": 20,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 20,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 11,
          "frame": 20,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 5,
      "waitBarriers": [
        {
          "vaHex": "0x004d6a74",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004d6adc",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d6afc",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d6b1c",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d6b6c",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 1,
      "resultHitEventCount": 4,
      "confirmedHitEventCount": 4,
      "helperIds": [
        21,
        25
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 4,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 25,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b4ea4",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 3,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 21,
          "syncSignals": [
            "wait/yield"
          ],
          "childScriptVaHex": "0x004b4644",
          "frameScriptCount": 0,
          "actorFlagCount": 0,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "비기·맹호광파참",
      "familyName": "비기·맹호광파참",
      "skillIdHex": "0x1d",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d6a14",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "actor.skillId branch가 레벨별 hit/write 반복 수를 가르고 idle/end marker에서 정상 종료된다. 0x004d6a10은 선행 branch-tail byte라 0x004d6a14부터 걷는다.",
      "rawFrameCount": 9,
      "expandedFrameCount": 9,
      "rawDurationGate": 15,
      "expandedDurationGate": 15,
      "rawFrameGateSequence": [
        {
          "frame": 0,
          "gate": 2
        },
        {
          "frame": 18,
          "gate": 2
        },
        {
          "frame": 19,
          "gate": 1
        },
        {
          "frame": 20,
          "gate": 4
        },
        {
          "frame": 20,
          "gate": 1
        },
        {
          "frame": 20,
          "gate": 1
        },
        {
          "frame": 20,
          "gate": 1
        },
        {
          "frame": 20,
          "gate": 1
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 18,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 19,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 5,
          "frame": 20,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 9,
          "frame": 20,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 20,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 11,
          "frame": 20,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 20,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 13,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 6,
      "waitBarriers": [
        {
          "vaHex": "0x004d6a74",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004d6adc",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d6afc",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d6b1c",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d6b4c",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d6b6c",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 1,
      "resultHitEventCount": 5,
      "confirmedHitEventCount": 5,
      "helperIds": [
        28,
        126
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 4,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 28,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b4f5c",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 3,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 126,
          "syncSignals": [
            "wait/yield"
          ],
          "childScriptVaHex": "0x004b4884",
          "frameScriptCount": 0,
          "actorFlagCount": 0,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "조금 취한 철권",
      "familyName": "취호권 개인공격기",
      "skillIdHex": "0x1e",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d6bb8",
      "startSource": "entry-spec-family-start",
      "confidence": "static-repeat-loop-family",
      "note": "무기 술 계열 개인공격기 shared branch family. 0x004d6bb8의 WLK 23 음주 시전음/선행 frame block부터 시작해야 하며, 0x06 repeat-loop control이 포함되고 정상 종료된다.",
      "rawFrameCount": 10,
      "expandedFrameCount": 10,
      "rawDurationGate": 29,
      "expandedDurationGate": 29,
      "rawFrameGateSequence": [
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        },
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 6
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 3,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 9,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 15,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 17,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 19,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 21,
          "frame": 13,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 27,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004d6c54",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "지옥 다리후리기",
      "familyName": "취호권 개인공격기",
      "skillIdHex": "0x1f",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d6bb8",
      "startSource": "entry-spec-family-start",
      "confidence": "static-repeat-loop-family",
      "note": "무기 술 계열 개인공격기 shared branch family. 0x004d6bb8의 WLK 23 음주 시전음/선행 frame block부터 시작해야 하며, 0x06 repeat-loop control이 포함되고 정상 종료된다.",
      "rawFrameCount": 13,
      "expandedFrameCount": 29,
      "rawDurationGate": 31,
      "expandedDurationGate": 63,
      "rawFrameGateSequence": [
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        },
        {
          "frame": 51,
          "gate": 2
        },
        {
          "frame": 52,
          "gate": 2
        },
        {
          "frame": 52,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 3,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 9,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 15,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 17,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 19,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 21,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 23,
          "frame": 51,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 25,
          "frame": 52,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 27,
          "frame": 52,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 29,
          "frame": 0,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x004d6ca4"
        },
        {
          "tick": 31,
          "frame": 51,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x004d6ca4"
        },
        {
          "tick": 33,
          "frame": 52,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x004d6ca4"
        },
        {
          "tick": 35,
          "frame": 52,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x004d6ca4"
        },
        {
          "tick": 37,
          "frame": 0,
          "gate": 2,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x004d6ca4"
        },
        {
          "tick": 39,
          "frame": 51,
          "gate": 2,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x004d6ca4"
        },
        {
          "tick": 41,
          "frame": 52,
          "gate": 2,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x004d6ca4"
        },
        {
          "tick": 43,
          "frame": 52,
          "gate": 2,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x004d6ca4"
        },
        {
          "tick": 45,
          "frame": 0,
          "gate": 2,
          "repeatIteration": 3,
          "repeatSourceVaHex": "0x004d6ca4"
        },
        {
          "tick": 47,
          "frame": 51,
          "gate": 2,
          "repeatIteration": 3,
          "repeatSourceVaHex": "0x004d6ca4"
        },
        {
          "tick": 49,
          "frame": 52,
          "gate": 2,
          "repeatIteration": 3,
          "repeatSourceVaHex": "0x004d6ca4"
        },
        {
          "tick": 51,
          "frame": 52,
          "gate": 2,
          "repeatIteration": 3,
          "repeatSourceVaHex": "0x004d6ca4"
        },
        {
          "tick": 53,
          "frame": 0,
          "gate": 2,
          "repeatIteration": 4,
          "repeatSourceVaHex": "0x004d6ca4"
        },
        {
          "tick": 55,
          "frame": 51,
          "gate": 2,
          "repeatIteration": 4,
          "repeatSourceVaHex": "0x004d6ca4"
        },
        {
          "tick": 57,
          "frame": 52,
          "gate": 2,
          "repeatIteration": 4,
          "repeatSourceVaHex": "0x004d6ca4"
        },
        {
          "tick": 59,
          "frame": 52,
          "gate": 2,
          "repeatIteration": 4,
          "repeatSourceVaHex": "0x004d6ca4"
        },
        {
          "tick": 61,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 1,
      "repeatLoops": [
        {
          "vaHex": "0x004d6ca4",
          "targetVaHex": "0x004d6c6c",
          "repeatCount": 5,
          "summary": "repeat-loop count=5, target=0x004d6c6c; handler stores target in object +0x3c and counter in +0x60"
        }
      ],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004d6c98",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 5,
      "confirmedHitEventCount": 5,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "fixed-gate-repeat-expanded"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "만취한 철권",
      "familyName": "취호권 개인공격기",
      "skillIdHex": "0x20",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d6bb8",
      "startSource": "entry-spec-family-start",
      "confidence": "static-repeat-loop-family",
      "note": "무기 술 계열 개인공격기 shared branch family. 0x004d6bb8의 WLK 23 음주 시전음/선행 frame block부터 시작해야 하며, 0x06 repeat-loop control이 포함되고 정상 종료된다.",
      "rawFrameCount": 12,
      "expandedFrameCount": 12,
      "rawDurationGate": 31,
      "expandedDurationGate": 31,
      "rawFrameGateSequence": [
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        },
        {
          "frame": 21,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 4
        },
        {
          "frame": 25,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 3,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 9,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 15,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 17,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 19,
          "frame": 21,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 21,
          "frame": 22,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 25,
          "frame": 25,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 27,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 29,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004d6cf0",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "염가열소",
      "familyName": "취호권 개인공격기",
      "skillIdHex": "0x21",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d6bb8",
      "startSource": "entry-spec-family-start",
      "confidence": "static-repeat-loop-family",
      "note": "무기 술 계열 개인공격기 shared branch family. 0x004d6bb8의 WLK 23 음주 시전음/선행 frame block부터 시작해야 하며, 0x06 repeat-loop control이 포함되고 정상 종료된다.",
      "rawFrameCount": 13,
      "expandedFrameCount": 13,
      "rawDurationGate": 39,
      "expandedDurationGate": 39,
      "rawFrameGateSequence": [
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        },
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 36,
          "gate": 2
        },
        {
          "frame": 37,
          "gate": 4
        },
        {
          "frame": 38,
          "gate": 8
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 3,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 9,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 15,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 17,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 19,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 21,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 23,
          "frame": 36,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 25,
          "frame": 37,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 29,
          "frame": 38,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 37,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x004d6d38",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004d6d50",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        62
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 62,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b6a5c",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "인사불성 철권",
      "familyName": "취호권 개인공격기",
      "skillIdHex": "0x22",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d6bb8",
      "startSource": "entry-spec-family-start",
      "confidence": "static-repeat-loop-family",
      "note": "무기 술 계열 개인공격기 shared branch family. 0x004d6bb8의 WLK 23 음주 시전음/선행 frame block부터 시작해야 하며, 0x06 repeat-loop control이 포함되고 정상 종료된다.",
      "rawFrameCount": 15,
      "expandedFrameCount": 37,
      "rawDurationGate": 37,
      "expandedDurationGate": 59,
      "rawFrameGateSequence": [
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        },
        {
          "frame": 27,
          "gate": 2
        },
        {
          "frame": 28,
          "gate": 4
        },
        {
          "frame": 39,
          "gate": 1
        },
        {
          "frame": 39,
          "gate": 1
        },
        {
          "frame": 3,
          "gate": 2
        },
        {
          "frame": 4,
          "gate": 4
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 3,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 9,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 15,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 17,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 19,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 21,
          "frame": 27,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 23,
          "frame": 28,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 27,
          "frame": 39,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 28,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x004d6d88"
        },
        {
          "tick": 29,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x004d6d88"
        },
        {
          "tick": 30,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 3,
          "repeatSourceVaHex": "0x004d6d88"
        },
        {
          "tick": 31,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 4,
          "repeatSourceVaHex": "0x004d6d88"
        },
        {
          "tick": 32,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 5,
          "repeatSourceVaHex": "0x004d6d88"
        },
        {
          "tick": 33,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 6,
          "repeatSourceVaHex": "0x004d6d88"
        },
        {
          "tick": 34,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 7,
          "repeatSourceVaHex": "0x004d6d88"
        },
        {
          "tick": 35,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 8,
          "repeatSourceVaHex": "0x004d6d88"
        },
        {
          "tick": 36,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 9,
          "repeatSourceVaHex": "0x004d6d88"
        },
        {
          "tick": 37,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 10,
          "repeatSourceVaHex": "0x004d6d88"
        },
        {
          "tick": 38,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 11,
          "repeatSourceVaHex": "0x004d6d88"
        },
        {
          "tick": 39,
          "frame": 39,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 40,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x004d6db8"
        },
        {
          "tick": 41,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x004d6db8"
        },
        {
          "tick": 42,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 3,
          "repeatSourceVaHex": "0x004d6db8"
        },
        {
          "tick": 43,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 4,
          "repeatSourceVaHex": "0x004d6db8"
        },
        {
          "tick": 44,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 5,
          "repeatSourceVaHex": "0x004d6db8"
        },
        {
          "tick": 45,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 6,
          "repeatSourceVaHex": "0x004d6db8"
        },
        {
          "tick": 46,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 7,
          "repeatSourceVaHex": "0x004d6db8"
        },
        {
          "tick": 47,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 8,
          "repeatSourceVaHex": "0x004d6db8"
        },
        {
          "tick": 48,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 9,
          "repeatSourceVaHex": "0x004d6db8"
        },
        {
          "tick": 49,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 10,
          "repeatSourceVaHex": "0x004d6db8"
        },
        {
          "tick": 50,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 11,
          "repeatSourceVaHex": "0x004d6db8"
        },
        {
          "tick": 51,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 53,
          "frame": 4,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 57,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 2,
      "repeatLoops": [
        {
          "vaHex": "0x004d6d88",
          "targetVaHex": "0x004d6d78",
          "repeatCount": 12,
          "summary": "repeat-loop count=12, target=0x004d6d78; handler stores target in object +0x3c and counter in +0x60"
        },
        {
          "vaHex": "0x004d6db8",
          "targetVaHex": "0x004d6da8",
          "repeatCount": 12,
          "summary": "repeat-loop count=12, target=0x004d6da8; handler stores target in object +0x3c and counter in +0x60"
        }
      ],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004d6da4",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "fixed-gate-repeat-expanded"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "맹호난무",
      "familyName": "맹호난무",
      "skillIdHex": "0x23",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d6df4",
      "startSource": "entry-spec-family-start",
      "confidence": "static-repeat-loop-family",
      "note": "맹호난무 숙련도 family. 0x004d6df4의 WLK 18 시전음/선행 frame부터 시작해야 하며, 일부 레벨은 0x06 repeat-loop control을 포함하고 정상 종료된다.",
      "rawFrameCount": 11,
      "expandedFrameCount": 11,
      "rawDurationGate": 38,
      "expandedDurationGate": 38,
      "rawFrameGateSequence": [
        {
          "frame": 13,
          "gate": 8
        },
        {
          "frame": 25,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 8
        },
        {
          "frame": 24,
          "gate": 2
        },
        {
          "frame": 27,
          "gate": 2
        },
        {
          "frame": 28,
          "gate": 2
        },
        {
          "frame": 39,
          "gate": 2
        },
        {
          "frame": 39,
          "gate": 6
        },
        {
          "frame": 4,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 13,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 25,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 26,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 24,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 27,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 22,
          "frame": 28,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 39,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 26,
          "frame": 39,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 32,
          "frame": 4,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 34,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 36,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004d6e68",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "맹호난무",
      "familyName": "맹호난무",
      "skillIdHex": "0x24",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d6df4",
      "startSource": "entry-spec-family-start",
      "confidence": "static-repeat-loop-family",
      "note": "맹호난무 숙련도 family. 0x004d6df4의 WLK 18 시전음/선행 frame부터 시작해야 하며, 일부 레벨은 0x06 repeat-loop control을 포함하고 정상 종료된다.",
      "rawFrameCount": 12,
      "expandedFrameCount": 17,
      "rawDurationGate": 36,
      "expandedDurationGate": 46,
      "rawFrameGateSequence": [
        {
          "frame": 13,
          "gate": 8
        },
        {
          "frame": 25,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 8
        },
        {
          "frame": 24,
          "gate": 2
        },
        {
          "frame": 27,
          "gate": 2
        },
        {
          "frame": 28,
          "gate": 2
        },
        {
          "frame": 39,
          "gate": 2
        },
        {
          "frame": 39,
          "gate": 2
        },
        {
          "frame": 39,
          "gate": 2
        },
        {
          "frame": 4,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 13,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 25,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 26,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 24,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 27,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 22,
          "frame": 28,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 39,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 26,
          "frame": 39,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 28,
          "frame": 39,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x004d6ed4"
        },
        {
          "tick": 30,
          "frame": 39,
          "gate": 2,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x004d6ed4"
        },
        {
          "tick": 32,
          "frame": 39,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 34,
          "frame": 39,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x004d6eec"
        },
        {
          "tick": 36,
          "frame": 39,
          "gate": 2,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x004d6eec"
        },
        {
          "tick": 38,
          "frame": 39,
          "gate": 2,
          "repeatIteration": 3,
          "repeatSourceVaHex": "0x004d6eec"
        },
        {
          "tick": 40,
          "frame": 4,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 42,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 44,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 2,
      "repeatLoops": [
        {
          "vaHex": "0x004d6ed4",
          "targetVaHex": "0x004d6ec4",
          "repeatCount": 3,
          "summary": "repeat-loop count=3, target=0x004d6ec4; handler stores target in object +0x3c and counter in +0x60"
        },
        {
          "vaHex": "0x004d6eec",
          "targetVaHex": "0x004d6edc",
          "repeatCount": 4,
          "summary": "repeat-loop count=4, target=0x004d6edc; handler stores target in object +0x3c and counter in +0x60"
        }
      ],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004d6ec0",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "fixed-gate-repeat-expanded"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "맹호난무",
      "familyName": "맹호난무",
      "skillIdHex": "0x25",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d6df4",
      "startSource": "entry-spec-family-start",
      "confidence": "static-repeat-loop-family",
      "note": "맹호난무 숙련도 family. 0x004d6df4의 WLK 18 시전음/선행 frame부터 시작해야 하며, 일부 레벨은 0x06 repeat-loop control을 포함하고 정상 종료된다.",
      "rawFrameCount": 13,
      "expandedFrameCount": 13,
      "rawDurationGate": 38,
      "expandedDurationGate": 38,
      "rawFrameGateSequence": [
        {
          "frame": 13,
          "gate": 8
        },
        {
          "frame": 25,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 8
        },
        {
          "frame": 24,
          "gate": 2
        },
        {
          "frame": 27,
          "gate": 2
        },
        {
          "frame": 28,
          "gate": 2
        },
        {
          "frame": 39,
          "gate": 2
        },
        {
          "frame": 39,
          "gate": 2
        },
        {
          "frame": 39,
          "gate": 2
        },
        {
          "frame": 39,
          "gate": 2
        },
        {
          "frame": 4,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 13,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 25,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 26,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 24,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 27,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 22,
          "frame": 28,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 39,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 26,
          "frame": 39,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 28,
          "frame": 39,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 39,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 32,
          "frame": 4,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 34,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 36,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 2,
      "repeatLoops": [
        {
          "vaHex": "0x004d6f64",
          "targetVaHex": "0x004d6ec4",
          "repeatCount": 6,
          "summary": "repeat-loop count=6, target=0x004d6ec4; handler stores target in object +0x3c and counter in +0x60"
        },
        {
          "vaHex": "0x004d6f7c",
          "targetVaHex": "0x004d6edc",
          "repeatCount": 8,
          "summary": "repeat-loop count=8, target=0x004d6edc; handler stores target in object +0x3c and counter in +0x60"
        }
      ],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004d6f50",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "fixed-gate-repeat-expanded"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "맹호난무",
      "familyName": "맹호난무",
      "skillIdHex": "0x26",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d6df4",
      "startSource": "entry-spec-family-start",
      "confidence": "static-repeat-loop-family",
      "note": "맹호난무 숙련도 family. 0x004d6df4의 WLK 18 시전음/선행 frame부터 시작해야 하며, 일부 레벨은 0x06 repeat-loop control을 포함하고 정상 종료된다.",
      "rawFrameCount": 19,
      "expandedFrameCount": 19,
      "rawDurationGate": 50,
      "expandedDurationGate": 50,
      "rawFrameGateSequence": [
        {
          "frame": 13,
          "gate": 8
        },
        {
          "frame": 25,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 8
        },
        {
          "frame": 24,
          "gate": 2
        },
        {
          "frame": 27,
          "gate": 2
        },
        {
          "frame": 28,
          "gate": 2
        },
        {
          "frame": 27,
          "gate": 2
        },
        {
          "frame": 28,
          "gate": 2
        },
        {
          "frame": 27,
          "gate": 2
        },
        {
          "frame": 28,
          "gate": 2
        },
        {
          "frame": 27,
          "gate": 2
        },
        {
          "frame": 28,
          "gate": 2
        },
        {
          "frame": 39,
          "gate": 2
        },
        {
          "frame": 39,
          "gate": 2
        },
        {
          "frame": 39,
          "gate": 2
        },
        {
          "frame": 39,
          "gate": 2
        },
        {
          "frame": 4,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 13,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 25,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 26,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 24,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 27,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 22,
          "frame": 28,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 27,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 26,
          "frame": 28,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 28,
          "frame": 27,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 28,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 32,
          "frame": 27,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 34,
          "frame": 28,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 36,
          "frame": 39,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 38,
          "frame": 39,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 40,
          "frame": 39,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 42,
          "frame": 39,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 44,
          "frame": 4,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 46,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 48,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 2,
      "repeatLoops": [
        {
          "vaHex": "0x004d7058",
          "targetVaHex": "0x004d6ec4",
          "repeatCount": 6,
          "summary": "repeat-loop count=6, target=0x004d6ec4; handler stores target in object +0x3c and counter in +0x60"
        },
        {
          "vaHex": "0x004d7070",
          "targetVaHex": "0x004d6edc",
          "repeatCount": 8,
          "summary": "repeat-loop count=8, target=0x004d6edc; handler stores target in object +0x3c and counter in +0x60"
        }
      ],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004d7044",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "fixed-gate-repeat-expanded"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "맹호의 울부짖음",
      "familyName": "맹호의 울부짖음",
      "skillIdHex": "0x27",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d70a8",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "맹호의 울부짖음 숙련도 family. frame/write 및 WLK id 00 호출 후 정상 종료된다.",
      "rawFrameCount": 5,
      "expandedFrameCount": 5,
      "rawDurationGate": 18,
      "expandedDurationGate": 18,
      "rawFrameGateSequence": [
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 36,
          "gate": 2
        },
        {
          "frame": 37,
          "gate": 4
        },
        {
          "frame": 38,
          "gate": 8
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 36,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 37,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 38,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004d7124",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "맹호의 울부짖음",
      "familyName": "맹호의 울부짖음",
      "skillIdHex": "0x28",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d70a8",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "맹호의 울부짖음 숙련도 family. frame/write 및 WLK id 00 호출 후 정상 종료된다.",
      "rawFrameCount": 5,
      "expandedFrameCount": 5,
      "rawDurationGate": 18,
      "expandedDurationGate": 18,
      "rawFrameGateSequence": [
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 36,
          "gate": 2
        },
        {
          "frame": 37,
          "gate": 4
        },
        {
          "frame": 38,
          "gate": 8
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 36,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 37,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 38,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x004d7108",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004d7124",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        112
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 112,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004badcc",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004bae04",
              "durationGate": 8,
              "frameGateSequence": [
                {
                  "frame": 190,
                  "gate": 8,
                  "tick": 0
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "맹호의 울부짖음",
      "familyName": "맹호의 울부짖음",
      "skillIdHex": "0x29",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d70a8",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "맹호의 울부짖음 숙련도 family. frame/write 및 WLK id 00 호출 후 정상 종료된다.",
      "rawFrameCount": 5,
      "expandedFrameCount": 5,
      "rawDurationGate": 18,
      "expandedDurationGate": 18,
      "rawFrameGateSequence": [
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 36,
          "gate": 2
        },
        {
          "frame": 37,
          "gate": 4
        },
        {
          "frame": 38,
          "gate": 8
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 36,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 37,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 38,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x004d7108",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004d7124",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        113
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 113,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004bae1c",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004bae54",
              "durationGate": 35,
              "frameGateSequence": [
                {
                  "frame": 190,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 190,
                  "gate": 6,
                  "tick": 2
                },
                {
                  "frame": 190,
                  "gate": 2,
                  "tick": 8
                },
                {
                  "frame": 190,
                  "gate": 4,
                  "tick": 10
                },
                {
                  "frame": 190,
                  "gate": 2,
                  "tick": 14
                },
                {
                  "frame": 190,
                  "gate": 3,
                  "tick": 16
                },
                {
                  "frame": 190,
                  "gate": 2,
                  "tick": 19
                },
                {
                  "frame": 190,
                  "gate": 2,
                  "tick": 21
                },
                {
                  "frame": 190,
                  "gate": 12,
                  "tick": 23
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "맹호의 울부짖음",
      "familyName": "맹호의 울부짖음",
      "skillIdHex": "0x2a",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d70a8",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "맹호의 울부짖음 숙련도 family. frame/write 및 WLK id 00 호출 후 정상 종료된다.",
      "rawFrameCount": 5,
      "expandedFrameCount": 5,
      "rawDurationGate": 18,
      "expandedDurationGate": 18,
      "rawFrameGateSequence": [
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 36,
          "gate": 2
        },
        {
          "frame": 37,
          "gate": 4
        },
        {
          "frame": 38,
          "gate": 8
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 36,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 37,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 38,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x004d7108",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004d7124",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        114
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 114,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004baeec",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004baf24",
              "durationGate": 61,
              "frameGateSequence": [
                {
                  "frame": 191,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 191,
                  "gate": 10,
                  "tick": 2
                },
                {
                  "frame": 191,
                  "gate": 2,
                  "tick": 12
                },
                {
                  "frame": 191,
                  "gate": 8,
                  "tick": 14
                },
                {
                  "frame": 191,
                  "gate": 2,
                  "tick": 22
                },
                {
                  "frame": 191,
                  "gate": 6,
                  "tick": 24
                },
                {
                  "frame": 191,
                  "gate": 2,
                  "tick": 30
                },
                {
                  "frame": 191,
                  "gate": 4,
                  "tick": 32
                },
                {
                  "frame": 191,
                  "gate": 2,
                  "tick": 36
                },
                {
                  "frame": 191,
                  "gate": 3,
                  "tick": 38
                },
                {
                  "frame": 191,
                  "gate": 2,
                  "tick": 41
                },
                {
                  "frame": 191,
                  "gate": 2,
                  "tick": 43
                },
                {
                  "frame": 191,
                  "gate": 16,
                  "tick": 45
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "호포권",
      "familyName": "호포권",
      "skillIdHex": "0x2b",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d7140",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "호포권 숙련도 family. 레벨별 WLK 호출 분기가 보이고 정상 종료된다.",
      "rawFrameCount": 4,
      "expandedFrameCount": 4,
      "rawDurationGate": 7,
      "expandedDurationGate": 7,
      "rawFrameGateSequence": [
        {
          "frame": 18,
          "gate": 2
        },
        {
          "frame": 19,
          "gate": 1
        },
        {
          "frame": 20,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 18,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 19,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 3,
          "frame": 20,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 5,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 3,
      "waitBarriers": [
        {
          "vaHex": "0x004d7194",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004d71c0",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004d7224",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 1,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        23,
        66
      ],
      "helperFrameScriptCount": 2,
      "helperWaitCount": 4,
      "helperLoopCount": 1,
      "helperTiming": [
        {
          "helperId": 23,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b4e3c",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 3,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 66,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "looping-frame-script",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b72a0",
          "frameScriptCount": 2,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 1,
          "frameScripts": [
            {
              "targetVaHex": "0x004b7320",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 146,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 147,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 148,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": [
                {
                  "tick": 6,
                  "targetVaHex": "0x004b7320",
                  "repeatCount": null,
                  "vaHex": "0x004b7338"
                }
              ]
            },
            {
              "targetVaHex": "0x004b7340",
              "durationGate": 4,
              "frameGateSequence": [
                {
                  "frame": 132,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 133,
                  "gate": 2,
                  "tick": 2
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "호포권",
      "familyName": "호포권",
      "skillIdHex": "0x2c",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d7140",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "호포권 숙련도 family. 레벨별 WLK 호출 분기가 보이고 정상 종료된다.",
      "rawFrameCount": 4,
      "expandedFrameCount": 4,
      "rawDurationGate": 7,
      "expandedDurationGate": 7,
      "rawFrameGateSequence": [
        {
          "frame": 18,
          "gate": 2
        },
        {
          "frame": 19,
          "gate": 1
        },
        {
          "frame": 20,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 18,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 19,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 3,
          "frame": 20,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 5,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 3,
      "waitBarriers": [
        {
          "vaHex": "0x004d7194",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004d71d8",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004d7224",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 1,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        27,
        67
      ],
      "helperFrameScriptCount": 2,
      "helperWaitCount": 4,
      "helperLoopCount": 1,
      "helperTiming": [
        {
          "helperId": 27,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b4f0c",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 3,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 67,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "looping-frame-script",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b7360",
          "frameScriptCount": 2,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 1,
          "frameScripts": [
            {
              "targetVaHex": "0x004b73e0",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 149,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 150,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 151,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": [
                {
                  "tick": 6,
                  "targetVaHex": "0x004b73e0",
                  "repeatCount": null,
                  "vaHex": "0x004b73f8"
                }
              ]
            },
            {
              "targetVaHex": "0x004b7400",
              "durationGate": 8,
              "frameGateSequence": [
                {
                  "frame": 130,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 131,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 132,
                  "gate": 2,
                  "tick": 4
                },
                {
                  "frame": 133,
                  "gate": 2,
                  "tick": 6
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "호포권",
      "familyName": "호포권",
      "skillIdHex": "0x2d",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d7140",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "호포권 숙련도 family. 레벨별 WLK 호출 분기가 보이고 정상 종료된다.",
      "rawFrameCount": 4,
      "expandedFrameCount": 4,
      "rawDurationGate": 7,
      "expandedDurationGate": 7,
      "rawFrameGateSequence": [
        {
          "frame": 18,
          "gate": 2
        },
        {
          "frame": 19,
          "gate": 1
        },
        {
          "frame": 20,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 18,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 19,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 3,
          "frame": 20,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 5,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 3,
      "waitBarriers": [
        {
          "vaHex": "0x004d7194",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004d71f0",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004d7224",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 1,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        25,
        68
      ],
      "helperFrameScriptCount": 2,
      "helperWaitCount": 4,
      "helperLoopCount": 2,
      "helperTiming": [
        {
          "helperId": 25,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b4ea4",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 3,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 68,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "looping-frame-script",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b7430",
          "frameScriptCount": 2,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 2,
          "frameScripts": [
            {
              "targetVaHex": "0x004b749c",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 152,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 153,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 154,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": [
                {
                  "tick": 6,
                  "targetVaHex": "0x004b749c",
                  "repeatCount": null,
                  "vaHex": "0x004b74b4"
                }
              ]
            },
            {
              "targetVaHex": "0x004b74bc",
              "durationGate": 8,
              "frameGateSequence": [
                {
                  "frame": 130,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 131,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 132,
                  "gate": 2,
                  "tick": 4
                },
                {
                  "frame": 133,
                  "gate": 2,
                  "tick": 6
                }
              ],
              "loopEvents": [
                {
                  "tick": 8,
                  "targetVaHex": "0x004b74bc",
                  "repeatCount": 2,
                  "vaHex": "0x004b74dc"
                }
              ]
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "호포권",
      "familyName": "호포권",
      "skillIdHex": "0x2e",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d7140",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "호포권 숙련도 family. 레벨별 WLK 호출 분기가 보이고 정상 종료된다.",
      "rawFrameCount": 4,
      "expandedFrameCount": 4,
      "rawDurationGate": 7,
      "expandedDurationGate": 7,
      "rawFrameGateSequence": [
        {
          "frame": 18,
          "gate": 2
        },
        {
          "frame": 19,
          "gate": 1
        },
        {
          "frame": 20,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 18,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 19,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 3,
          "frame": 20,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 5,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 3,
      "waitBarriers": [
        {
          "vaHex": "0x004d7194",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004d7208",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004d7224",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 1,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        28,
        69
      ],
      "helperFrameScriptCount": 2,
      "helperWaitCount": 5,
      "helperLoopCount": 2,
      "helperTiming": [
        {
          "helperId": 28,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b4f5c",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 3,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 69,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "looping-frame-script",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b74f4",
          "frameScriptCount": 2,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 2,
          "frameScripts": [
            {
              "targetVaHex": "0x004b75f8",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 152,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 153,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 154,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": [
                {
                  "tick": 6,
                  "targetVaHex": "0x004b75f8",
                  "repeatCount": null,
                  "vaHex": "0x004b7610"
                }
              ]
            },
            {
              "targetVaHex": "0x004b7618",
              "durationGate": 8,
              "frameGateSequence": [
                {
                  "frame": 130,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 131,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 132,
                  "gate": 2,
                  "tick": 4
                },
                {
                  "frame": 133,
                  "gate": 2,
                  "tick": 6
                }
              ],
              "loopEvents": [
                {
                  "tick": 8,
                  "targetVaHex": "0x004b74bc",
                  "repeatCount": 3,
                  "vaHex": "0x004b7638"
                }
              ]
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "맹호룬룬권",
      "familyName": "맹호룬룬권",
      "skillIdHex": "0x2f",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d7240",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "맹호룬룬권 숙련도 family. 0x004d7240의 WLK 32 시전음과 선행 무릎차기 frame block부터 시작해야 하며, 레벨이 올라갈수록 actor frame 조합과 WLK 호출 수가 늘어난다.",
      "rawFrameCount": 9,
      "expandedFrameCount": 9,
      "rawDurationGate": 22,
      "expandedDurationGate": 22,
      "rawFrameGateSequence": [
        {
          "frame": 44,
          "gate": 2
        },
        {
          "frame": 45,
          "gate": 2
        },
        {
          "frame": 46,
          "gate": 4
        },
        {
          "frame": 47,
          "gate": 2
        },
        {
          "frame": 44,
          "gate": 2
        },
        {
          "frame": 48,
          "gate": 2
        },
        {
          "frame": 49,
          "gate": 4
        },
        {
          "frame": 50,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 44,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 45,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 46,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 47,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 44,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 48,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 49,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 50,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x004d7280",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d72b8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 2,
      "confirmedHitEventCount": 2,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "맹호룬룬권",
      "familyName": "맹호룬룬권",
      "skillIdHex": "0x30",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d7240",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "맹호룬룬권 숙련도 family. 0x004d7240의 WLK 32 시전음과 선행 무릎차기 frame block부터 시작해야 하며, 레벨이 올라갈수록 actor frame 조합과 WLK 호출 수가 늘어난다.",
      "rawFrameCount": 11,
      "expandedFrameCount": 11,
      "rawDurationGate": 28,
      "expandedDurationGate": 28,
      "rawFrameGateSequence": [
        {
          "frame": 44,
          "gate": 2
        },
        {
          "frame": 45,
          "gate": 2
        },
        {
          "frame": 46,
          "gate": 4
        },
        {
          "frame": 47,
          "gate": 2
        },
        {
          "frame": 44,
          "gate": 2
        },
        {
          "frame": 48,
          "gate": 2
        },
        {
          "frame": 49,
          "gate": 4
        },
        {
          "frame": 50,
          "gate": 2
        },
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 4
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 44,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 45,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 46,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 47,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 44,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 48,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 49,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 50,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 22,
          "frame": 13,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 26,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 3,
      "waitBarriers": [
        {
          "vaHex": "0x004d7280",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d72b8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d72e8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 3,
      "confirmedHitEventCount": 3,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "맹호룬룬권",
      "familyName": "맹호룬룬권",
      "skillIdHex": "0x31",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d7240",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "맹호룬룬권 숙련도 family. 0x004d7240의 WLK 32 시전음과 선행 무릎차기 frame block부터 시작해야 하며, 레벨이 올라갈수록 actor frame 조합과 WLK 호출 수가 늘어난다.",
      "rawFrameCount": 13,
      "expandedFrameCount": 13,
      "rawDurationGate": 34,
      "expandedDurationGate": 34,
      "rawFrameGateSequence": [
        {
          "frame": 44,
          "gate": 2
        },
        {
          "frame": 45,
          "gate": 2
        },
        {
          "frame": 46,
          "gate": 4
        },
        {
          "frame": 47,
          "gate": 2
        },
        {
          "frame": 44,
          "gate": 2
        },
        {
          "frame": 48,
          "gate": 2
        },
        {
          "frame": 49,
          "gate": 4
        },
        {
          "frame": 50,
          "gate": 2
        },
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 4
        },
        {
          "frame": 25,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 4
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 44,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 45,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 46,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 47,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 44,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 48,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 49,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 50,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 22,
          "frame": 13,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 26,
          "frame": 25,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 28,
          "frame": 26,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 32,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 4,
      "waitBarriers": [
        {
          "vaHex": "0x004d7280",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d72b8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d72e8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d7318",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 4,
      "confirmedHitEventCount": 4,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "맹호룬룬권",
      "familyName": "맹호룬룬권",
      "skillIdHex": "0x32",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d7240",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "맹호룬룬권 숙련도 family. 0x004d7240의 WLK 32 시전음과 선행 무릎차기 frame block부터 시작해야 하며, 레벨이 올라갈수록 actor frame 조합과 WLK 호출 수가 늘어난다.",
      "rawFrameCount": 17,
      "expandedFrameCount": 17,
      "rawDurationGate": 48,
      "expandedDurationGate": 48,
      "rawFrameGateSequence": [
        {
          "frame": 44,
          "gate": 2
        },
        {
          "frame": 45,
          "gate": 2
        },
        {
          "frame": 46,
          "gate": 4
        },
        {
          "frame": 47,
          "gate": 2
        },
        {
          "frame": 44,
          "gate": 2
        },
        {
          "frame": 48,
          "gate": 2
        },
        {
          "frame": 49,
          "gate": 4
        },
        {
          "frame": 50,
          "gate": 2
        },
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 4
        },
        {
          "frame": 25,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 4
        },
        {
          "frame": 8,
          "gate": 4
        },
        {
          "frame": 9,
          "gate": 2
        },
        {
          "frame": 10,
          "gate": 2
        },
        {
          "frame": 11,
          "gate": 6
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 44,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 45,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 46,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 47,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 44,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 48,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 49,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 50,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 22,
          "frame": 13,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 26,
          "frame": 25,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 28,
          "frame": 26,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 32,
          "frame": 8,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 36,
          "frame": 9,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 38,
          "frame": 10,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 40,
          "frame": 11,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 46,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 5,
      "waitBarriers": [
        {
          "vaHex": "0x004d7280",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d72b8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d72e8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d7318",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004d7358",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 5,
      "confirmedHitEventCount": 5,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "안면백조권",
      "familyName": "안면백조권",
      "skillIdHex": "0x09",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004db224",
      "startSource": "display-start-override",
      "confidence": "display-start-corrected-skill-family",
      "note": "안면백조권 1단계는 phase table 0x13 -> 0x004db1cc를 그대로 쓰면 꼬챙이 꿰기형 btl_rs #20..#23 script가 나온다. EXE branch family 0x004db224는 skillId 0x09..0x0c를 모두 분기하며 0x09도 3타 claw cluster를 생성하므로 이 family start를 쓴다.",
      "rawFrameCount": 16,
      "expandedFrameCount": 16,
      "rawDurationGate": 44,
      "expandedDurationGate": 44,
      "rawFrameGateSequence": [
        {
          "frame": 6,
          "gate": 2
        },
        {
          "frame": 7,
          "gate": 6
        },
        {
          "frame": 8,
          "gate": 2
        },
        {
          "frame": 9,
          "gate": 2
        },
        {
          "frame": 9,
          "gate": 2
        },
        {
          "frame": 16,
          "gate": 2
        },
        {
          "frame": 17,
          "gate": 6
        },
        {
          "frame": 18,
          "gate": 2
        },
        {
          "frame": 19,
          "gate": 2
        },
        {
          "frame": 19,
          "gate": 2
        },
        {
          "frame": 6,
          "gate": 2
        },
        {
          "frame": 7,
          "gate": 6
        },
        {
          "frame": 8,
          "gate": 2
        },
        {
          "frame": 9,
          "gate": 2
        },
        {
          "frame": 9,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 6,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 7,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 8,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 9,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 9,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 16,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 17,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 22,
          "frame": 18,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 19,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 26,
          "frame": 19,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 28,
          "frame": 6,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 7,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 36,
          "frame": 8,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 38,
          "frame": 9,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 40,
          "frame": 9,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 42,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 3,
      "waitBarriers": [
        {
          "vaHex": "0x004db274",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db2c4",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db32c",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 3,
      "confirmedHitEventCount": 3,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "안면백조권",
      "familyName": "안면백조권",
      "skillIdHex": "0x0a",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004db224",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-family",
      "note": "Rinshan display phase table이 기준이다. phase 0x13은 0x004db1cc, phase 0x14..0x16은 0x004db224를 가리키며, 0x004db2d8은 후반 branch fragment라 앞쪽 1/2타 frame cluster를 떨어뜨린다.",
      "rawFrameCount": 16,
      "expandedFrameCount": 16,
      "rawDurationGate": 44,
      "expandedDurationGate": 44,
      "rawFrameGateSequence": [
        {
          "frame": 6,
          "gate": 2
        },
        {
          "frame": 7,
          "gate": 6
        },
        {
          "frame": 8,
          "gate": 2
        },
        {
          "frame": 9,
          "gate": 2
        },
        {
          "frame": 9,
          "gate": 2
        },
        {
          "frame": 16,
          "gate": 2
        },
        {
          "frame": 17,
          "gate": 6
        },
        {
          "frame": 18,
          "gate": 2
        },
        {
          "frame": 19,
          "gate": 2
        },
        {
          "frame": 19,
          "gate": 2
        },
        {
          "frame": 33,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 6
        },
        {
          "frame": 38,
          "gate": 2
        },
        {
          "frame": 39,
          "gate": 2
        },
        {
          "frame": 39,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 6,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 7,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 8,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 9,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 9,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 16,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 17,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 22,
          "frame": 18,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 19,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 26,
          "frame": 19,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 28,
          "frame": 33,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 34,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 36,
          "frame": 38,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 38,
          "frame": 39,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 40,
          "frame": 39,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 42,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 3,
      "waitBarriers": [
        {
          "vaHex": "0x004db274",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db2c4",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db37c",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 3,
      "confirmedHitEventCount": 3,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "안면백조권",
      "familyName": "안면백조권",
      "skillIdHex": "0x0b",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004db224",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-family",
      "note": "Rinshan display phase table이 기준이다. phase 0x13은 0x004db1cc, phase 0x14..0x16은 0x004db224를 가리키며, 0x004db2d8은 후반 branch fragment라 앞쪽 1/2타 frame cluster를 떨어뜨린다.",
      "rawFrameCount": 20,
      "expandedFrameCount": 20,
      "rawDurationGate": 52,
      "expandedDurationGate": 52,
      "rawFrameGateSequence": [
        {
          "frame": 6,
          "gate": 2
        },
        {
          "frame": 7,
          "gate": 6
        },
        {
          "frame": 8,
          "gate": 2
        },
        {
          "frame": 9,
          "gate": 2
        },
        {
          "frame": 9,
          "gate": 2
        },
        {
          "frame": 16,
          "gate": 2
        },
        {
          "frame": 17,
          "gate": 6
        },
        {
          "frame": 18,
          "gate": 2
        },
        {
          "frame": 19,
          "gate": 2
        },
        {
          "frame": 19,
          "gate": 2
        },
        {
          "frame": 33,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 6
        },
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 36,
          "gate": 2
        },
        {
          "frame": 37,
          "gate": 2
        },
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 2
        },
        {
          "frame": 41,
          "gate": 2
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 6,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 7,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 8,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 9,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 9,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 16,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 17,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 22,
          "frame": 18,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 19,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 26,
          "frame": 19,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 28,
          "frame": 33,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 34,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 36,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 38,
          "frame": 36,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 40,
          "frame": 37,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 42,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 44,
          "frame": 34,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 46,
          "frame": 41,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 48,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 50,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 3,
      "waitBarriers": [
        {
          "vaHex": "0x004db274",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db2c4",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db3d4",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 3,
      "confirmedHitEventCount": 3,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "안면백조권",
      "familyName": "안면백조권",
      "skillIdHex": "0x0c",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004db224",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-family",
      "note": "Rinshan display phase table이 기준이다. phase 0x13은 0x004db1cc, phase 0x14..0x16은 0x004db224를 가리키며, 0x004db2d8은 후반 branch fragment라 앞쪽 1/2타 frame cluster를 떨어뜨린다.",
      "rawFrameCount": 27,
      "expandedFrameCount": 27,
      "rawDurationGate": 70,
      "expandedDurationGate": 70,
      "rawFrameGateSequence": [
        {
          "frame": 6,
          "gate": 2
        },
        {
          "frame": 7,
          "gate": 6
        },
        {
          "frame": 8,
          "gate": 2
        },
        {
          "frame": 9,
          "gate": 2
        },
        {
          "frame": 9,
          "gate": 2
        },
        {
          "frame": 16,
          "gate": 2
        },
        {
          "frame": 17,
          "gate": 6
        },
        {
          "frame": 18,
          "gate": 2
        },
        {
          "frame": 19,
          "gate": 2
        },
        {
          "frame": 19,
          "gate": 2
        },
        {
          "frame": 33,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 6
        },
        {
          "frame": 38,
          "gate": 2
        },
        {
          "frame": 39,
          "gate": 2
        },
        {
          "frame": 39,
          "gate": 2
        },
        {
          "frame": 33,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 6
        },
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 36,
          "gate": 2
        },
        {
          "frame": 37,
          "gate": 2
        },
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 2
        },
        {
          "frame": 42,
          "gate": 2
        },
        {
          "frame": 42,
          "gate": 2
        },
        {
          "frame": 41,
          "gate": 2
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 6,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 7,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 8,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 9,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 9,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 16,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 17,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 22,
          "frame": 18,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 19,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 26,
          "frame": 19,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 28,
          "frame": 33,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 34,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 36,
          "frame": 38,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 38,
          "frame": 39,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 40,
          "frame": 39,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 42,
          "frame": 33,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 44,
          "frame": 34,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 50,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 52,
          "frame": 36,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 54,
          "frame": 37,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 56,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 58,
          "frame": 34,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 60,
          "frame": 42,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 62,
          "frame": 42,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 64,
          "frame": 41,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 66,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 68,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 4,
      "waitBarriers": [
        {
          "vaHex": "0x004db274",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db2c4",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db464",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db4bc",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 4,
      "confirmedHitEventCount": 4,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "선렬각",
      "familyName": "선렬각",
      "skillIdHex": "0x0d",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004db564",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "actor.skillId branch가 0x0d..0x10 숙련도 차이를 가르고 같은 branch block 안에서 정상 종료된다.",
      "rawFrameCount": 8,
      "expandedFrameCount": 8,
      "rawDurationGate": 16,
      "expandedDurationGate": 16,
      "rawFrameGateSequence": [
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 2
        },
        {
          "frame": 10,
          "gate": 2
        },
        {
          "frame": 11,
          "gate": 2
        },
        {
          "frame": 14,
          "gate": 2
        },
        {
          "frame": 15,
          "gate": 2
        },
        {
          "frame": 15,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 13,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 10,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 11,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 14,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 15,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 15,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 3,
      "waitBarriers": [
        {
          "vaHex": "0x004db588",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db5b0",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db6b8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 3,
      "confirmedHitEventCount": 3,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "선렬각",
      "familyName": "선렬각",
      "skillIdHex": "0x0e",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004db564",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "actor.skillId branch가 0x0d..0x10 숙련도 차이를 가르고 같은 branch block 안에서 정상 종료된다.",
      "rawFrameCount": 10,
      "expandedFrameCount": 10,
      "rawDurationGate": 20,
      "expandedDurationGate": 20,
      "rawFrameGateSequence": [
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 2
        },
        {
          "frame": 10,
          "gate": 2
        },
        {
          "frame": 11,
          "gate": 2
        },
        {
          "frame": 14,
          "gate": 2
        },
        {
          "frame": 15,
          "gate": 2
        },
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 13,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 10,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 11,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 14,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 15,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 13,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 13,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 4,
      "waitBarriers": [
        {
          "vaHex": "0x004db588",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db5b0",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db5e8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db6f8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 4,
      "confirmedHitEventCount": 4,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "선렬각",
      "familyName": "선렬각",
      "skillIdHex": "0x0f",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004db564",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "actor.skillId branch가 0x0d..0x10 숙련도 차이를 가르고 같은 branch block 안에서 정상 종료된다.",
      "rawFrameCount": 12,
      "expandedFrameCount": 12,
      "rawDurationGate": 24,
      "expandedDurationGate": 24,
      "rawFrameGateSequence": [
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 2
        },
        {
          "frame": 10,
          "gate": 2
        },
        {
          "frame": 11,
          "gate": 2
        },
        {
          "frame": 14,
          "gate": 2
        },
        {
          "frame": 15,
          "gate": 2
        },
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 2
        },
        {
          "frame": 10,
          "gate": 2
        },
        {
          "frame": 11,
          "gate": 2
        },
        {
          "frame": 11,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 13,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 10,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 11,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 14,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 15,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 13,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 10,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 11,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 11,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 22,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 5,
      "waitBarriers": [
        {
          "vaHex": "0x004db588",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db5b0",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db5e8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db620",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db730",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 5,
      "confirmedHitEventCount": 5,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "선렬각",
      "familyName": "선렬각",
      "skillIdHex": "0x10",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004db564",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "actor.skillId branch가 0x0d..0x10 숙련도 차이를 가르고 같은 branch block 안에서 정상 종료된다.",
      "rawFrameCount": 13,
      "expandedFrameCount": 13,
      "rawDurationGate": 26,
      "expandedDurationGate": 26,
      "rawFrameGateSequence": [
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 2
        },
        {
          "frame": 10,
          "gate": 2
        },
        {
          "frame": 11,
          "gate": 2
        },
        {
          "frame": 14,
          "gate": 2
        },
        {
          "frame": 15,
          "gate": 2
        },
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 2
        },
        {
          "frame": 10,
          "gate": 2
        },
        {
          "frame": 11,
          "gate": 2
        },
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 13,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 10,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 11,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 14,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 15,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 13,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 10,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 11,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 22,
          "frame": 13,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 6,
      "waitBarriers": [
        {
          "vaHex": "0x004db588",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db5b0",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db5e8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db620",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db650",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db680",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 6,
      "confirmedHitEventCount": 6,
      "helperIds": [
        110
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 110,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004bad1c",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004bad54",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 173,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 174,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 175,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "열화폭염권",
      "familyName": "열화폭염권",
      "skillIdHex": "0x11",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004db784",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "레벨이 올라갈수록 frame 23 반복 횟수가 늘어나는 정적 branch family로 정상 종료된다.",
      "rawFrameCount": 4,
      "expandedFrameCount": 4,
      "rawDurationGate": 12,
      "expandedDurationGate": 12,
      "rawFrameGateSequence": [
        {
          "frame": 22,
          "gate": 2
        },
        {
          "frame": 23,
          "gate": 2
        },
        {
          "frame": 23,
          "gate": 6
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 22,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 23,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 23,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004db808",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        55
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 55,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b6634",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "열화폭염권",
      "familyName": "열화폭염권",
      "skillIdHex": "0x12",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004db784",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "레벨이 올라갈수록 frame 23 반복 횟수가 늘어나는 정적 branch family로 정상 종료된다.",
      "rawFrameCount": 5,
      "expandedFrameCount": 5,
      "rawDurationGate": 18,
      "expandedDurationGate": 18,
      "rawFrameGateSequence": [
        {
          "frame": 22,
          "gate": 2
        },
        {
          "frame": 23,
          "gate": 2
        },
        {
          "frame": 23,
          "gate": 6
        },
        {
          "frame": 23,
          "gate": 6
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 22,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 23,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 23,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 23,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004db808",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        55,
        56
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 4,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 56,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b66f8",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 55,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b6634",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "열화폭염권",
      "familyName": "열화폭염권",
      "skillIdHex": "0x13",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004db784",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "레벨이 올라갈수록 frame 23 반복 횟수가 늘어나는 정적 branch family로 정상 종료된다.",
      "rawFrameCount": 6,
      "expandedFrameCount": 6,
      "rawDurationGate": 24,
      "expandedDurationGate": 24,
      "rawFrameGateSequence": [
        {
          "frame": 22,
          "gate": 2
        },
        {
          "frame": 23,
          "gate": 2
        },
        {
          "frame": 23,
          "gate": 6
        },
        {
          "frame": 23,
          "gate": 6
        },
        {
          "frame": 23,
          "gate": 6
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 22,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 23,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 23,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 23,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 23,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 22,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004db808",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        55,
        56
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 6,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 56,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b66f8",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 56,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b66f8",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 55,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b6634",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "열화폭염권",
      "familyName": "열화폭염권",
      "skillIdHex": "0x14",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004db784",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "레벨이 올라갈수록 frame 23 반복 횟수가 늘어나는 정적 branch family로 정상 종료된다.",
      "rawFrameCount": 8,
      "expandedFrameCount": 8,
      "rawDurationGate": 32,
      "expandedDurationGate": 32,
      "rawFrameGateSequence": [
        {
          "frame": 22,
          "gate": 2
        },
        {
          "frame": 23,
          "gate": 2
        },
        {
          "frame": 23,
          "gate": 6
        },
        {
          "frame": 23,
          "gate": 6
        },
        {
          "frame": 23,
          "gate": 6
        },
        {
          "frame": 23,
          "gate": 2
        },
        {
          "frame": 23,
          "gate": 6
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 22,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 23,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 23,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 23,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 23,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 22,
          "frame": 23,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 23,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004db808",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        55,
        56
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 10,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 56,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b66f8",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 56,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b66f8",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 56,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b66f8",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 56,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b66f8",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 55,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b6634",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "암각·영상승룡파",
      "familyName": "암각·영상승룡파",
      "skillIdHex": "0x15",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004db828",
      "startSource": "entry-spec-family-start",
      "confidence": "static-repeat-loop-family",
      "note": "암각·영상승룡파 숙련도 family. 0x06 repeat-loop control이 포함되며 정상 종료된다.",
      "rawFrameCount": 5,
      "expandedFrameCount": 7,
      "rawDurationGate": 23,
      "expandedDurationGate": 25,
      "rawFrameGateSequence": [
        {
          "frame": 33,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 16
        },
        {
          "frame": 38,
          "gate": 2
        },
        {
          "frame": 39,
          "gate": 1
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 33,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 34,
          "gate": 16,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 38,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 39,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 21,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x004db8c4"
        },
        {
          "tick": 22,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x004db8c4"
        },
        {
          "tick": 23,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 1,
      "repeatLoops": [
        {
          "vaHex": "0x004db8c4",
          "targetVaHex": "0x004db8a4",
          "repeatCount": 3,
          "summary": "repeat-loop count=3, target=0x004db8a4; handler stores target in object +0x3c and counter in +0x60"
        }
      ],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004db8c0",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 3,
      "confirmedHitEventCount": 3,
      "helperIds": [
        95
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 95,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b9644",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "fixed-gate-repeat-expanded"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "암각·영상승룡파",
      "familyName": "암각·영상승룡파",
      "skillIdHex": "0x16",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004db828",
      "startSource": "entry-spec-family-start",
      "confidence": "static-repeat-loop-family",
      "note": "암각·영상승룡파 숙련도 family. 0x06 repeat-loop control이 포함되며 정상 종료된다.",
      "rawFrameCount": 6,
      "expandedFrameCount": 8,
      "rawDurationGate": 24,
      "expandedDurationGate": 26,
      "rawFrameGateSequence": [
        {
          "frame": 33,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 16
        },
        {
          "frame": 38,
          "gate": 2
        },
        {
          "frame": 39,
          "gate": 1
        },
        {
          "frame": 39,
          "gate": 1
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 33,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 34,
          "gate": 16,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 38,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 39,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 21,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x004db8c4"
        },
        {
          "tick": 22,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x004db8c4"
        },
        {
          "tick": 23,
          "frame": 39,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 1,
      "repeatLoops": [
        {
          "vaHex": "0x004db8c4",
          "targetVaHex": "0x004db8a4",
          "repeatCount": 3,
          "summary": "repeat-loop count=3, target=0x004db8a4; handler stores target in object +0x3c and counter in +0x60"
        }
      ],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x004db8c0",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db8f0",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 4,
      "confirmedHitEventCount": 4,
      "helperIds": [
        96
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 96,
          "syncSignals": [
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b96e4",
          "frameScriptCount": 0,
          "actorFlagCount": 0,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "fixed-gate-repeat-expanded"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "암각·영상승룡파",
      "familyName": "암각·영상승룡파",
      "skillIdHex": "0x17",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004db828",
      "startSource": "entry-spec-family-start",
      "confidence": "static-repeat-loop-family",
      "note": "암각·영상승룡파 숙련도 family. 0x06 repeat-loop control이 포함되며 정상 종료된다.",
      "rawFrameCount": 7,
      "expandedFrameCount": 9,
      "rawDurationGate": 25,
      "expandedDurationGate": 27,
      "rawFrameGateSequence": [
        {
          "frame": 33,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 16
        },
        {
          "frame": 38,
          "gate": 2
        },
        {
          "frame": 39,
          "gate": 1
        },
        {
          "frame": 39,
          "gate": 1
        },
        {
          "frame": 39,
          "gate": 1
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 33,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 34,
          "gate": 16,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 38,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 39,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 21,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x004db8c4"
        },
        {
          "tick": 22,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x004db8c4"
        },
        {
          "tick": 23,
          "frame": 39,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 39,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 25,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 1,
      "repeatLoops": [
        {
          "vaHex": "0x004db8c4",
          "targetVaHex": "0x004db8a4",
          "repeatCount": 3,
          "summary": "repeat-loop count=3, target=0x004db8a4; handler stores target in object +0x3c and counter in +0x60"
        }
      ],
      "waitBarrierCount": 3,
      "waitBarriers": [
        {
          "vaHex": "0x004db8c0",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db8f0",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db918",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 5,
      "confirmedHitEventCount": 5,
      "helperIds": [
        97
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 97,
          "syncSignals": [
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b99a8",
          "frameScriptCount": 0,
          "actorFlagCount": 0,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "fixed-gate-repeat-expanded"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "암각·영상승룡파",
      "familyName": "암각·영상승룡파",
      "skillIdHex": "0x18",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004db828",
      "startSource": "entry-spec-family-start",
      "confidence": "static-repeat-loop-family",
      "note": "암각·영상승룡파 숙련도 family. 0x06 repeat-loop control이 포함되며 정상 종료된다.",
      "rawFrameCount": 8,
      "expandedFrameCount": 14,
      "rawDurationGate": 26,
      "expandedDurationGate": 32,
      "rawFrameGateSequence": [
        {
          "frame": 33,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 16
        },
        {
          "frame": 38,
          "gate": 2
        },
        {
          "frame": 39,
          "gate": 1
        },
        {
          "frame": 39,
          "gate": 1
        },
        {
          "frame": 39,
          "gate": 1
        },
        {
          "frame": 39,
          "gate": 1
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 33,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 34,
          "gate": 16,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 38,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 39,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 21,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x004db8c4"
        },
        {
          "tick": 22,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x004db8c4"
        },
        {
          "tick": 23,
          "frame": 39,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 39,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 25,
          "frame": 39,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 26,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x004db944"
        },
        {
          "tick": 27,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x004db944"
        },
        {
          "tick": 28,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 3,
          "repeatSourceVaHex": "0x004db944"
        },
        {
          "tick": 29,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 4,
          "repeatSourceVaHex": "0x004db944"
        },
        {
          "tick": 30,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 2,
      "repeatLoops": [
        {
          "vaHex": "0x004db8c4",
          "targetVaHex": "0x004db8a4",
          "repeatCount": 3,
          "summary": "repeat-loop count=3, target=0x004db8a4; handler stores target in object +0x3c and counter in +0x60"
        },
        {
          "vaHex": "0x004db944",
          "targetVaHex": "0x004db924",
          "repeatCount": 5,
          "summary": "repeat-loop count=5, target=0x004db924; handler stores target in object +0x3c and counter in +0x60"
        }
      ],
      "waitBarrierCount": 4,
      "waitBarriers": [
        {
          "vaHex": "0x004db8c0",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db8f0",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db918",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db940",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 10,
      "confirmedHitEventCount": 10,
      "helperIds": [
        98
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 98,
          "syncSignals": [
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b9c6c",
          "frameScriptCount": 0,
          "actorFlagCount": 0,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "fixed-gate-repeat-expanded"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "고양이달래기",
      "familyName": "고양이달래기",
      "skillIdHex": "0x1c",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004dbad0",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "고양이달래기 숙련도 family. frame 24/25 및 WLK id 35 호출 후 정상 종료된다.",
      "rawFrameCount": 3,
      "expandedFrameCount": 3,
      "rawDurationGate": 6,
      "expandedDurationGate": 6,
      "rawFrameGateSequence": [
        {
          "frame": 24,
          "gate": 2
        },
        {
          "frame": 25,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 24,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 25,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004dbb30",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "고양이달래기",
      "familyName": "고양이달래기",
      "skillIdHex": "0x1d",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004dbad0",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "고양이달래기 숙련도 family. frame 24/25 및 WLK id 35 호출 후 정상 종료된다.",
      "rawFrameCount": 3,
      "expandedFrameCount": 3,
      "rawDurationGate": 6,
      "expandedDurationGate": 6,
      "rawFrameGateSequence": [
        {
          "frame": 24,
          "gate": 2
        },
        {
          "frame": 25,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 24,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 25,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x004dbb18",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004dbb30",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        102
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 102,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield"
          ],
          "childScriptVaHex": "0x004ba49c",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "고양이달래기",
      "familyName": "고양이달래기",
      "skillIdHex": "0x1e",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004dbad0",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "고양이달래기 숙련도 family. frame 24/25 및 WLK id 35 호출 후 정상 종료된다.",
      "rawFrameCount": 3,
      "expandedFrameCount": 3,
      "rawDurationGate": 6,
      "expandedDurationGate": 6,
      "rawFrameGateSequence": [
        {
          "frame": 24,
          "gate": 2
        },
        {
          "frame": 25,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 24,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 25,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x004dbb18",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004dbb30",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        103
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 103,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield"
          ],
          "childScriptVaHex": "0x004ba4b4",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "고양이달래기",
      "familyName": "고양이달래기",
      "skillIdHex": "0x1f",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004dbad0",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "고양이달래기 숙련도 family. frame 24/25 및 WLK id 35 호출 후 정상 종료된다.",
      "rawFrameCount": 3,
      "expandedFrameCount": 3,
      "rawDurationGate": 6,
      "expandedDurationGate": 6,
      "rawFrameGateSequence": [
        {
          "frame": 24,
          "gate": 2
        },
        {
          "frame": 25,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 24,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 25,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x004dbb18",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004dbb30",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        104
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 104,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield"
          ],
          "childScriptVaHex": "0x004ba4cc",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "유미쌍조",
      "familyName": "유미쌍조",
      "skillIdHex": "0x20",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004dbb54",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "actor.skillId branch가 frame 반복 수를 가르고 idle/end marker에서 정상 종료된다.",
      "rawFrameCount": 8,
      "expandedFrameCount": 8,
      "rawDurationGate": 20,
      "expandedDurationGate": 20,
      "rawFrameGateSequence": [
        {
          "frame": 33,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 6
        },
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 36,
          "gate": 2
        },
        {
          "frame": 37,
          "gate": 2
        },
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 33,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 34,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 36,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 37,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 34,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004dbba8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "유미쌍조",
      "familyName": "유미쌍조",
      "skillIdHex": "0x21",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004dbb54",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "actor.skillId branch가 frame 반복 수를 가르고 idle/end marker에서 정상 종료된다.",
      "rawFrameCount": 12,
      "expandedFrameCount": 12,
      "rawDurationGate": 28,
      "expandedDurationGate": 28,
      "rawFrameGateSequence": [
        {
          "frame": 33,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 6
        },
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 36,
          "gate": 2
        },
        {
          "frame": 37,
          "gate": 2
        },
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 2
        },
        {
          "frame": 42,
          "gate": 2
        },
        {
          "frame": 42,
          "gate": 2
        },
        {
          "frame": 41,
          "gate": 2
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 33,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 34,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 36,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 37,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 34,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 42,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 42,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 22,
          "frame": 41,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 26,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004dbc20",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "유미쌍조",
      "familyName": "유미쌍조",
      "skillIdHex": "0x22",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004dbb54",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "actor.skillId branch가 frame 반복 수를 가르고 idle/end marker에서 정상 종료된다.",
      "rawFrameCount": 15,
      "expandedFrameCount": 15,
      "rawDurationGate": 34,
      "expandedDurationGate": 34,
      "rawFrameGateSequence": [
        {
          "frame": 33,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 6
        },
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 36,
          "gate": 2
        },
        {
          "frame": 37,
          "gate": 2
        },
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 36,
          "gate": 2
        },
        {
          "frame": 37,
          "gate": 2
        },
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 2
        },
        {
          "frame": 42,
          "gate": 2
        },
        {
          "frame": 42,
          "gate": 2
        },
        {
          "frame": 41,
          "gate": 2
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 33,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 34,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 36,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 37,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 36,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 37,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 22,
          "frame": 34,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 42,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 26,
          "frame": 42,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 28,
          "frame": 41,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 32,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004dbc20",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "유미쌍조",
      "familyName": "유미쌍조",
      "skillIdHex": "0x23",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004dbb54",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "actor.skillId branch가 frame 반복 수를 가르고 idle/end marker에서 정상 종료된다.",
      "rawFrameCount": 18,
      "expandedFrameCount": 18,
      "rawDurationGate": 40,
      "expandedDurationGate": 40,
      "rawFrameGateSequence": [
        {
          "frame": 33,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 6
        },
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 36,
          "gate": 2
        },
        {
          "frame": 37,
          "gate": 2
        },
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 36,
          "gate": 2
        },
        {
          "frame": 37,
          "gate": 2
        },
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 36,
          "gate": 2
        },
        {
          "frame": 37,
          "gate": 2
        },
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 2
        },
        {
          "frame": 42,
          "gate": 2
        },
        {
          "frame": 42,
          "gate": 2
        },
        {
          "frame": 41,
          "gate": 2
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 33,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 34,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 36,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 37,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 36,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 37,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 22,
          "frame": 36,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 37,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 26,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 28,
          "frame": 34,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 42,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 32,
          "frame": 42,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 34,
          "frame": 41,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 36,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 38,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004dbd38",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "대폭진",
      "familyName": "대폭진",
      "skillIdHex": "0x24",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004dbde4",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "대폭진 branch family. frame/write 및 WLK id 29 호출이 보이고 idle/end marker에서 정상 종료된다.",
      "rawFrameCount": 6,
      "expandedFrameCount": 6,
      "rawDurationGate": 20,
      "expandedDurationGate": 20,
      "rawFrameGateSequence": [
        {
          "frame": 31,
          "gate": 1
        },
        {
          "frame": 31,
          "gate": 1
        },
        {
          "frame": 32,
          "gate": 4
        },
        {
          "frame": 32,
          "gate": 4
        },
        {
          "frame": 32,
          "gate": 8
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 31,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 1,
          "frame": 31,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 32,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 32,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 32,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004dbe84",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        58
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 58,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield"
          ],
          "childScriptVaHex": "0x004b3c84",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "대폭진",
      "familyName": "대폭진",
      "skillIdHex": "0x25",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004dbde4",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "대폭진 branch family. frame/write 및 WLK id 29 호출이 보이고 idle/end marker에서 정상 종료된다.",
      "rawFrameCount": 6,
      "expandedFrameCount": 6,
      "rawDurationGate": 28,
      "expandedDurationGate": 28,
      "rawFrameGateSequence": [
        {
          "frame": 31,
          "gate": 1
        },
        {
          "frame": 31,
          "gate": 1
        },
        {
          "frame": 32,
          "gate": 4
        },
        {
          "frame": 32,
          "gate": 4
        },
        {
          "frame": 32,
          "gate": 16
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 31,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 1,
          "frame": 31,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 32,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 32,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 32,
          "gate": 16,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 26,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004dbeb8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        40,
        41,
        59
      ],
      "helperFrameScriptCount": 2,
      "helperWaitCount": 3,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 40,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b5e18",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b5e58",
              "durationGate": 8,
              "frameGateSequence": [
                {
                  "frame": 68,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 69,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 70,
                  "gate": 2,
                  "tick": 4
                },
                {
                  "frame": 71,
                  "gate": 2,
                  "tick": 6
                }
              ],
              "loopEvents": []
            }
          ]
        },
        {
          "helperId": 41,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b5e8c",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b5ecc",
              "durationGate": 8,
              "frameGateSequence": [
                {
                  "frame": 72,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 73,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 74,
                  "gate": 2,
                  "tick": 4
                },
                {
                  "frame": 75,
                  "gate": 2,
                  "tick": 6
                }
              ],
              "loopEvents": []
            }
          ]
        },
        {
          "helperId": 59,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield"
          ],
          "childScriptVaHex": "0x004b3c9c",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "대폭진",
      "familyName": "대폭진",
      "skillIdHex": "0x26",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004dbde4",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "대폭진 branch family. frame/write 및 WLK id 29 호출이 보이고 idle/end marker에서 정상 종료된다.",
      "rawFrameCount": 6,
      "expandedFrameCount": 6,
      "rawDurationGate": 36,
      "expandedDurationGate": 36,
      "rawFrameGateSequence": [
        {
          "frame": 31,
          "gate": 1
        },
        {
          "frame": 31,
          "gate": 1
        },
        {
          "frame": 32,
          "gate": 4
        },
        {
          "frame": 32,
          "gate": 4
        },
        {
          "frame": 32,
          "gate": 24
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 31,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 1,
          "frame": 31,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 32,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 32,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 32,
          "gate": 24,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 34,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004dbeec",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        37,
        40,
        41,
        60
      ],
      "helperFrameScriptCount": 2,
      "helperWaitCount": 4,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 40,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b5e18",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b5e58",
              "durationGate": 8,
              "frameGateSequence": [
                {
                  "frame": 68,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 69,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 70,
                  "gate": 2,
                  "tick": 4
                },
                {
                  "frame": 71,
                  "gate": 2,
                  "tick": 6
                }
              ],
              "loopEvents": []
            }
          ]
        },
        {
          "helperId": 41,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b5e8c",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b5ecc",
              "durationGate": 8,
              "frameGateSequence": [
                {
                  "frame": 72,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 73,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 74,
                  "gate": 2,
                  "tick": 4
                },
                {
                  "frame": 75,
                  "gate": 2,
                  "tick": 6
                }
              ],
              "loopEvents": []
            }
          ]
        },
        {
          "helperId": 37,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b56fc",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 60,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield"
          ],
          "childScriptVaHex": "0x004b3cb4",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "대폭진",
      "familyName": "대폭진",
      "skillIdHex": "0x27",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004dbde4",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "대폭진 branch family. frame/write 및 WLK id 29 호출이 보이고 idle/end marker에서 정상 종료된다.",
      "rawFrameCount": 7,
      "expandedFrameCount": 7,
      "rawDurationGate": 48,
      "expandedDurationGate": 48,
      "rawFrameGateSequence": [
        {
          "frame": 31,
          "gate": 1
        },
        {
          "frame": 31,
          "gate": 4
        },
        {
          "frame": 31,
          "gate": 1
        },
        {
          "frame": 32,
          "gate": 4
        },
        {
          "frame": 32,
          "gate": 4
        },
        {
          "frame": 32,
          "gate": 32
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 31,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 1,
          "frame": 31,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 5,
          "frame": 31,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 32,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 32,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 32,
          "gate": 32,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 46,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004dbf20",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        11,
        38,
        57
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 57,
          "syncSignals": [],
          "childScriptVaHex": "0x004b67ec",
          "frameScriptCount": 0,
          "actorFlagCount": 0,
          "waitCount": 0,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 38,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b571c",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 11,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield"
          ],
          "childScriptVaHex": "0x004b3c6c",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "암각·영상뢰화",
      "familyName": "암각·영상뢰화",
      "skillIdHex": "0x28",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004dbf64",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "0x28..0x2b 레벨별 branch family. 0x004dbf64의 WLK 18 선행 시전음/프레임부터 시작해야 하며, 신기 레벨에서 여러 기본 동작 frame을 조합한 뒤 후반 공통 sequence로 이어진다.",
      "rawFrameCount": 14,
      "expandedFrameCount": 14,
      "rawDurationGate": 48,
      "expandedDurationGate": 48,
      "rawFrameGateSequence": [
        {
          "frame": 8,
          "gate": 2
        },
        {
          "frame": 9,
          "gate": 8
        },
        {
          "frame": 16,
          "gate": 2
        },
        {
          "frame": 17,
          "gate": 6
        },
        {
          "frame": 18,
          "gate": 2
        },
        {
          "frame": 19,
          "gate": 8
        },
        {
          "frame": 33,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 6
        },
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 36,
          "gate": 2
        },
        {
          "frame": 37,
          "gate": 2
        },
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 8,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 9,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 16,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 17,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 18,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 19,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 28,
          "frame": 33,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 34,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 36,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 38,
          "frame": 36,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 40,
          "frame": 37,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 42,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 44,
          "frame": 34,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 46,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004dc194",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        73
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 73,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b7a88",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "암각·영상뢰화",
      "familyName": "암각·영상뢰화",
      "skillIdHex": "0x29",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004dbf64",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "0x28..0x2b 레벨별 branch family. 0x004dbf64의 WLK 18 선행 시전음/프레임부터 시작해야 하며, 신기 레벨에서 여러 기본 동작 frame을 조합한 뒤 후반 공통 sequence로 이어진다.",
      "rawFrameCount": 26,
      "expandedFrameCount": 26,
      "rawDurationGate": 92,
      "expandedDurationGate": 92,
      "rawFrameGateSequence": [
        {
          "frame": 8,
          "gate": 2
        },
        {
          "frame": 9,
          "gate": 8
        },
        {
          "frame": 16,
          "gate": 2
        },
        {
          "frame": 17,
          "gate": 6
        },
        {
          "frame": 18,
          "gate": 2
        },
        {
          "frame": 19,
          "gate": 8
        },
        {
          "frame": 6,
          "gate": 2
        },
        {
          "frame": 7,
          "gate": 6
        },
        {
          "frame": 8,
          "gate": 2
        },
        {
          "frame": 9,
          "gate": 8
        },
        {
          "frame": 16,
          "gate": 2
        },
        {
          "frame": 17,
          "gate": 6
        },
        {
          "frame": 18,
          "gate": 2
        },
        {
          "frame": 19,
          "gate": 8
        },
        {
          "frame": 33,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 6
        },
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 36,
          "gate": 2
        },
        {
          "frame": 37,
          "gate": 2
        },
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 2
        },
        {
          "frame": 42,
          "gate": 2
        },
        {
          "frame": 42,
          "gate": 2
        },
        {
          "frame": 41,
          "gate": 2
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 8,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 9,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 16,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 17,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 18,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 19,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 28,
          "frame": 6,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 7,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 36,
          "frame": 8,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 38,
          "frame": 9,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 46,
          "frame": 16,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 48,
          "frame": 17,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 54,
          "frame": 18,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 56,
          "frame": 19,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 64,
          "frame": 33,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 66,
          "frame": 34,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 72,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 74,
          "frame": 36,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 76,
          "frame": 37,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 78,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 80,
          "frame": 34,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 82,
          "frame": 42,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 84,
          "frame": 42,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 86,
          "frame": 41,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 88,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 90,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004dc220",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        74
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 74,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b7b7c",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "암각·영상뢰화",
      "familyName": "암각·영상뢰화",
      "skillIdHex": "0x2a",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004dbf64",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "0x28..0x2b 레벨별 branch family. 0x004dbf64의 WLK 18 선행 시전음/프레임부터 시작해야 하며, 신기 레벨에서 여러 기본 동작 frame을 조합한 뒤 후반 공통 sequence로 이어진다.",
      "rawFrameCount": 30,
      "expandedFrameCount": 30,
      "rawDurationGate": 112,
      "expandedDurationGate": 112,
      "rawFrameGateSequence": [
        {
          "frame": 8,
          "gate": 2
        },
        {
          "frame": 9,
          "gate": 8
        },
        {
          "frame": 16,
          "gate": 2
        },
        {
          "frame": 17,
          "gate": 6
        },
        {
          "frame": 18,
          "gate": 2
        },
        {
          "frame": 19,
          "gate": 8
        },
        {
          "frame": 6,
          "gate": 2
        },
        {
          "frame": 7,
          "gate": 6
        },
        {
          "frame": 8,
          "gate": 2
        },
        {
          "frame": 9,
          "gate": 8
        },
        {
          "frame": 16,
          "gate": 2
        },
        {
          "frame": 17,
          "gate": 6
        },
        {
          "frame": 18,
          "gate": 2
        },
        {
          "frame": 19,
          "gate": 8
        },
        {
          "frame": 10,
          "gate": 2
        },
        {
          "frame": 11,
          "gate": 8
        },
        {
          "frame": 14,
          "gate": 2
        },
        {
          "frame": 15,
          "gate": 8
        },
        {
          "frame": 33,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 6
        },
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 36,
          "gate": 2
        },
        {
          "frame": 37,
          "gate": 2
        },
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 2
        },
        {
          "frame": 42,
          "gate": 2
        },
        {
          "frame": 42,
          "gate": 2
        },
        {
          "frame": 41,
          "gate": 2
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 8,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 9,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 16,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 17,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 18,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 19,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 28,
          "frame": 6,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 7,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 36,
          "frame": 8,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 38,
          "frame": 9,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 46,
          "frame": 16,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 48,
          "frame": 17,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 54,
          "frame": 18,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 56,
          "frame": 19,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 64,
          "frame": 10,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 66,
          "frame": 11,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 74,
          "frame": 14,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 76,
          "frame": 15,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 84,
          "frame": 33,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 86,
          "frame": 34,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 92,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 94,
          "frame": 36,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 96,
          "frame": 37,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 98,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 100,
          "frame": 34,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 102,
          "frame": 42,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 104,
          "frame": 42,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 106,
          "frame": 41,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 108,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 110,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004dc220",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        74
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 74,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b7b7c",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "암각·영상뢰화",
      "familyName": "암각·영상뢰화",
      "skillIdHex": "0x2b",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004dbf64",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "0x28..0x2b 레벨별 branch family. 0x004dbf64의 WLK 18 선행 시전음/프레임부터 시작해야 하며, 신기 레벨에서 여러 기본 동작 frame을 조합한 뒤 후반 공통 sequence로 이어진다.",
      "rawFrameCount": 32,
      "expandedFrameCount": 32,
      "rawDurationGate": 122,
      "expandedDurationGate": 122,
      "rawFrameGateSequence": [
        {
          "frame": 8,
          "gate": 2
        },
        {
          "frame": 9,
          "gate": 8
        },
        {
          "frame": 16,
          "gate": 2
        },
        {
          "frame": 17,
          "gate": 6
        },
        {
          "frame": 18,
          "gate": 2
        },
        {
          "frame": 19,
          "gate": 8
        },
        {
          "frame": 6,
          "gate": 2
        },
        {
          "frame": 7,
          "gate": 6
        },
        {
          "frame": 8,
          "gate": 2
        },
        {
          "frame": 9,
          "gate": 8
        },
        {
          "frame": 16,
          "gate": 2
        },
        {
          "frame": 17,
          "gate": 6
        },
        {
          "frame": 18,
          "gate": 2
        },
        {
          "frame": 19,
          "gate": 8
        },
        {
          "frame": 10,
          "gate": 2
        },
        {
          "frame": 11,
          "gate": 8
        },
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 8
        },
        {
          "frame": 14,
          "gate": 2
        },
        {
          "frame": 15,
          "gate": 8
        },
        {
          "frame": 33,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 6
        },
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 36,
          "gate": 2
        },
        {
          "frame": 37,
          "gate": 2
        },
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 2
        },
        {
          "frame": 42,
          "gate": 2
        },
        {
          "frame": 42,
          "gate": 2
        },
        {
          "frame": 41,
          "gate": 2
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 8,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 9,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 16,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 17,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 18,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 19,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 28,
          "frame": 6,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 7,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 36,
          "frame": 8,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 38,
          "frame": 9,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 46,
          "frame": 16,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 48,
          "frame": 17,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 54,
          "frame": 18,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 56,
          "frame": 19,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 64,
          "frame": 10,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 66,
          "frame": 11,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 74,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 76,
          "frame": 13,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 84,
          "frame": 14,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 86,
          "frame": 15,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 94,
          "frame": 33,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 96,
          "frame": 34,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 102,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 104,
          "frame": 36,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 106,
          "frame": 37,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 108,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 110,
          "frame": 34,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 112,
          "frame": 42,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 114,
          "frame": 42,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 116,
          "frame": 41,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 118,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 120,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004dc0d0",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        75
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 75,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b7c70",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "기공회복",
      "familyName": "회복/방어 특수기",
      "skillIdHex": "0x31",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004dc41c",
      "startSource": "entry-spec-family-start",
      "confidence": "static-shared-special-family",
      "note": "기공회복/기공독치료/기공대회복/수경이 공유하는 특수기 표시 block. 정상 종료되지만 세부 효과 처리는 별도 payload 쪽에 있다.",
      "rawFrameCount": 5,
      "expandedFrameCount": 5,
      "rawDurationGate": 19,
      "expandedDurationGate": 19,
      "rawFrameGateSequence": [
        {
          "frame": 29,
          "gate": 2
        },
        {
          "frame": 30,
          "gate": 6
        },
        {
          "frame": 31,
          "gate": 2
        },
        {
          "frame": 32,
          "gate": 8
        },
        {
          "frame": 3,
          "gate": 1
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 29,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 30,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 31,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 32,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 3,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004dc48c",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=1, mask=0x00000002",
          "bytes": "c1 01 00 00 02 00 00 00"
        }
      ],
      "directFrameSelectorCount": 1,
      "resultHitEventCount": 0,
      "confirmedHitEventCount": 0,
      "helperIds": [
        32
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 32,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b534c",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "기공독치료",
      "familyName": "회복/방어 특수기",
      "skillIdHex": "0x32",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004dc41c",
      "startSource": "entry-spec-family-start",
      "confidence": "static-shared-special-family",
      "note": "기공회복/기공독치료/기공대회복/수경이 공유하는 특수기 표시 block. 정상 종료되지만 세부 효과 처리는 별도 payload 쪽에 있다.",
      "rawFrameCount": 5,
      "expandedFrameCount": 5,
      "rawDurationGate": 19,
      "expandedDurationGate": 19,
      "rawFrameGateSequence": [
        {
          "frame": 29,
          "gate": 2
        },
        {
          "frame": 30,
          "gate": 6
        },
        {
          "frame": 31,
          "gate": 2
        },
        {
          "frame": 32,
          "gate": 8
        },
        {
          "frame": 3,
          "gate": 1
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 29,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 30,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 31,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 32,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 3,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004dc48c",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=1, mask=0x00000002",
          "bytes": "c1 01 00 00 02 00 00 00"
        }
      ],
      "directFrameSelectorCount": 1,
      "resultHitEventCount": 0,
      "confirmedHitEventCount": 0,
      "helperIds": [
        33
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 33,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b5364",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "기공대회복",
      "familyName": "회복/방어 특수기",
      "skillIdHex": "0x33",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004dc41c",
      "startSource": "entry-spec-family-start",
      "confidence": "static-shared-special-family",
      "note": "기공회복/기공독치료/기공대회복/수경이 공유하는 특수기 표시 block. 정상 종료되지만 세부 효과 처리는 별도 payload 쪽에 있다.",
      "rawFrameCount": 5,
      "expandedFrameCount": 5,
      "rawDurationGate": 19,
      "expandedDurationGate": 19,
      "rawFrameGateSequence": [
        {
          "frame": 29,
          "gate": 2
        },
        {
          "frame": 30,
          "gate": 6
        },
        {
          "frame": 31,
          "gate": 2
        },
        {
          "frame": 32,
          "gate": 8
        },
        {
          "frame": 3,
          "gate": 1
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 29,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 30,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 31,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 32,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 3,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004dc48c",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=1, mask=0x00000002",
          "bytes": "c1 01 00 00 02 00 00 00"
        }
      ],
      "directFrameSelectorCount": 1,
      "resultHitEventCount": 0,
      "confirmedHitEventCount": 0,
      "helperIds": [
        34
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 34,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b537c",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "수경",
      "familyName": "회복/방어 특수기",
      "skillIdHex": "0x34",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004dc41c",
      "startSource": "entry-spec-family-start",
      "confidence": "static-shared-special-family",
      "note": "기공회복/기공독치료/기공대회복/수경이 공유하는 특수기 표시 block. 정상 종료되지만 세부 효과 처리는 별도 payload 쪽에 있다.",
      "rawFrameCount": 5,
      "expandedFrameCount": 5,
      "rawDurationGate": 19,
      "expandedDurationGate": 19,
      "rawFrameGateSequence": [
        {
          "frame": 29,
          "gate": 2
        },
        {
          "frame": 30,
          "gate": 6
        },
        {
          "frame": 31,
          "gate": 2
        },
        {
          "frame": 32,
          "gate": 8
        },
        {
          "frame": 3,
          "gate": 1
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 29,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 30,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 31,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 32,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 3,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004dc48c",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=1, mask=0x00000002",
          "bytes": "c1 01 00 00 02 00 00 00"
        }
      ],
      "directFrameSelectorCount": 1,
      "resultHitEventCount": 0,
      "confirmedHitEventCount": 0,
      "helperIds": [
        32
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 32,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b534c",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "대타격",
      "familyName": "대타격",
      "skillIdHex": "0x05",
      "levelOrFixed": null,
      "entryStartVaHex": "0x00524874",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "대타격 숙련도 family. branch 이후 동일 frame family로 정상 종료된다.",
      "rawFrameCount": 6,
      "expandedFrameCount": 6,
      "rawDurationGate": 18,
      "expandedDurationGate": 18,
      "rawFrameGateSequence": [
        {
          "frame": 19,
          "gate": 2
        },
        {
          "frame": 20,
          "gate": 4
        },
        {
          "frame": 21,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 6
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 19,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 20,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 21,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 22,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 22,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x005249a8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        15
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 15,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3e48",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3e94",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 6,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 7,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 8,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "대타격",
      "familyName": "대타격",
      "skillIdHex": "0x06",
      "levelOrFixed": null,
      "entryStartVaHex": "0x00524874",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "대타격 숙련도 family. branch 이후 동일 frame family로 정상 종료된다.",
      "rawFrameCount": 6,
      "expandedFrameCount": 6,
      "rawDurationGate": 18,
      "expandedDurationGate": 18,
      "rawFrameGateSequence": [
        {
          "frame": 19,
          "gate": 2
        },
        {
          "frame": 20,
          "gate": 4
        },
        {
          "frame": 21,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 6
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 19,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 20,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 21,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 22,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 22,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x005249a8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        15
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 15,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3e48",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3e94",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 6,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 7,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 8,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "대타격",
      "familyName": "대타격",
      "skillIdHex": "0x07",
      "levelOrFixed": null,
      "entryStartVaHex": "0x00524874",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "대타격 숙련도 family. branch 이후 동일 frame family로 정상 종료된다.",
      "rawFrameCount": 6,
      "expandedFrameCount": 6,
      "rawDurationGate": 18,
      "expandedDurationGate": 18,
      "rawFrameGateSequence": [
        {
          "frame": 19,
          "gate": 2
        },
        {
          "frame": 20,
          "gate": 4
        },
        {
          "frame": 21,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 6
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 19,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 20,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 21,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 22,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 22,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x005249a8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        15
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 15,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3e48",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3e94",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 6,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 7,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 8,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "대타격",
      "familyName": "대타격",
      "skillIdHex": "0x08",
      "levelOrFixed": null,
      "entryStartVaHex": "0x00524874",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "대타격 숙련도 family. branch 이후 동일 frame family로 정상 종료된다.",
      "rawFrameCount": 6,
      "expandedFrameCount": 6,
      "rawDurationGate": 18,
      "expandedDurationGate": 18,
      "rawFrameGateSequence": [
        {
          "frame": 19,
          "gate": 2
        },
        {
          "frame": 20,
          "gate": 4
        },
        {
          "frame": 21,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 6
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 19,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 20,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 21,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 22,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 22,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x005249a8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        15
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 15,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3e48",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3e94",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 6,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 7,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 8,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "쾌진격",
      "familyName": "쾌진격",
      "skillIdHex": "0x09",
      "levelOrFixed": null,
      "entryStartVaHex": "0x005249cc",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "actor.skillId branch가 0x09..0x0c 숙련도 차이를 가르고 같은 branch block 안에서 정상 종료된다.",
      "rawFrameCount": 4,
      "expandedFrameCount": 4,
      "rawDurationGate": 13,
      "expandedDurationGate": 13,
      "rawFrameGateSequence": [
        {
          "frame": 7,
          "gate": 4
        },
        {
          "frame": 8,
          "gate": 6
        },
        {
          "frame": 9,
          "gate": 1
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 7,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 8,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 9,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 11,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x00524a34",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000200",
          "bytes": "c1 00 00 00 00 02 00 00"
        },
        {
          "vaHex": "0x00524a50",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 1,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        12
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 12,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3ccc",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3d18",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 65,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 66,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 67,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "쾌진격",
      "familyName": "쾌진격",
      "skillIdHex": "0x0a",
      "levelOrFixed": null,
      "entryStartVaHex": "0x005249cc",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "actor.skillId branch가 0x09..0x0c 숙련도 차이를 가르고 같은 branch block 안에서 정상 종료된다.",
      "rawFrameCount": 4,
      "expandedFrameCount": 4,
      "rawDurationGate": 13,
      "expandedDurationGate": 13,
      "rawFrameGateSequence": [
        {
          "frame": 7,
          "gate": 4
        },
        {
          "frame": 8,
          "gate": 6
        },
        {
          "frame": 9,
          "gate": 1
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 7,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 8,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 9,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 11,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x00524a34",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000200",
          "bytes": "c1 00 00 00 00 02 00 00"
        },
        {
          "vaHex": "0x00524a50",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 1,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        12,
        29
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 3,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 29,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b51c0",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 12,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3ccc",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3d18",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 65,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 66,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 67,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "쾌진격",
      "familyName": "쾌진격",
      "skillIdHex": "0x0b",
      "levelOrFixed": null,
      "entryStartVaHex": "0x005249cc",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "actor.skillId branch가 0x09..0x0c 숙련도 차이를 가르고 같은 branch block 안에서 정상 종료된다.",
      "rawFrameCount": 4,
      "expandedFrameCount": 4,
      "rawDurationGate": 13,
      "expandedDurationGate": 13,
      "rawFrameGateSequence": [
        {
          "frame": 7,
          "gate": 4
        },
        {
          "frame": 8,
          "gate": 6
        },
        {
          "frame": 9,
          "gate": 1
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 7,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 8,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 9,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 11,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x00524a34",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000200",
          "bytes": "c1 00 00 00 00 02 00 00"
        },
        {
          "vaHex": "0x00524a50",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 1,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        12,
        30
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 3,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 30,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b51d4",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 12,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3ccc",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3d18",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 65,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 66,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 67,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "쾌진격",
      "familyName": "쾌진격",
      "skillIdHex": "0x0c",
      "levelOrFixed": null,
      "entryStartVaHex": "0x005249cc",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "actor.skillId branch가 0x09..0x0c 숙련도 차이를 가르고 같은 branch block 안에서 정상 종료된다.",
      "rawFrameCount": 4,
      "expandedFrameCount": 4,
      "rawDurationGate": 13,
      "expandedDurationGate": 13,
      "rawFrameGateSequence": [
        {
          "frame": 7,
          "gate": 4
        },
        {
          "frame": 8,
          "gate": 6
        },
        {
          "frame": 9,
          "gate": 1
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 7,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 8,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 9,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 11,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x00524a34",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000200",
          "bytes": "c1 00 00 00 00 02 00 00"
        },
        {
          "vaHex": "0x00524a50",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 1,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        12,
        31
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 3,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 31,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b51e8",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 12,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3ccc",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3d18",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 65,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 66,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 67,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "비검·목단미인",
      "familyName": "비검·목단미인",
      "skillIdHex": "0x0d",
      "levelOrFixed": null,
      "entryStartVaHex": "0x00524a6c",
      "startSource": "entry-spec-family-start",
      "confidence": "static-repeat-loop-family",
      "note": "비검·목단미인 숙련도 family. 0x06 repeat-loop와 0x4b display-list cleanup을 포함하며 정상 종료된다.",
      "rawFrameCount": 6,
      "expandedFrameCount": 10,
      "rawDurationGate": 16,
      "expandedDurationGate": 24,
      "rawFrameGateSequence": [
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 27,
          "gate": 2
        },
        {
          "frame": 28,
          "gate": 2
        },
        {
          "frame": 29,
          "gate": 2
        },
        {
          "frame": 2,
          "gate": 2
        },
        {
          "frame": 2,
          "gate": 6
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 27,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 28,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 29,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 26,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524ac4"
        },
        {
          "tick": 10,
          "frame": 27,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524ac4"
        },
        {
          "tick": 12,
          "frame": 28,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524ac4"
        },
        {
          "tick": 14,
          "frame": 29,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524ac4"
        },
        {
          "tick": 16,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 2,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 1,
      "repeatLoops": [
        {
          "vaHex": "0x00524ac4",
          "targetVaHex": "0x00524aa0",
          "repeatCount": 2,
          "summary": "repeat-loop count=2, target=0x00524aa0; handler stores target in object +0x3c and counter in +0x60"
        }
      ],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x00524bd4",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        17
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 17,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3f64",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3f94",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 12,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 13,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 14,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "fixed-gate-repeat-expanded"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "비검·목단미인",
      "familyName": "비검·목단미인",
      "skillIdHex": "0x0e",
      "levelOrFixed": null,
      "entryStartVaHex": "0x00524a6c",
      "startSource": "entry-spec-family-start",
      "confidence": "static-repeat-loop-family",
      "note": "비검·목단미인 숙련도 family. 0x06 repeat-loop와 0x4b display-list cleanup을 포함하며 정상 종료된다.",
      "rawFrameCount": 10,
      "expandedFrameCount": 18,
      "rawDurationGate": 24,
      "expandedDurationGate": 40,
      "rawFrameGateSequence": [
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 27,
          "gate": 2
        },
        {
          "frame": 28,
          "gate": 2
        },
        {
          "frame": 29,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 27,
          "gate": 2
        },
        {
          "frame": 28,
          "gate": 2
        },
        {
          "frame": 29,
          "gate": 2
        },
        {
          "frame": 2,
          "gate": 2
        },
        {
          "frame": 2,
          "gate": 6
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 27,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 28,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 29,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 26,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524ac4"
        },
        {
          "tick": 10,
          "frame": 27,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524ac4"
        },
        {
          "tick": 12,
          "frame": 28,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524ac4"
        },
        {
          "tick": 14,
          "frame": 29,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524ac4"
        },
        {
          "tick": 16,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 27,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 28,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 22,
          "frame": 29,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 26,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524af8"
        },
        {
          "tick": 26,
          "frame": 27,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524af8"
        },
        {
          "tick": 28,
          "frame": 28,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524af8"
        },
        {
          "tick": 30,
          "frame": 29,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524af8"
        },
        {
          "tick": 32,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 34,
          "frame": 2,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 2,
      "repeatLoops": [
        {
          "vaHex": "0x00524ac4",
          "targetVaHex": "0x00524aa0",
          "repeatCount": 2,
          "summary": "repeat-loop count=2, target=0x00524aa0; handler stores target in object +0x3c and counter in +0x60"
        },
        {
          "vaHex": "0x00524af8",
          "targetVaHex": "0x00524ad4",
          "repeatCount": 2,
          "summary": "repeat-loop count=2, target=0x00524ad4; handler stores target in object +0x3c and counter in +0x60"
        }
      ],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x00524bd4",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        17
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 17,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3f64",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3f94",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 12,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 13,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 14,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "fixed-gate-repeat-expanded"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "비검·목단미인",
      "familyName": "비검·목단미인",
      "skillIdHex": "0x0f",
      "levelOrFixed": null,
      "entryStartVaHex": "0x00524a6c",
      "startSource": "entry-spec-family-start",
      "confidence": "static-repeat-loop-family",
      "note": "비검·목단미인 숙련도 family. 0x06 repeat-loop와 0x4b display-list cleanup을 포함하며 정상 종료된다.",
      "rawFrameCount": 14,
      "expandedFrameCount": 26,
      "rawDurationGate": 32,
      "expandedDurationGate": 56,
      "rawFrameGateSequence": [
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 27,
          "gate": 2
        },
        {
          "frame": 28,
          "gate": 2
        },
        {
          "frame": 29,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 27,
          "gate": 2
        },
        {
          "frame": 28,
          "gate": 2
        },
        {
          "frame": 29,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 27,
          "gate": 2
        },
        {
          "frame": 28,
          "gate": 2
        },
        {
          "frame": 29,
          "gate": 2
        },
        {
          "frame": 2,
          "gate": 2
        },
        {
          "frame": 2,
          "gate": 6
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 27,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 28,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 29,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 26,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524ac4"
        },
        {
          "tick": 10,
          "frame": 27,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524ac4"
        },
        {
          "tick": 12,
          "frame": 28,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524ac4"
        },
        {
          "tick": 14,
          "frame": 29,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524ac4"
        },
        {
          "tick": 16,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 27,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 28,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 22,
          "frame": 29,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 26,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524af8"
        },
        {
          "tick": 26,
          "frame": 27,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524af8"
        },
        {
          "tick": 28,
          "frame": 28,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524af8"
        },
        {
          "tick": 30,
          "frame": 29,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524af8"
        },
        {
          "tick": 32,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 34,
          "frame": 27,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 36,
          "frame": 28,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 38,
          "frame": 29,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 40,
          "frame": 26,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524b2c"
        },
        {
          "tick": 42,
          "frame": 27,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524b2c"
        },
        {
          "tick": 44,
          "frame": 28,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524b2c"
        },
        {
          "tick": 46,
          "frame": 29,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524b2c"
        },
        {
          "tick": 48,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 50,
          "frame": 2,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 3,
      "repeatLoops": [
        {
          "vaHex": "0x00524ac4",
          "targetVaHex": "0x00524aa0",
          "repeatCount": 2,
          "summary": "repeat-loop count=2, target=0x00524aa0; handler stores target in object +0x3c and counter in +0x60"
        },
        {
          "vaHex": "0x00524af8",
          "targetVaHex": "0x00524ad4",
          "repeatCount": 2,
          "summary": "repeat-loop count=2, target=0x00524ad4; handler stores target in object +0x3c and counter in +0x60"
        },
        {
          "vaHex": "0x00524b2c",
          "targetVaHex": "0x00524b08",
          "repeatCount": 2,
          "summary": "repeat-loop count=2, target=0x00524b08; handler stores target in object +0x3c and counter in +0x60"
        }
      ],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x00524bd4",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        17
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 17,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3f64",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3f94",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 12,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 13,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 14,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "fixed-gate-repeat-expanded"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "비검·목단미인",
      "familyName": "비검·목단미인",
      "skillIdHex": "0x10",
      "levelOrFixed": null,
      "entryStartVaHex": "0x00524a6c",
      "startSource": "entry-spec-family-start",
      "confidence": "static-repeat-loop-family",
      "note": "비검·목단미인 숙련도 family. 0x06 repeat-loop와 0x4b display-list cleanup을 포함하며 정상 종료된다.",
      "rawFrameCount": 18,
      "expandedFrameCount": 42,
      "rawDurationGate": 40,
      "expandedDurationGate": 88,
      "rawFrameGateSequence": [
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 27,
          "gate": 2
        },
        {
          "frame": 28,
          "gate": 2
        },
        {
          "frame": 29,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 27,
          "gate": 2
        },
        {
          "frame": 28,
          "gate": 2
        },
        {
          "frame": 29,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 27,
          "gate": 2
        },
        {
          "frame": 28,
          "gate": 2
        },
        {
          "frame": 29,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 27,
          "gate": 2
        },
        {
          "frame": 28,
          "gate": 2
        },
        {
          "frame": 29,
          "gate": 2
        },
        {
          "frame": 2,
          "gate": 2
        },
        {
          "frame": 2,
          "gate": 6
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 27,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 28,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 29,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 26,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524ac4"
        },
        {
          "tick": 10,
          "frame": 27,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524ac4"
        },
        {
          "tick": 12,
          "frame": 28,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524ac4"
        },
        {
          "tick": 14,
          "frame": 29,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524ac4"
        },
        {
          "tick": 16,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 27,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 28,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 22,
          "frame": 29,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 26,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524af8"
        },
        {
          "tick": 26,
          "frame": 27,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524af8"
        },
        {
          "tick": 28,
          "frame": 28,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524af8"
        },
        {
          "tick": 30,
          "frame": 29,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524af8"
        },
        {
          "tick": 32,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 34,
          "frame": 27,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 36,
          "frame": 28,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 38,
          "frame": 29,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 40,
          "frame": 26,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524b2c"
        },
        {
          "tick": 42,
          "frame": 27,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524b2c"
        },
        {
          "tick": 44,
          "frame": 28,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524b2c"
        },
        {
          "tick": 46,
          "frame": 29,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524b2c"
        },
        {
          "tick": 48,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 50,
          "frame": 27,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 52,
          "frame": 28,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 54,
          "frame": 29,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 56,
          "frame": 26,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524b60"
        },
        {
          "tick": 58,
          "frame": 27,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524b60"
        },
        {
          "tick": 60,
          "frame": 28,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524b60"
        },
        {
          "tick": 62,
          "frame": 29,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524b60"
        },
        {
          "tick": 64,
          "frame": 26,
          "gate": 2,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x00524b60"
        },
        {
          "tick": 66,
          "frame": 27,
          "gate": 2,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x00524b60"
        },
        {
          "tick": 68,
          "frame": 28,
          "gate": 2,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x00524b60"
        },
        {
          "tick": 70,
          "frame": 29,
          "gate": 2,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x00524b60"
        },
        {
          "tick": 72,
          "frame": 26,
          "gate": 2,
          "repeatIteration": 3,
          "repeatSourceVaHex": "0x00524b60"
        },
        {
          "tick": 74,
          "frame": 27,
          "gate": 2,
          "repeatIteration": 3,
          "repeatSourceVaHex": "0x00524b60"
        },
        {
          "tick": 76,
          "frame": 28,
          "gate": 2,
          "repeatIteration": 3,
          "repeatSourceVaHex": "0x00524b60"
        },
        {
          "tick": 78,
          "frame": 29,
          "gate": 2,
          "repeatIteration": 3,
          "repeatSourceVaHex": "0x00524b60"
        },
        {
          "tick": 80,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 82,
          "frame": 2,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 4,
      "repeatLoops": [
        {
          "vaHex": "0x00524ac4",
          "targetVaHex": "0x00524aa0",
          "repeatCount": 2,
          "summary": "repeat-loop count=2, target=0x00524aa0; handler stores target in object +0x3c and counter in +0x60"
        },
        {
          "vaHex": "0x00524af8",
          "targetVaHex": "0x00524ad4",
          "repeatCount": 2,
          "summary": "repeat-loop count=2, target=0x00524ad4; handler stores target in object +0x3c and counter in +0x60"
        },
        {
          "vaHex": "0x00524b2c",
          "targetVaHex": "0x00524b08",
          "repeatCount": 2,
          "summary": "repeat-loop count=2, target=0x00524b08; handler stores target in object +0x3c and counter in +0x60"
        },
        {
          "vaHex": "0x00524b60",
          "targetVaHex": "0x00524b3c",
          "repeatCount": 4,
          "summary": "repeat-loop count=4, target=0x00524b3c; handler stores target in object +0x3c and counter in +0x60"
        }
      ],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x00524b94",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        17
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 17,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3f64",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3f94",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 12,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 13,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 14,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "fixed-gate-repeat-expanded"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "백인일섬",
      "familyName": "백인일섬",
      "skillIdHex": "0x14",
      "levelOrFixed": null,
      "entryStartVaHex": "0x0052501c",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "백인일섬 숙련도 family. frame 10..13 block과 WLK id 20 호출 후 정상 종료된다.",
      "rawFrameCount": 5,
      "expandedFrameCount": 5,
      "rawDurationGate": 12,
      "expandedDurationGate": 12,
      "rawFrameGateSequence": [
        {
          "frame": 10,
          "gate": 2
        },
        {
          "frame": 11,
          "gate": 4
        },
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 2
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 10,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 11,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 13,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x005250c8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        12
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 12,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3ccc",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3d18",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 65,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 66,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 67,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "백인일섬",
      "familyName": "백인일섬",
      "skillIdHex": "0x15",
      "levelOrFixed": null,
      "entryStartVaHex": "0x0052501c",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "백인일섬 숙련도 family. frame 10..13 block과 WLK id 20 호출 후 정상 종료된다.",
      "rawFrameCount": 5,
      "expandedFrameCount": 5,
      "rawDurationGate": 12,
      "expandedDurationGate": 12,
      "rawFrameGateSequence": [
        {
          "frame": 10,
          "gate": 2
        },
        {
          "frame": 11,
          "gate": 4
        },
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 2
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 10,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 11,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 13,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x00525070",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x005250c8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        12,
        105
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 3,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 105,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004ba6b0",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 12,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3ccc",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3d18",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 65,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 66,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 67,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "백인일섬",
      "familyName": "백인일섬",
      "skillIdHex": "0x16",
      "levelOrFixed": null,
      "entryStartVaHex": "0x0052501c",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "백인일섬 숙련도 family. frame 10..13 block과 WLK id 20 호출 후 정상 종료된다.",
      "rawFrameCount": 5,
      "expandedFrameCount": 5,
      "rawDurationGate": 12,
      "expandedDurationGate": 12,
      "rawFrameGateSequence": [
        {
          "frame": 10,
          "gate": 2
        },
        {
          "frame": 11,
          "gate": 4
        },
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 2
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 10,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 11,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 13,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x0052508c",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x005250c8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        12,
        106
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 3,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 106,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004ba6f4",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 12,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3ccc",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3d18",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 65,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 66,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 67,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "백인일섬",
      "familyName": "백인일섬",
      "skillIdHex": "0x17",
      "levelOrFixed": null,
      "entryStartVaHex": "0x0052501c",
      "startSource": "entry-spec-family-start",
      "confidence": "static-branch-family",
      "note": "백인일섬 숙련도 family. frame 10..13 block과 WLK id 20 호출 후 정상 종료된다.",
      "rawFrameCount": 5,
      "expandedFrameCount": 5,
      "rawDurationGate": 12,
      "expandedDurationGate": 12,
      "rawFrameGateSequence": [
        {
          "frame": 10,
          "gate": 2
        },
        {
          "frame": 11,
          "gate": 4
        },
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 2
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 10,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 11,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 13,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x005250a8",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x005250c8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        12,
        107
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 3,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 107,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004ba738",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 12,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3ccc",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3d18",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 65,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 66,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 67,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "인법·분신술",
      "familyName": "인법·분신술",
      "skillIdHex": "0x18",
      "levelOrFixed": null,
      "entryStartVaHex": "0x005250e8",
      "startSource": "entry-spec-family-start",
      "confidence": "static-child-display-family",
      "note": "분신/자식 display field write(0x11/0x14)로 분신 객체를 구성한 뒤 공격 frame block으로 이어지는 family. 정상 종료된다.",
      "rawFrameCount": 12,
      "expandedFrameCount": 12,
      "rawDurationGate": 63,
      "expandedDurationGate": 63,
      "rawFrameGateSequence": [
        {
          "frame": 6,
          "gate": 4
        },
        {
          "frame": 4,
          "gate": 4
        },
        {
          "frame": 40,
          "gate": 4
        },
        {
          "frame": 41,
          "gate": 4
        },
        {
          "frame": 41,
          "gate": 1
        },
        {
          "frame": 41,
          "gate": 8
        },
        {
          "frame": 41,
          "gate": 8
        },
        {
          "frame": 41,
          "gate": 16
        },
        {
          "frame": 40,
          "gate": 4
        },
        {
          "frame": 4,
          "gate": 4
        },
        {
          "frame": 6,
          "gate": 4
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 6,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 4,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 40,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 41,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 41,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 17,
          "frame": 41,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 25,
          "frame": 41,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 33,
          "frame": 41,
          "gate": 16,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 49,
          "frame": 40,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 53,
          "frame": 4,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 57,
          "frame": 6,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 61,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x00525244",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x00525264",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 2,
      "confirmedHitEventCount": 2,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "인법·분신술",
      "familyName": "인법·분신술",
      "skillIdHex": "0x19",
      "levelOrFixed": null,
      "entryStartVaHex": "0x005250e8",
      "startSource": "entry-spec-family-start",
      "confidence": "static-child-display-family",
      "note": "분신/자식 display field write(0x11/0x14)로 분신 객체를 구성한 뒤 공격 frame block으로 이어지는 family. 정상 종료된다.",
      "rawFrameCount": 13,
      "expandedFrameCount": 13,
      "rawDurationGate": 71,
      "expandedDurationGate": 71,
      "rawFrameGateSequence": [
        {
          "frame": 6,
          "gate": 4
        },
        {
          "frame": 4,
          "gate": 4
        },
        {
          "frame": 40,
          "gate": 4
        },
        {
          "frame": 41,
          "gate": 4
        },
        {
          "frame": 41,
          "gate": 1
        },
        {
          "frame": 41,
          "gate": 8
        },
        {
          "frame": 41,
          "gate": 8
        },
        {
          "frame": 41,
          "gate": 8
        },
        {
          "frame": 41,
          "gate": 16
        },
        {
          "frame": 40,
          "gate": 4
        },
        {
          "frame": 4,
          "gate": 4
        },
        {
          "frame": 6,
          "gate": 4
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 6,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 4,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 40,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 41,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 41,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 17,
          "frame": 41,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 25,
          "frame": 41,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 33,
          "frame": 41,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 41,
          "frame": 41,
          "gate": 16,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 57,
          "frame": 40,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 61,
          "frame": 4,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 65,
          "frame": 6,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 69,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 3,
      "waitBarriers": [
        {
          "vaHex": "0x00525244",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x00525264",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x0052528c",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 3,
      "confirmedHitEventCount": 3,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "인법·분신술",
      "familyName": "인법·분신술",
      "skillIdHex": "0x1a",
      "levelOrFixed": null,
      "entryStartVaHex": "0x005250e8",
      "startSource": "entry-spec-family-start",
      "confidence": "static-child-display-family",
      "note": "분신/자식 display field write(0x11/0x14)로 분신 객체를 구성한 뒤 공격 frame block으로 이어지는 family. 정상 종료된다.",
      "rawFrameCount": 14,
      "expandedFrameCount": 14,
      "rawDurationGate": 79,
      "expandedDurationGate": 79,
      "rawFrameGateSequence": [
        {
          "frame": 6,
          "gate": 4
        },
        {
          "frame": 4,
          "gate": 4
        },
        {
          "frame": 40,
          "gate": 4
        },
        {
          "frame": 41,
          "gate": 4
        },
        {
          "frame": 41,
          "gate": 1
        },
        {
          "frame": 41,
          "gate": 8
        },
        {
          "frame": 41,
          "gate": 8
        },
        {
          "frame": 41,
          "gate": 8
        },
        {
          "frame": 41,
          "gate": 8
        },
        {
          "frame": 41,
          "gate": 16
        },
        {
          "frame": 40,
          "gate": 4
        },
        {
          "frame": 4,
          "gate": 4
        },
        {
          "frame": 6,
          "gate": 4
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 6,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 4,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 40,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 41,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 41,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 17,
          "frame": 41,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 25,
          "frame": 41,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 33,
          "frame": 41,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 41,
          "frame": 41,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 49,
          "frame": 41,
          "gate": 16,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 65,
          "frame": 40,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 69,
          "frame": 4,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 73,
          "frame": 6,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 77,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 4,
      "waitBarriers": [
        {
          "vaHex": "0x00525244",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x00525264",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x0052528c",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x005252b4",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 4,
      "confirmedHitEventCount": 4,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "인법·분신술",
      "familyName": "인법·분신술",
      "skillIdHex": "0x1b",
      "levelOrFixed": null,
      "entryStartVaHex": "0x005250e8",
      "startSource": "entry-spec-family-start",
      "confidence": "static-child-display-family",
      "note": "분신/자식 display field write(0x11/0x14)로 분신 객체를 구성한 뒤 공격 frame block으로 이어지는 family. 정상 종료된다.",
      "rawFrameCount": 15,
      "expandedFrameCount": 15,
      "rawDurationGate": 87,
      "expandedDurationGate": 87,
      "rawFrameGateSequence": [
        {
          "frame": 6,
          "gate": 4
        },
        {
          "frame": 4,
          "gate": 4
        },
        {
          "frame": 40,
          "gate": 4
        },
        {
          "frame": 41,
          "gate": 4
        },
        {
          "frame": 41,
          "gate": 1
        },
        {
          "frame": 41,
          "gate": 8
        },
        {
          "frame": 41,
          "gate": 8
        },
        {
          "frame": 41,
          "gate": 8
        },
        {
          "frame": 41,
          "gate": 8
        },
        {
          "frame": 41,
          "gate": 8
        },
        {
          "frame": 41,
          "gate": 16
        },
        {
          "frame": 40,
          "gate": 4
        },
        {
          "frame": 4,
          "gate": 4
        },
        {
          "frame": 6,
          "gate": 4
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 6,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 4,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 40,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 41,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 41,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 17,
          "frame": 41,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 25,
          "frame": 41,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 33,
          "frame": 41,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 41,
          "frame": 41,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 49,
          "frame": 41,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 57,
          "frame": 41,
          "gate": 16,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 73,
          "frame": 40,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 77,
          "frame": 4,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 81,
          "frame": 6,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 85,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 5,
      "waitBarriers": [
        {
          "vaHex": "0x00525244",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x00525264",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x0052528c",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x005252b4",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x005252dc",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 5,
      "confirmedHitEventCount": 5,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "비검·시공단",
      "familyName": "비검·시공단",
      "skillIdHex": "0x1c",
      "levelOrFixed": null,
      "entryStartVaHex": "0x00525544",
      "startSource": "entry-spec-family-start",
      "confidence": "static-repeat-loop-family",
      "note": "비검·시공단 숙련도 family. 0x00525544의 WLK 17 시전음부터 시작해야 하며, 0x06 repeat-loop와 0x4b helper가 포함되고 정상 종료된다.",
      "rawFrameCount": 4,
      "expandedFrameCount": 4,
      "rawDurationGate": 8,
      "expandedDurationGate": 8,
      "rawFrameGateSequence": [
        {
          "frame": 2,
          "gate": 2
        },
        {
          "frame": 21,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 2
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 21,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 22,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x00525624",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x00525654",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        13
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 13,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3d78",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3da8",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 0,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 1,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 2,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "비검·시공단",
      "familyName": "비검·시공단",
      "skillIdHex": "0x1d",
      "levelOrFixed": null,
      "entryStartVaHex": "0x00525544",
      "startSource": "entry-spec-family-start",
      "confidence": "static-repeat-loop-family",
      "note": "비검·시공단 숙련도 family. 0x00525544의 WLK 17 시전음부터 시작해야 하며, 0x06 repeat-loop와 0x4b helper가 포함되고 정상 종료된다.",
      "rawFrameCount": 6,
      "expandedFrameCount": 6,
      "rawDurationGate": 16,
      "expandedDurationGate": 16,
      "rawFrameGateSequence": [
        {
          "frame": 21,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 4
        },
        {
          "frame": 16,
          "gate": 2
        },
        {
          "frame": 17,
          "gate": 2
        },
        {
          "frame": 17,
          "gate": 4
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 21,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 22,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 16,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 17,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 17,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x00525660",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x00525694",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        14,
        46
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 14,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3de0",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3e10",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 5,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 4,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 3,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        },
        {
          "helperId": 46,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b6264",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "비검·시공단",
      "familyName": "비검·시공단",
      "skillIdHex": "0x1e",
      "levelOrFixed": null,
      "entryStartVaHex": "0x00525544",
      "startSource": "entry-spec-family-start",
      "confidence": "static-repeat-loop-family",
      "note": "비검·시공단 숙련도 family. 0x00525544의 WLK 17 시전음부터 시작해야 하며, 0x06 repeat-loop와 0x4b helper가 포함되고 정상 종료된다.",
      "rawFrameCount": 11,
      "expandedFrameCount": 11,
      "rawDurationGate": 33,
      "expandedDurationGate": 33,
      "rawFrameGateSequence": [
        {
          "frame": 21,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 4
        },
        {
          "frame": 16,
          "gate": 2
        },
        {
          "frame": 17,
          "gate": 4
        },
        {
          "frame": 21,
          "gate": 1
        },
        {
          "frame": 23,
          "gate": 2
        },
        {
          "frame": 24,
          "gate": 6
        },
        {
          "frame": 25,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 6
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 21,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 22,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 16,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 17,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 21,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 13,
          "frame": 23,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 15,
          "frame": 24,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 21,
          "frame": 25,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 23,
          "frame": 22,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 25,
          "frame": 22,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 31,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x005256a8",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x00525708",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        15
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 15,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3e48",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3e94",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 6,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 7,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 8,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "비검·시공단",
      "familyName": "비검·시공단",
      "skillIdHex": "0x1f",
      "levelOrFixed": null,
      "entryStartVaHex": "0x00525544",
      "startSource": "entry-spec-family-start",
      "confidence": "static-repeat-loop-family",
      "note": "비검·시공단 숙련도 family. 0x00525544의 WLK 17 시전음부터 시작해야 하며, 0x06 repeat-loop와 0x4b helper가 포함되고 정상 종료된다.",
      "rawFrameCount": 16,
      "expandedFrameCount": 20,
      "rawDurationGate": 38,
      "expandedDurationGate": 46,
      "rawFrameGateSequence": [
        {
          "frame": 21,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 4
        },
        {
          "frame": 16,
          "gate": 2
        },
        {
          "frame": 17,
          "gate": 4
        },
        {
          "frame": 21,
          "gate": 1
        },
        {
          "frame": 21,
          "gate": 1
        },
        {
          "frame": 22,
          "gate": 4
        },
        {
          "frame": 16,
          "gate": 2
        },
        {
          "frame": 17,
          "gate": 4
        },
        {
          "frame": 17,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 27,
          "gate": 2
        },
        {
          "frame": 28,
          "gate": 2
        },
        {
          "frame": 29,
          "gate": 2
        },
        {
          "frame": 2,
          "gate": 2
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 21,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 22,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 16,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 17,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 21,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 13,
          "frame": 21,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 22,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 16,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 17,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 17,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 26,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 28,
          "frame": 27,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 28,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 32,
          "frame": 29,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 34,
          "frame": 26,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x005255e0"
        },
        {
          "tick": 36,
          "frame": 27,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x005255e0"
        },
        {
          "tick": 38,
          "frame": 28,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x005255e0"
        },
        {
          "tick": 40,
          "frame": 29,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x005255e0"
        },
        {
          "tick": 42,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 44,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 1,
      "repeatLoops": [
        {
          "vaHex": "0x005255e0",
          "targetVaHex": "0x005255c0",
          "repeatCount": 2,
          "summary": "repeat-loop count=2, target=0x005255c0; handler stores target in object +0x3c and counter in +0x60"
        }
      ],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x005255b0",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x00525610",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        17
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 17,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3f64",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3f94",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 12,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 13,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 14,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "fixed-gate-repeat-expanded"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "정권",
      "familyName": "display-table fallback",
      "skillIdHex": "0x01",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d6398",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 3,
      "expandedFrameCount": 3,
      "rawDurationGate": 6,
      "expandedDurationGate": 6,
      "rawFrameGateSequence": [
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 13,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004d63bc",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "돌려차기",
      "familyName": "display-table fallback",
      "skillIdHex": "0x02",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d63d4",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 5,
      "expandedFrameCount": 5,
      "rawDurationGate": 14,
      "expandedDurationGate": 14,
      "rawFrameGateSequence": [
        {
          "frame": 8,
          "gate": 4
        },
        {
          "frame": 9,
          "gate": 2
        },
        {
          "frame": 10,
          "gate": 4
        },
        {
          "frame": 11,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 8,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 9,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 10,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 11,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004d640c",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "던지기",
      "familyName": "display-table fallback",
      "skillIdHex": "0x03",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d6428",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 3,
      "expandedFrameCount": 3,
      "rawDurationGate": 6,
      "expandedDurationGate": 6,
      "rawFrameGateSequence": [
        {
          "frame": 51,
          "gate": 2
        },
        {
          "frame": 52,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 51,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 52,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004d6450",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "다리후리기",
      "familyName": "display-table fallback",
      "skillIdHex": "0x04",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d646c",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 3,
      "expandedFrameCount": 3,
      "rawDurationGate": 6,
      "expandedDurationGate": 6,
      "rawFrameGateSequence": [
        {
          "frame": 51,
          "gate": 2
        },
        {
          "frame": 52,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 51,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 52,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004d6490",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "마시기",
      "familyName": "display-table fallback",
      "skillIdHex": "0x05",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d64a8",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 11,
      "expandedFrameCount": 11,
      "rawDurationGate": 34,
      "expandedDurationGate": 34,
      "rawFrameGateSequence": [
        {
          "frame": 40,
          "gate": 6
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 40,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 9,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 15,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 21,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 27,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 32,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 0,
      "waitBarriers": [],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 0,
      "confirmedHitEventCount": 0,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-frame-gates"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "마시기",
      "familyName": "display-table fallback",
      "skillIdHex": "0x06",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d64a8",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 11,
      "expandedFrameCount": 11,
      "rawDurationGate": 34,
      "expandedDurationGate": 34,
      "rawFrameGateSequence": [
        {
          "frame": 40,
          "gate": 6
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 40,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 9,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 15,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 21,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 27,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 32,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 0,
      "waitBarriers": [],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 0,
      "confirmedHitEventCount": 0,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-frame-gates"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "마시기",
      "familyName": "display-table fallback",
      "skillIdHex": "0x07",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d64a8",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 11,
      "expandedFrameCount": 11,
      "rawDurationGate": 34,
      "expandedDurationGate": 34,
      "rawFrameGateSequence": [
        {
          "frame": 40,
          "gate": 6
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 40,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 9,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 15,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 21,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 27,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 32,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 0,
      "waitBarriers": [],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 0,
      "confirmedHitEventCount": 0,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-frame-gates"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "마시기",
      "familyName": "display-table fallback",
      "skillIdHex": "0x08",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d64a8",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 11,
      "expandedFrameCount": 11,
      "rawDurationGate": 34,
      "expandedDurationGate": 34,
      "rawFrameGateSequence": [
        {
          "frame": 40,
          "gate": 6
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 40,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 9,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 15,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 21,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 27,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 32,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 0,
      "waitBarriers": [],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 0,
      "confirmedHitEventCount": 0,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-frame-gates"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "마시기",
      "familyName": "display-table fallback",
      "skillIdHex": "0x09",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d64a8",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 11,
      "expandedFrameCount": 11,
      "rawDurationGate": 34,
      "expandedDurationGate": 34,
      "rawFrameGateSequence": [
        {
          "frame": 40,
          "gate": 6
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 40,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 9,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 15,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 21,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 27,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 32,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 0,
      "waitBarriers": [],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 0,
      "confirmedHitEventCount": 0,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-frame-gates"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "비기·맹호유성각",
      "familyName": "display-table fallback",
      "skillIdHex": "0x33",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d737c",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 2,
      "expandedFrameCount": 2,
      "rawDurationGate": 3,
      "expandedDurationGate": 3,
      "rawFrameGateSequence": [
        {
          "frame": 0,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 1
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 0,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 3,
      "waitBarriers": [
        {
          "vaHex": "0x004d744c",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004d7454",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000200",
          "bytes": "c1 00 00 00 00 02 00 00"
        },
        {
          "vaHex": "0x004d7474",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        79
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 79,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b848c",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "비기·맹호유성각",
      "familyName": "display-table fallback",
      "skillIdHex": "0x34",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d737c",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 2,
      "expandedFrameCount": 2,
      "rawDurationGate": 3,
      "expandedDurationGate": 3,
      "rawFrameGateSequence": [
        {
          "frame": 0,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 1
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 0,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 3,
      "waitBarriers": [
        {
          "vaHex": "0x004d744c",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004d7454",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000200",
          "bytes": "c1 00 00 00 00 02 00 00"
        },
        {
          "vaHex": "0x004d7474",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        79
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 79,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b848c",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "비기·맹호유성각",
      "familyName": "display-table fallback",
      "skillIdHex": "0x35",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d737c",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 2,
      "expandedFrameCount": 2,
      "rawDurationGate": 3,
      "expandedDurationGate": 3,
      "rawFrameGateSequence": [
        {
          "frame": 0,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 1
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 0,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 3,
      "waitBarriers": [
        {
          "vaHex": "0x004d744c",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004d7454",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000200",
          "bytes": "c1 00 00 00 00 02 00 00"
        },
        {
          "vaHex": "0x004d7474",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        79
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 79,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b848c",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "비기·맹호유성각",
      "familyName": "display-table fallback",
      "skillIdHex": "0x36",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d737c",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 2,
      "expandedFrameCount": 2,
      "rawDurationGate": 3,
      "expandedDurationGate": 3,
      "rawFrameGateSequence": [
        {
          "frame": 0,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 1
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 0,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 3,
      "waitBarriers": [
        {
          "vaHex": "0x004d744c",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004d7454",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000200",
          "bytes": "c1 00 00 00 00 02 00 00"
        },
        {
          "vaHex": "0x004d7474",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        79
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 79,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b848c",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "주구격",
      "familyName": "display-table fallback",
      "skillIdHex": "0x37",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d7544",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 16,
      "expandedFrameCount": 16,
      "rawDurationGate": 50,
      "expandedDurationGate": 50,
      "rawFrameGateSequence": [
        {
          "frame": 40,
          "gate": 6
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 36,
          "gate": 2
        },
        {
          "frame": 37,
          "gate": 4
        },
        {
          "frame": 38,
          "gate": 6
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 40,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 9,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 15,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 21,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 27,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 32,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 34,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 36,
          "frame": 36,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 38,
          "frame": 37,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 42,
          "frame": 38,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 48,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x004d760c",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004d7708",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        61
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 2,
      "helperLoopCount": 1,
      "helperTiming": [
        {
          "helperId": 61,
          "syncSignals": [
            "frame-script-sync",
            "child-actor-flag",
            "actor-flag-sync",
            "looping-frame-script",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b68e0",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 1,
          "frameScripts": [
            {
              "targetVaHex": "0x004b69ac",
              "durationGate": 16,
              "frameGateSequence": [
                {
                  "frame": 180,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 181,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 182,
                  "gate": 2,
                  "tick": 4
                },
                {
                  "frame": 183,
                  "gate": 2,
                  "tick": 6
                },
                {
                  "frame": 180,
                  "gate": 1,
                  "tick": 8
                },
                {
                  "frame": 180,
                  "gate": 1,
                  "tick": 9
                },
                {
                  "frame": 181,
                  "gate": 1,
                  "tick": 10
                },
                {
                  "frame": 181,
                  "gate": 1,
                  "tick": 11
                },
                {
                  "frame": 182,
                  "gate": 1,
                  "tick": 12
                },
                {
                  "frame": 182,
                  "gate": 1,
                  "tick": 13
                },
                {
                  "frame": 183,
                  "gate": 1,
                  "tick": 14
                },
                {
                  "frame": 183,
                  "gate": 1,
                  "tick": 15
                }
              ],
              "loopEvents": [
                {
                  "tick": 8,
                  "targetVaHex": "0x004b69ac",
                  "repeatCount": 3,
                  "vaHex": "0x004b69cc"
                },
                {
                  "tick": 16,
                  "targetVaHex": "0x004b69d4",
                  "repeatCount": null,
                  "vaHex": "0x004b6a54"
                }
              ]
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "취호염무",
      "familyName": "display-table fallback",
      "skillIdHex": "0x38",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d7544",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 16,
      "expandedFrameCount": 16,
      "rawDurationGate": 60,
      "expandedDurationGate": 60,
      "rawFrameGateSequence": [
        {
          "frame": 40,
          "gate": 6
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 36,
          "gate": 2
        },
        {
          "frame": 37,
          "gate": 4
        },
        {
          "frame": 38,
          "gate": 16
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 40,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 9,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 15,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 21,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 27,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 32,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 34,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 36,
          "frame": 36,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 38,
          "frame": 37,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 42,
          "frame": 38,
          "gate": 16,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 58,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x004d7634",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004d7708",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        63
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 63,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b6cd8",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "노익장 대폭발",
      "familyName": "display-table fallback",
      "skillIdHex": "0x39",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d7544",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 20,
      "expandedFrameCount": 20,
      "rawDurationGate": 94,
      "expandedDurationGate": 94,
      "rawFrameGateSequence": [
        {
          "frame": 40,
          "gate": 6
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 40,
          "gate": 12
        },
        {
          "frame": 52,
          "gate": 8
        },
        {
          "frame": 52,
          "gate": 8
        },
        {
          "frame": 52,
          "gate": 8
        },
        {
          "frame": 52,
          "gate": 8
        },
        {
          "frame": 52,
          "gate": 8
        },
        {
          "frame": 52,
          "gate": 4
        },
        {
          "frame": 52,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 40,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 9,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 15,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 21,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 27,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 32,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 34,
          "frame": 40,
          "gate": 12,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 46,
          "frame": 52,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 54,
          "frame": 52,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 62,
          "frame": 52,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 70,
          "frame": 52,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 78,
          "frame": 52,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 86,
          "frame": 52,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 90,
          "frame": 52,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 92,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004d7708",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        11,
        38,
        40,
        41,
        57,
        123
      ],
      "helperFrameScriptCount": 2,
      "helperWaitCount": 7,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 11,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield"
          ],
          "childScriptVaHex": "0x004b3c6c",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 40,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b5e18",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b5e58",
              "durationGate": 8,
              "frameGateSequence": [
                {
                  "frame": 68,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 69,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 70,
                  "gate": 2,
                  "tick": 4
                },
                {
                  "frame": 71,
                  "gate": 2,
                  "tick": 6
                }
              ],
              "loopEvents": []
            }
          ]
        },
        {
          "helperId": 41,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b5e8c",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b5ecc",
              "durationGate": 8,
              "frameGateSequence": [
                {
                  "frame": 72,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 73,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 74,
                  "gate": 2,
                  "tick": 4
                },
                {
                  "frame": 75,
                  "gate": 2,
                  "tick": 6
                }
              ],
              "loopEvents": []
            }
          ]
        },
        {
          "helperId": 123,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004bb2d8",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 3,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 57,
          "syncSignals": [],
          "childScriptVaHex": "0x004b67ec",
          "frameScriptCount": 0,
          "actorFlagCount": 0,
          "waitCount": 0,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 38,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b571c",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "도주",
      "familyName": "display-table fallback",
      "skillIdHex": "0x3a",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d7724",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 1,
      "expandedFrameCount": 1,
      "rawDurationGate": 8,
      "expandedDurationGate": 8,
      "rawFrameGateSequence": [
        {
          "frame": 0,
          "gate": 8
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 0,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 0,
      "waitBarriers": [],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 0,
      "confirmedHitEventCount": 0,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-frame-gates"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "방어",
      "familyName": "display-table fallback",
      "skillIdHex": "0x3b",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d7740",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 2,
      "expandedFrameCount": 2,
      "rawDurationGate": 10,
      "expandedDurationGate": 10,
      "rawFrameGateSequence": [
        {
          "frame": 0,
          "gate": 2
        },
        {
          "frame": 2,
          "gate": 8
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 2,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 0,
      "waitBarriers": [],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 0,
      "confirmedHitEventCount": 0,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-frame-gates"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "기합일발",
      "familyName": "display-table fallback",
      "skillIdHex": "0x3c",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d7768",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 2,
      "expandedFrameCount": 2,
      "rawDurationGate": 3,
      "expandedDurationGate": 3,
      "rawFrameGateSequence": [
        {
          "frame": 0,
          "gate": 2
        },
        {
          "frame": 52,
          "gate": 1
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 52,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004d7780",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 0,
      "confirmedHitEventCount": 0,
      "helperIds": [
        32
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 32,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b534c",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "천조족",
      "familyName": "display-table fallback",
      "skillIdHex": "0x3d",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d779c",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 12,
      "expandedFrameCount": 12,
      "rawDurationGate": 36,
      "expandedDurationGate": 36,
      "rawFrameGateSequence": [
        {
          "frame": 40,
          "gate": 6
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 40,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 9,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 15,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 21,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 27,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 32,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 34,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004d7824",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 0,
      "confirmedHitEventCount": 0,
      "helperIds": [
        34
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 34,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b537c",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "천조족",
      "familyName": "display-table fallback",
      "skillIdHex": "0x3e",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d779c",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 12,
      "expandedFrameCount": 12,
      "rawDurationGate": 36,
      "expandedDurationGate": 36,
      "rawFrameGateSequence": [
        {
          "frame": 40,
          "gate": 6
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 40,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 9,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 15,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 21,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 27,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 32,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 34,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004d7824",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 0,
      "confirmedHitEventCount": 0,
      "helperIds": [
        34
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 34,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b537c",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "주 백약지장",
      "familyName": "display-table fallback",
      "skillIdHex": "0x3f",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d7860",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 12,
      "expandedFrameCount": 12,
      "rawDurationGate": 36,
      "expandedDurationGate": 36,
      "rawFrameGateSequence": [
        {
          "frame": 40,
          "gate": 6
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 40,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 9,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 15,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 21,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 27,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 32,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 34,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004d78e8",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 0,
      "confirmedHitEventCount": 0,
      "helperIds": [
        34
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 34,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b537c",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "천조족",
      "familyName": "display-table fallback",
      "skillIdHex": "0x40",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d779c",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 12,
      "expandedFrameCount": 12,
      "rawDurationGate": 36,
      "expandedDurationGate": 36,
      "rawFrameGateSequence": [
        {
          "frame": 40,
          "gate": 6
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 40,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 9,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 15,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 21,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 27,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 32,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 34,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004d7824",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 0,
      "confirmedHitEventCount": 0,
      "helperIds": [
        34
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 34,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b537c",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "ataho",
      "ownerName": "아타호",
      "skillName": "천조족",
      "familyName": "display-table fallback",
      "skillIdHex": "0x41",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004d779c",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 12,
      "expandedFrameCount": 12,
      "rawDurationGate": 36,
      "expandedDurationGate": 36,
      "rawFrameGateSequence": [
        {
          "frame": 40,
          "gate": 6
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 42,
          "gate": 3
        },
        {
          "frame": 43,
          "gate": 3
        },
        {
          "frame": 41,
          "gate": 3
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 0,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 40,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 9,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 15,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 21,
          "frame": 42,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 43,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 27,
          "frame": 41,
          "gate": 3,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 32,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 34,
          "frame": 0,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004d7824",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 0,
      "confirmedHitEventCount": 0,
      "helperIds": [
        34
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 34,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b537c",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "손톱공격",
      "familyName": "display-table fallback",
      "skillIdHex": "0x01",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004db064",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 6,
      "expandedFrameCount": 6,
      "rawDurationGate": 16,
      "expandedDurationGate": 16,
      "rawFrameGateSequence": [
        {
          "frame": 20,
          "gate": 2
        },
        {
          "frame": 21,
          "gate": 6
        },
        {
          "frame": 22,
          "gate": 2
        },
        {
          "frame": 23,
          "gate": 2
        },
        {
          "frame": 23,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 20,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 21,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 22,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 23,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 23,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004db098",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "하이킥",
      "familyName": "display-table fallback",
      "skillIdHex": "0x02",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004db0b8",
      "startSource": "display-start-override",
      "confidence": "display-start-corrected-basic-action",
      "note": "하이킥은 btl_rs EXE rect #10/#11 high-kick script at 0x004db0b8; phase-table 0x0c duplicates 손톱공격.",
      "rawFrameCount": 4,
      "expandedFrameCount": 4,
      "rawDurationGate": 8,
      "expandedDurationGate": 8,
      "rawFrameGateSequence": [
        {
          "frame": 10,
          "gate": 2
        },
        {
          "frame": 11,
          "gate": 2
        },
        {
          "frame": 11,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 10,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 11,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 11,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004db0dc",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "미들킥",
      "familyName": "display-table fallback",
      "skillIdHex": "0x03",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004db0fc",
      "startSource": "display-start-override",
      "confidence": "display-start-corrected-basic-action",
      "note": "미들킥은 btl_rs EXE rect #12/#13 side-kick script at 0x004db0fc.",
      "rawFrameCount": 4,
      "expandedFrameCount": 4,
      "rawDurationGate": 8,
      "expandedDurationGate": 8,
      "rawFrameGateSequence": [
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 13,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 13,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004db120",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "로 킥",
      "familyName": "display-table fallback",
      "skillIdHex": "0x04",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004db140",
      "startSource": "display-start-override",
      "confidence": "display-start-corrected-basic-action",
      "note": "로 킥은 btl_rs EXE rect #14/#15 low-kick script at 0x004db140.",
      "rawFrameCount": 4,
      "expandedFrameCount": 4,
      "rawDurationGate": 8,
      "expandedDurationGate": 8,
      "rawFrameGateSequence": [
        {
          "frame": 14,
          "gate": 2
        },
        {
          "frame": 15,
          "gate": 2
        },
        {
          "frame": 15,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 14,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 15,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 15,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004db16c",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "도발",
      "familyName": "display-table fallback",
      "skillIdHex": "0x05",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004daf28",
      "startSource": "display-start-override",
      "confidence": "display-start-corrected-support-action",
      "note": "도발은 자기 상태 변경 payload(targetScope=1, family 0x2e)라 skillId+0x0a 공격 phase 0x0f를 타면 로 킥이 나온다. actor+0x60 direct status phase 0x06 및 btl_rs #51..#54 도발 자세 script 0x004daf28을 표시 시작점으로 쓴다.",
      "rawFrameCount": 13,
      "expandedFrameCount": 13,
      "rawDurationGate": 56,
      "expandedDurationGate": 56,
      "rawFrameGateSequence": [
        {
          "frame": 51,
          "gate": 4
        },
        {
          "frame": 52,
          "gate": 2
        },
        {
          "frame": 53,
          "gate": 4
        },
        {
          "frame": 51,
          "gate": 4
        },
        {
          "frame": 52,
          "gate": 2
        },
        {
          "frame": 53,
          "gate": 4
        },
        {
          "frame": 51,
          "gate": 4
        },
        {
          "frame": 52,
          "gate": 2
        },
        {
          "frame": 53,
          "gate": 4
        },
        {
          "frame": 54,
          "gate": 8
        },
        {
          "frame": 4,
          "gate": 6
        },
        {
          "frame": 5,
          "gate": 4
        },
        {
          "frame": 4,
          "gate": 8
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 51,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 52,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 53,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 51,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 52,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 53,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 51,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 52,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 26,
          "frame": 53,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 54,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 38,
          "frame": 4,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 44,
          "frame": 5,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 48,
          "frame": 4,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 0,
      "waitBarriers": [],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 0,
      "confirmedHitEventCount": 0,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-frame-gates"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "꼬챙이 꿰기",
      "familyName": "display-table fallback",
      "skillIdHex": "0x06",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004db1cc",
      "startSource": "display-start-override",
      "confidence": "display-start-corrected-weapon-basic-family",
      "note": "꼬챙이 꿰기 1번째 장비 변형은 phase table 0x10 -> 0x004db194를 그대로 쓰면 도발 tail과 같은 #4/#5/#4 보조 fragment만 나온다. 같은 이름/장비 기본기 family인 0x07/0x08이 phase 0x11/0x12에서 공유하는 0x004db1cc가 btl_rs #20..#23, helper 110, result WLK를 가진 실제 공격 본문이다.",
      "rawFrameCount": 6,
      "expandedFrameCount": 6,
      "rawDurationGate": 22,
      "expandedDurationGate": 22,
      "rawFrameGateSequence": [
        {
          "frame": 20,
          "gate": 8
        },
        {
          "frame": 21,
          "gate": 6
        },
        {
          "frame": 22,
          "gate": 2
        },
        {
          "frame": 23,
          "gate": 2
        },
        {
          "frame": 23,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 20,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 21,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 22,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 23,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 23,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004db204",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        110
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 110,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004bad1c",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004bad54",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 173,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 174,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 175,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "꼬챙이 꿰기",
      "familyName": "display-table fallback",
      "skillIdHex": "0x07",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004db1cc",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 6,
      "expandedFrameCount": 6,
      "rawDurationGate": 22,
      "expandedDurationGate": 22,
      "rawFrameGateSequence": [
        {
          "frame": 20,
          "gate": 8
        },
        {
          "frame": 21,
          "gate": 6
        },
        {
          "frame": 22,
          "gate": 2
        },
        {
          "frame": 23,
          "gate": 2
        },
        {
          "frame": 23,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 20,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 21,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 22,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 23,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 23,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004db204",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        110
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 110,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004bad1c",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004bad54",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 173,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 174,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 175,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "꼬챙이 꿰기",
      "familyName": "display-table fallback",
      "skillIdHex": "0x08",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004db1cc",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 6,
      "expandedFrameCount": 6,
      "rawDurationGate": 22,
      "expandedDurationGate": 22,
      "rawFrameGateSequence": [
        {
          "frame": 20,
          "gate": 8
        },
        {
          "frame": 21,
          "gate": 6
        },
        {
          "frame": 22,
          "gate": 2
        },
        {
          "frame": 23,
          "gate": 2
        },
        {
          "frame": 23,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 20,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 21,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 22,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 23,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 23,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004db204",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        110
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 110,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004bad1c",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004bad54",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 173,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 174,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 175,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "빙조권",
      "familyName": "display-table fallback",
      "skillIdHex": "0x19",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004db828",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 8,
      "expandedFrameCount": 14,
      "rawDurationGate": 26,
      "expandedDurationGate": 32,
      "rawFrameGateSequence": [
        {
          "frame": 33,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 16
        },
        {
          "frame": 38,
          "gate": 2
        },
        {
          "frame": 39,
          "gate": 1
        },
        {
          "frame": 39,
          "gate": 1
        },
        {
          "frame": 39,
          "gate": 1
        },
        {
          "frame": 39,
          "gate": 1
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 33,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 34,
          "gate": 16,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 38,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 39,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 21,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x004db8c4"
        },
        {
          "tick": 22,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x004db8c4"
        },
        {
          "tick": 23,
          "frame": 39,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 39,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 25,
          "frame": 39,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 26,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x004db944"
        },
        {
          "tick": 27,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x004db944"
        },
        {
          "tick": 28,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 3,
          "repeatSourceVaHex": "0x004db944"
        },
        {
          "tick": 29,
          "frame": 39,
          "gate": 1,
          "repeatIteration": 4,
          "repeatSourceVaHex": "0x004db944"
        },
        {
          "tick": 30,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 2,
      "repeatLoops": [
        {
          "vaHex": "0x004db8c4",
          "targetVaHex": "0x004db8a4",
          "repeatCount": 3,
          "summary": "repeat-loop count=3, target=0x004db8a4; handler stores target in object +0x3c and counter in +0x60"
        },
        {
          "vaHex": "0x004db944",
          "targetVaHex": "0x004db924",
          "repeatCount": 5,
          "summary": "repeat-loop count=5, target=0x004db924; handler stores target in object +0x3c and counter in +0x60"
        }
      ],
      "waitBarrierCount": 4,
      "waitBarriers": [
        {
          "vaHex": "0x004db8c0",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db8f0",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db918",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x004db940",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 10,
      "confirmedHitEventCount": 10,
      "helperIds": [
        95
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 95,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b9644",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "fixed-gate-repeat-expanded"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "흑영권",
      "familyName": "display-table fallback",
      "skillIdHex": "0x1a",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004db96c",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 6,
      "expandedFrameCount": 6,
      "rawDurationGate": 44,
      "expandedDurationGate": 44,
      "rawFrameGateSequence": [
        {
          "frame": 6,
          "gate": 2
        },
        {
          "frame": 7,
          "gate": 16
        },
        {
          "frame": 8,
          "gate": 2
        },
        {
          "frame": 9,
          "gate": 8
        },
        {
          "frame": 9,
          "gate": 14
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 6,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 7,
          "gate": 16,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 8,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 9,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 28,
          "frame": 9,
          "gate": 14,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 42,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x004db9a4",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004db9cc",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        70,
        77
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 3,
      "helperLoopCount": 1,
      "helperTiming": [
        {
          "helperId": 70,
          "syncSignals": [
            "frame-script-sync",
            "child-actor-flag",
            "actor-flag-sync",
            "looping-frame-script",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b7688",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 3,
          "loopingFrameScriptCount": 1,
          "frameScripts": [
            {
              "targetVaHex": "0x004b77a4",
              "durationGate": 43,
              "frameGateSequence": [
                {
                  "frame": 124,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 125,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 126,
                  "gate": 2,
                  "tick": 4
                },
                {
                  "frame": 127,
                  "gate": 2,
                  "tick": 6
                },
                {
                  "frame": 128,
                  "gate": 2,
                  "tick": 8
                },
                {
                  "frame": 129,
                  "gate": 2,
                  "tick": 10
                },
                {
                  "frame": 124,
                  "gate": 2,
                  "tick": 12
                },
                {
                  "frame": 125,
                  "gate": 2,
                  "tick": 14
                },
                {
                  "frame": 126,
                  "gate": 2,
                  "tick": 16
                },
                {
                  "frame": 127,
                  "gate": 2,
                  "tick": 18
                },
                {
                  "frame": 128,
                  "gate": 2,
                  "tick": 20
                },
                {
                  "frame": 129,
                  "gate": 2,
                  "tick": 22
                },
                {
                  "frame": 124,
                  "gate": 2,
                  "tick": 24
                },
                {
                  "frame": 125,
                  "gate": 2,
                  "tick": 26
                },
                {
                  "frame": 126,
                  "gate": 2,
                  "tick": 28
                },
                {
                  "frame": 127,
                  "gate": 2,
                  "tick": 30
                },
                {
                  "frame": 128,
                  "gate": 2,
                  "tick": 32
                },
                {
                  "frame": 129,
                  "gate": 2,
                  "tick": 34
                },
                {
                  "frame": 124,
                  "gate": 2,
                  "tick": 36
                },
                {
                  "frame": 125,
                  "gate": 2,
                  "tick": 38
                },
                {
                  "frame": 126,
                  "gate": 2,
                  "tick": 40
                },
                {
                  "frame": 127,
                  "gate": 1,
                  "tick": 42
                }
              ],
              "loopEvents": [
                {
                  "tick": 43,
                  "targetVaHex": "0x004b784c",
                  "repeatCount": null,
                  "vaHex": "0x004b7854"
                }
              ]
            }
          ]
        },
        {
          "helperId": 77,
          "syncSignals": [
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b7e58",
          "frameScriptCount": 0,
          "actorFlagCount": 0,
          "waitCount": 0,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "맹호열지조",
      "familyName": "display-table fallback",
      "skillIdHex": "0x1b",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004db9ec",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 6,
      "expandedFrameCount": 6,
      "rawDurationGate": 56,
      "expandedDurationGate": 56,
      "rawFrameGateSequence": [
        {
          "frame": 29,
          "gate": 2
        },
        {
          "frame": 30,
          "gate": 6
        },
        {
          "frame": 31,
          "gate": 2
        },
        {
          "frame": 32,
          "gate": 4
        },
        {
          "frame": 32,
          "gate": 40
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 29,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 30,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 31,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 32,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 32,
          "gate": 40,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 54,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004dba48",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        108
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 3,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 108,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004bab98",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 3,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "창룡파",
      "familyName": "display-table fallback",
      "skillIdHex": "0x2c",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004dbf40",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 34,
      "expandedFrameCount": 34,
      "rawDurationGate": 130,
      "expandedDurationGate": 130,
      "rawFrameGateSequence": [
        {
          "frame": 6,
          "gate": 2
        },
        {
          "frame": 7,
          "gate": 6
        },
        {
          "frame": 8,
          "gate": 2
        },
        {
          "frame": 9,
          "gate": 8
        },
        {
          "frame": 16,
          "gate": 2
        },
        {
          "frame": 17,
          "gate": 6
        },
        {
          "frame": 18,
          "gate": 2
        },
        {
          "frame": 19,
          "gate": 8
        },
        {
          "frame": 6,
          "gate": 2
        },
        {
          "frame": 7,
          "gate": 6
        },
        {
          "frame": 8,
          "gate": 2
        },
        {
          "frame": 9,
          "gate": 8
        },
        {
          "frame": 16,
          "gate": 2
        },
        {
          "frame": 17,
          "gate": 6
        },
        {
          "frame": 18,
          "gate": 2
        },
        {
          "frame": 19,
          "gate": 8
        },
        {
          "frame": 10,
          "gate": 2
        },
        {
          "frame": 11,
          "gate": 8
        },
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 8
        },
        {
          "frame": 14,
          "gate": 2
        },
        {
          "frame": 15,
          "gate": 8
        },
        {
          "frame": 33,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 6
        },
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 36,
          "gate": 2
        },
        {
          "frame": 37,
          "gate": 2
        },
        {
          "frame": 35,
          "gate": 2
        },
        {
          "frame": 34,
          "gate": 2
        },
        {
          "frame": 42,
          "gate": 2
        },
        {
          "frame": 42,
          "gate": 2
        },
        {
          "frame": 41,
          "gate": 2
        },
        {
          "frame": 40,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 6,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 7,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 8,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 9,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 16,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 17,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 26,
          "frame": 18,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 28,
          "frame": 19,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 36,
          "frame": 6,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 38,
          "frame": 7,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 44,
          "frame": 8,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 46,
          "frame": 9,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 54,
          "frame": 16,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 56,
          "frame": 17,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 62,
          "frame": 18,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 64,
          "frame": 19,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 72,
          "frame": 10,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 74,
          "frame": 11,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 82,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 84,
          "frame": 13,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 92,
          "frame": 14,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 94,
          "frame": 15,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 102,
          "frame": 33,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 104,
          "frame": 34,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 110,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 112,
          "frame": 36,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 114,
          "frame": 37,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 116,
          "frame": 35,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 118,
          "frame": 34,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 120,
          "frame": 42,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 122,
          "frame": 42,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 124,
          "frame": 41,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 126,
          "frame": 40,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 128,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004dc0d0",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        75
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 75,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b7c70",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "환영각",
      "familyName": "display-table fallback",
      "skillIdHex": "0x2d",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004dc2a4",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 6,
      "expandedFrameCount": 6,
      "rawDurationGate": 52,
      "expandedDurationGate": 52,
      "rawFrameGateSequence": [
        {
          "frame": 20,
          "gate": 2
        },
        {
          "frame": 21,
          "gate": 16
        },
        {
          "frame": 22,
          "gate": 2
        },
        {
          "frame": 23,
          "gate": 16
        },
        {
          "frame": 23,
          "gate": 14
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 20,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 21,
          "gate": 16,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 22,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 23,
          "gate": 16,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 36,
          "frame": 23,
          "gate": 14,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 50,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x004dc2cc",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004dc2f4",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        70,
        77
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 3,
      "helperLoopCount": 1,
      "helperTiming": [
        {
          "helperId": 70,
          "syncSignals": [
            "frame-script-sync",
            "child-actor-flag",
            "actor-flag-sync",
            "looping-frame-script",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b7688",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 3,
          "loopingFrameScriptCount": 1,
          "frameScripts": [
            {
              "targetVaHex": "0x004b77a4",
              "durationGate": 43,
              "frameGateSequence": [
                {
                  "frame": 124,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 125,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 126,
                  "gate": 2,
                  "tick": 4
                },
                {
                  "frame": 127,
                  "gate": 2,
                  "tick": 6
                },
                {
                  "frame": 128,
                  "gate": 2,
                  "tick": 8
                },
                {
                  "frame": 129,
                  "gate": 2,
                  "tick": 10
                },
                {
                  "frame": 124,
                  "gate": 2,
                  "tick": 12
                },
                {
                  "frame": 125,
                  "gate": 2,
                  "tick": 14
                },
                {
                  "frame": 126,
                  "gate": 2,
                  "tick": 16
                },
                {
                  "frame": 127,
                  "gate": 2,
                  "tick": 18
                },
                {
                  "frame": 128,
                  "gate": 2,
                  "tick": 20
                },
                {
                  "frame": 129,
                  "gate": 2,
                  "tick": 22
                },
                {
                  "frame": 124,
                  "gate": 2,
                  "tick": 24
                },
                {
                  "frame": 125,
                  "gate": 2,
                  "tick": 26
                },
                {
                  "frame": 126,
                  "gate": 2,
                  "tick": 28
                },
                {
                  "frame": 127,
                  "gate": 2,
                  "tick": 30
                },
                {
                  "frame": 128,
                  "gate": 2,
                  "tick": 32
                },
                {
                  "frame": 129,
                  "gate": 2,
                  "tick": 34
                },
                {
                  "frame": 124,
                  "gate": 2,
                  "tick": 36
                },
                {
                  "frame": 125,
                  "gate": 2,
                  "tick": 38
                },
                {
                  "frame": 126,
                  "gate": 2,
                  "tick": 40
                },
                {
                  "frame": 127,
                  "gate": 1,
                  "tick": 42
                }
              ],
              "loopEvents": [
                {
                  "tick": 43,
                  "targetVaHex": "0x004b784c",
                  "repeatCount": null,
                  "vaHex": "0x004b7854"
                }
              ]
            }
          ]
        },
        {
          "helperId": 77,
          "syncSignals": [
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b7e58",
          "frameScriptCount": 0,
          "actorFlagCount": 0,
          "waitCount": 0,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "맹호단공아",
      "familyName": "display-table fallback",
      "skillIdHex": "0x2e",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004dc30c",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 3,
      "expandedFrameCount": 3,
      "rawDurationGate": 12,
      "expandedDurationGate": 12,
      "rawFrameGateSequence": [
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 8
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 13,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x004dc334",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-gates-plus-engine-wait"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "도주",
      "familyName": "display-table fallback",
      "skillIdHex": "0x2f",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004dc358",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 8,
      "expandedFrameCount": 8,
      "rawDurationGate": 18,
      "expandedDurationGate": 18,
      "rawFrameGateSequence": [
        {
          "frame": 43,
          "gate": 4
        },
        {
          "frame": 44,
          "gate": 2
        },
        {
          "frame": 45,
          "gate": 2
        },
        {
          "frame": 46,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 2
        },
        {
          "frame": 23,
          "gate": 2
        },
        {
          "frame": 23,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 43,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 44,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 45,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 46,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 22,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 23,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 23,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x004dc3a0",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x004dc3c8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        17,
        65
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 4,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 65,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield"
          ],
          "childScriptVaHex": "0x004b7134",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 3,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 17,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3f64",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3f94",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 12,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 13,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 14,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "rinshan",
      "ownerName": "린샹",
      "skillName": "방어",
      "familyName": "display-table fallback",
      "skillIdHex": "0x30",
      "levelOrFixed": null,
      "entryStartVaHex": "0x004dc3e0",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 1,
      "expandedFrameCount": 1,
      "rawDurationGate": 8,
      "expandedDurationGate": 8,
      "rawFrameGateSequence": [
        {
          "frame": 3,
          "gate": 8
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 3,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 0,
      "waitBarriers": [],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 0,
      "confirmedHitEventCount": 0,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-frame-gates"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "베기",
      "familyName": "display-table fallback",
      "skillIdHex": "0x01",
      "levelOrFixed": null,
      "entryStartVaHex": "0x00524790",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 4,
      "expandedFrameCount": 4,
      "rawDurationGate": 8,
      "expandedDurationGate": 8,
      "rawFrameGateSequence": [
        {
          "frame": 20,
          "gate": 2
        },
        {
          "frame": 21,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 2
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 20,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 21,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 22,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x005247d4",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        13,
        43
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 13,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3d78",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3da8",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 0,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 1,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 2,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        },
        {
          "helperId": 43,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b60c8",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "마구베기",
      "familyName": "display-table fallback",
      "skillIdHex": "0x02",
      "levelOrFixed": null,
      "entryStartVaHex": "0x00524790",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 4,
      "expandedFrameCount": 4,
      "rawDurationGate": 8,
      "expandedDurationGate": 8,
      "rawFrameGateSequence": [
        {
          "frame": 20,
          "gate": 2
        },
        {
          "frame": 21,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 2
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 20,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 21,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 22,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x005247d4",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        13,
        43
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 13,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3d78",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3da8",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 0,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 1,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 2,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        },
        {
          "helperId": 43,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b60c8",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "마구베기",
      "familyName": "display-table fallback",
      "skillIdHex": "0x03",
      "levelOrFixed": null,
      "entryStartVaHex": "0x005247ec",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 6,
      "expandedFrameCount": 6,
      "rawDurationGate": 18,
      "expandedDurationGate": 18,
      "rawFrameGateSequence": [
        {
          "frame": 23,
          "gate": 2
        },
        {
          "frame": 24,
          "gate": 6
        },
        {
          "frame": 25,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 4
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 23,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 24,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 25,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 22,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 22,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x00524838",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        13,
        45
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 13,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3d78",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3da8",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 0,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 1,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 2,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        },
        {
          "helperId": 45,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b6178",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "마구베기",
      "familyName": "display-table fallback",
      "skillIdHex": "0x04",
      "levelOrFixed": null,
      "entryStartVaHex": "0x005247ec",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 6,
      "expandedFrameCount": 6,
      "rawDurationGate": 18,
      "expandedDurationGate": 18,
      "rawFrameGateSequence": [
        {
          "frame": 23,
          "gate": 2
        },
        {
          "frame": 24,
          "gate": 6
        },
        {
          "frame": 25,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 4
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 23,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 24,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 25,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 22,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 22,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x00524838",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        13,
        45
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 13,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3d78",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3da8",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 0,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 1,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 2,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        },
        {
          "helperId": 45,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b6178",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "정열의 붉은마검",
      "familyName": "display-table fallback",
      "skillIdHex": "0x11",
      "levelOrFixed": null,
      "entryStartVaHex": "0x00524a6c",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 18,
      "expandedFrameCount": 42,
      "rawDurationGate": 40,
      "expandedDurationGate": 88,
      "rawFrameGateSequence": [
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 27,
          "gate": 2
        },
        {
          "frame": 28,
          "gate": 2
        },
        {
          "frame": 29,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 27,
          "gate": 2
        },
        {
          "frame": 28,
          "gate": 2
        },
        {
          "frame": 29,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 27,
          "gate": 2
        },
        {
          "frame": 28,
          "gate": 2
        },
        {
          "frame": 29,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 27,
          "gate": 2
        },
        {
          "frame": 28,
          "gate": 2
        },
        {
          "frame": 29,
          "gate": 2
        },
        {
          "frame": 2,
          "gate": 2
        },
        {
          "frame": 2,
          "gate": 6
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 27,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 28,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 29,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 26,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524ac4"
        },
        {
          "tick": 10,
          "frame": 27,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524ac4"
        },
        {
          "tick": 12,
          "frame": 28,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524ac4"
        },
        {
          "tick": 14,
          "frame": 29,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524ac4"
        },
        {
          "tick": 16,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 27,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 28,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 22,
          "frame": 29,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 26,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524af8"
        },
        {
          "tick": 26,
          "frame": 27,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524af8"
        },
        {
          "tick": 28,
          "frame": 28,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524af8"
        },
        {
          "tick": 30,
          "frame": 29,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524af8"
        },
        {
          "tick": 32,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 34,
          "frame": 27,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 36,
          "frame": 28,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 38,
          "frame": 29,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 40,
          "frame": 26,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524b2c"
        },
        {
          "tick": 42,
          "frame": 27,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524b2c"
        },
        {
          "tick": 44,
          "frame": 28,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524b2c"
        },
        {
          "tick": 46,
          "frame": 29,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524b2c"
        },
        {
          "tick": 48,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 50,
          "frame": 27,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 52,
          "frame": 28,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 54,
          "frame": 29,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 56,
          "frame": 26,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524b60"
        },
        {
          "tick": 58,
          "frame": 27,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524b60"
        },
        {
          "tick": 60,
          "frame": 28,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524b60"
        },
        {
          "tick": 62,
          "frame": 29,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x00524b60"
        },
        {
          "tick": 64,
          "frame": 26,
          "gate": 2,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x00524b60"
        },
        {
          "tick": 66,
          "frame": 27,
          "gate": 2,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x00524b60"
        },
        {
          "tick": 68,
          "frame": 28,
          "gate": 2,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x00524b60"
        },
        {
          "tick": 70,
          "frame": 29,
          "gate": 2,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x00524b60"
        },
        {
          "tick": 72,
          "frame": 26,
          "gate": 2,
          "repeatIteration": 3,
          "repeatSourceVaHex": "0x00524b60"
        },
        {
          "tick": 74,
          "frame": 27,
          "gate": 2,
          "repeatIteration": 3,
          "repeatSourceVaHex": "0x00524b60"
        },
        {
          "tick": 76,
          "frame": 28,
          "gate": 2,
          "repeatIteration": 3,
          "repeatSourceVaHex": "0x00524b60"
        },
        {
          "tick": 78,
          "frame": 29,
          "gate": 2,
          "repeatIteration": 3,
          "repeatSourceVaHex": "0x00524b60"
        },
        {
          "tick": 80,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 82,
          "frame": 2,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 4,
      "repeatLoops": [
        {
          "vaHex": "0x00524ac4",
          "targetVaHex": "0x00524aa0",
          "repeatCount": 2,
          "summary": "repeat-loop count=2, target=0x00524aa0; handler stores target in object +0x3c and counter in +0x60"
        },
        {
          "vaHex": "0x00524af8",
          "targetVaHex": "0x00524ad4",
          "repeatCount": 2,
          "summary": "repeat-loop count=2, target=0x00524ad4; handler stores target in object +0x3c and counter in +0x60"
        },
        {
          "vaHex": "0x00524b2c",
          "targetVaHex": "0x00524b08",
          "repeatCount": 2,
          "summary": "repeat-loop count=2, target=0x00524b08; handler stores target in object +0x3c and counter in +0x60"
        },
        {
          "vaHex": "0x00524b60",
          "targetVaHex": "0x00524b3c",
          "repeatCount": 4,
          "summary": "repeat-loop count=4, target=0x00524b3c; handler stores target in object +0x3c and counter in +0x60"
        }
      ],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x00524b94",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        17
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 1,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 17,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3f64",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3f94",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 12,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 13,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 14,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "fixed-gate-repeat-expanded"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "절사어면",
      "familyName": "display-table fallback",
      "skillIdHex": "0x12",
      "levelOrFixed": null,
      "entryStartVaHex": "0x00524c70",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 5,
      "expandedFrameCount": 5,
      "rawDurationGate": 19,
      "expandedDurationGate": 19,
      "rawFrameGateSequence": [
        {
          "frame": 23,
          "gate": 2
        },
        {
          "frame": 24,
          "gate": 6
        },
        {
          "frame": 25,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 7
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 23,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 24,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 25,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 22,
          "gate": 7,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 17,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x00524cc8",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        78
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 3,
      "helperLoopCount": 1,
      "helperTiming": [
        {
          "helperId": 78,
          "syncSignals": [
            "frame-script-sync",
            "child-actor-flag",
            "actor-flag-sync",
            "looping-frame-script",
            "wait/yield",
            "frame-gate-timeline",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b7f7c",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 3,
          "loopingFrameScriptCount": 1,
          "frameScripts": [
            {
              "targetVaHex": "0x004b80d4",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 140,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 141,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 142,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": [
                {
                  "tick": 6,
                  "targetVaHex": "0x004b80d4",
                  "repeatCount": null,
                  "vaHex": "0x004b80ec"
                }
              ]
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "난도질",
      "familyName": "display-table fallback",
      "skillIdHex": "0x13",
      "levelOrFixed": null,
      "entryStartVaHex": "0x00524ce4",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 11,
      "expandedFrameCount": 11,
      "rawDurationGate": 50,
      "expandedDurationGate": 50,
      "rawFrameGateSequence": [
        {
          "frame": 7,
          "gate": 4
        },
        {
          "frame": 8,
          "gate": 6
        },
        {
          "frame": 9,
          "gate": 6
        },
        {
          "frame": 9,
          "gate": 2
        },
        {
          "frame": 9,
          "gate": 2
        },
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 1
        },
        {
          "frame": 13,
          "gate": 15
        },
        {
          "frame": 18,
          "gate": 4
        },
        {
          "frame": 18,
          "gate": 6
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 7,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 8,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 9,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 9,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 9,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 22,
          "frame": 13,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 23,
          "frame": 13,
          "gate": 15,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 38,
          "frame": 18,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 42,
          "frame": 18,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 48,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 4,
      "waitBarriers": [
        {
          "vaHex": "0x00524d1c",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x00524d40",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x00524d80",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x00524db0",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 4,
      "confirmedHitEventCount": 4,
      "helperIds": [
        12,
        13,
        43
      ],
      "helperFrameScriptCount": 3,
      "helperWaitCount": 4,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 12,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3ccc",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3d18",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 65,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 66,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 67,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        },
        {
          "helperId": 12,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3ccc",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3d18",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 65,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 66,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 67,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        },
        {
          "helperId": 13,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3d78",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3da8",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 0,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 1,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 2,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        },
        {
          "helperId": 43,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b60c8",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "열시섬",
      "familyName": "display-table fallback",
      "skillIdHex": "0x20",
      "levelOrFixed": null,
      "entryStartVaHex": "0x00525540",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 16,
      "expandedFrameCount": 20,
      "rawDurationGate": 38,
      "expandedDurationGate": 46,
      "rawFrameGateSequence": [
        {
          "frame": 21,
          "gate": 2
        },
        {
          "frame": 22,
          "gate": 4
        },
        {
          "frame": 16,
          "gate": 2
        },
        {
          "frame": 17,
          "gate": 4
        },
        {
          "frame": 21,
          "gate": 1
        },
        {
          "frame": 21,
          "gate": 1
        },
        {
          "frame": 22,
          "gate": 4
        },
        {
          "frame": 16,
          "gate": 2
        },
        {
          "frame": 17,
          "gate": 4
        },
        {
          "frame": 17,
          "gate": 2
        },
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 27,
          "gate": 2
        },
        {
          "frame": 28,
          "gate": 2
        },
        {
          "frame": 29,
          "gate": 2
        },
        {
          "frame": 2,
          "gate": 2
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 21,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 22,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 16,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 17,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 21,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 13,
          "frame": 21,
          "gate": 1,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 14,
          "frame": 22,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 18,
          "frame": 16,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 20,
          "frame": 17,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 24,
          "frame": 17,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 26,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 28,
          "frame": 27,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 28,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 32,
          "frame": 29,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 34,
          "frame": 26,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x005255e0"
        },
        {
          "tick": 36,
          "frame": 27,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x005255e0"
        },
        {
          "tick": 38,
          "frame": 28,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x005255e0"
        },
        {
          "tick": 40,
          "frame": 29,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x005255e0"
        },
        {
          "tick": 42,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 44,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 1,
      "repeatLoops": [
        {
          "vaHex": "0x005255e0",
          "targetVaHex": "0x005255c0",
          "repeatCount": 2,
          "summary": "repeat-loop count=2, target=0x005255c0; handler stores target in object +0x3c and counter in +0x60"
        }
      ],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x005255b0",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x00525610",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        17,
        83
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 16,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 83,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield"
          ],
          "childScriptVaHex": "0x004b84ec",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 15,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        },
        {
          "helperId": 17,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3f64",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3f94",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 12,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 13,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 14,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "fixed-gate-repeat-expanded"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "냉도투무",
      "familyName": "display-table fallback",
      "skillIdHex": "0x21",
      "levelOrFixed": null,
      "entryStartVaHex": "0x00525728",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 5,
      "expandedFrameCount": 5,
      "rawDurationGate": 17,
      "expandedDurationGate": 17,
      "rawFrameGateSequence": [
        {
          "frame": 10,
          "gate": 2
        },
        {
          "frame": 11,
          "gate": 4
        },
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 7
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 10,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 11,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 13,
          "gate": 7,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 15,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x00525770",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        78
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 3,
      "helperLoopCount": 1,
      "helperTiming": [
        {
          "helperId": 78,
          "syncSignals": [
            "frame-script-sync",
            "child-actor-flag",
            "actor-flag-sync",
            "looping-frame-script",
            "wait/yield",
            "frame-gate-timeline",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b7f7c",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 3,
          "loopingFrameScriptCount": 1,
          "frameScripts": [
            {
              "targetVaHex": "0x004b80d4",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 140,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 141,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 142,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": [
                {
                  "tick": 6,
                  "targetVaHex": "0x004b80d4",
                  "repeatCount": null,
                  "vaHex": "0x004b80ec"
                }
              ]
            }
          ]
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "투신의 춤",
      "familyName": "display-table fallback",
      "skillIdHex": "0x22",
      "levelOrFixed": null,
      "entryStartVaHex": "0x00525794",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 8,
      "expandedFrameCount": 8,
      "rawDurationGate": 32,
      "expandedDurationGate": 32,
      "rawFrameGateSequence": [
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 2
        },
        {
          "frame": 16,
          "gate": 2
        },
        {
          "frame": 17,
          "gate": 2
        },
        {
          "frame": 12,
          "gate": 2
        },
        {
          "frame": 13,
          "gate": 6
        },
        {
          "frame": 13,
          "gate": 14
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 13,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 16,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 17,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 12,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 10,
          "frame": 13,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 16,
          "frame": 13,
          "gate": 14,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 30,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 2,
      "waitBarriers": [
        {
          "vaHex": "0x005257e4",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        },
        {
          "vaHex": "0x0052580c",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 1,
      "confirmedHitEventCount": 1,
      "helperIds": [
        70,
        77
      ],
      "helperFrameScriptCount": 1,
      "helperWaitCount": 3,
      "helperLoopCount": 1,
      "helperTiming": [
        {
          "helperId": 70,
          "syncSignals": [
            "frame-script-sync",
            "child-actor-flag",
            "actor-flag-sync",
            "looping-frame-script",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b7688",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 3,
          "loopingFrameScriptCount": 1,
          "frameScripts": [
            {
              "targetVaHex": "0x004b77a4",
              "durationGate": 43,
              "frameGateSequence": [
                {
                  "frame": 124,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 125,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 126,
                  "gate": 2,
                  "tick": 4
                },
                {
                  "frame": 127,
                  "gate": 2,
                  "tick": 6
                },
                {
                  "frame": 128,
                  "gate": 2,
                  "tick": 8
                },
                {
                  "frame": 129,
                  "gate": 2,
                  "tick": 10
                },
                {
                  "frame": 124,
                  "gate": 2,
                  "tick": 12
                },
                {
                  "frame": 125,
                  "gate": 2,
                  "tick": 14
                },
                {
                  "frame": 126,
                  "gate": 2,
                  "tick": 16
                },
                {
                  "frame": 127,
                  "gate": 2,
                  "tick": 18
                },
                {
                  "frame": 128,
                  "gate": 2,
                  "tick": 20
                },
                {
                  "frame": 129,
                  "gate": 2,
                  "tick": 22
                },
                {
                  "frame": 124,
                  "gate": 2,
                  "tick": 24
                },
                {
                  "frame": 125,
                  "gate": 2,
                  "tick": 26
                },
                {
                  "frame": 126,
                  "gate": 2,
                  "tick": 28
                },
                {
                  "frame": 127,
                  "gate": 2,
                  "tick": 30
                },
                {
                  "frame": 128,
                  "gate": 2,
                  "tick": 32
                },
                {
                  "frame": 129,
                  "gate": 2,
                  "tick": 34
                },
                {
                  "frame": 124,
                  "gate": 2,
                  "tick": 36
                },
                {
                  "frame": 125,
                  "gate": 2,
                  "tick": 38
                },
                {
                  "frame": 126,
                  "gate": 2,
                  "tick": 40
                },
                {
                  "frame": 127,
                  "gate": 1,
                  "tick": 42
                }
              ],
              "loopEvents": [
                {
                  "tick": 43,
                  "targetVaHex": "0x004b784c",
                  "repeatCount": null,
                  "vaHex": "0x004b7854"
                }
              ]
            }
          ]
        },
        {
          "helperId": 77,
          "syncSignals": [
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b7e58",
          "frameScriptCount": 0,
          "actorFlagCount": 0,
          "waitCount": 0,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait-and-helper"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "도주",
      "familyName": "display-table fallback",
      "skillIdHex": "0x23",
      "levelOrFixed": null,
      "entryStartVaHex": "0x0052582c",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 19,
      "expandedFrameCount": 43,
      "rawDurationGate": 50,
      "expandedDurationGate": 98,
      "rawFrameGateSequence": [
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 27,
          "gate": 2
        },
        {
          "frame": 28,
          "gate": 2
        },
        {
          "frame": 29,
          "gate": 2
        },
        {
          "frame": 32,
          "gate": 2
        },
        {
          "frame": 32,
          "gate": 6
        },
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 27,
          "gate": 2
        },
        {
          "frame": 28,
          "gate": 2
        },
        {
          "frame": 29,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 2
        },
        {
          "frame": 3,
          "gate": 6
        },
        {
          "frame": 26,
          "gate": 2
        },
        {
          "frame": 27,
          "gate": 2
        },
        {
          "frame": 28,
          "gate": 2
        },
        {
          "frame": 29,
          "gate": 2
        },
        {
          "frame": 30,
          "gate": 2
        },
        {
          "frame": 30,
          "gate": 6
        },
        {
          "frame": 2,
          "gate": 2
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 2,
          "frame": 27,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 28,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 6,
          "frame": 29,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 26,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x0052585c"
        },
        {
          "tick": 10,
          "frame": 27,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x0052585c"
        },
        {
          "tick": 12,
          "frame": 28,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x0052585c"
        },
        {
          "tick": 14,
          "frame": 29,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x0052585c"
        },
        {
          "tick": 16,
          "frame": 26,
          "gate": 2,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x0052585c"
        },
        {
          "tick": 18,
          "frame": 27,
          "gate": 2,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x0052585c"
        },
        {
          "tick": 20,
          "frame": 28,
          "gate": 2,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x0052585c"
        },
        {
          "tick": 22,
          "frame": 29,
          "gate": 2,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x0052585c"
        },
        {
          "tick": 24,
          "frame": 32,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 26,
          "frame": 32,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 32,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 34,
          "frame": 27,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 36,
          "frame": 28,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 38,
          "frame": 29,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 40,
          "frame": 26,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x005258c4"
        },
        {
          "tick": 42,
          "frame": 27,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x005258c4"
        },
        {
          "tick": 44,
          "frame": 28,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x005258c4"
        },
        {
          "tick": 46,
          "frame": 29,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x005258c4"
        },
        {
          "tick": 48,
          "frame": 26,
          "gate": 2,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x005258c4"
        },
        {
          "tick": 50,
          "frame": 27,
          "gate": 2,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x005258c4"
        },
        {
          "tick": 52,
          "frame": 28,
          "gate": 2,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x005258c4"
        },
        {
          "tick": 54,
          "frame": 29,
          "gate": 2,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x005258c4"
        },
        {
          "tick": 56,
          "frame": 3,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 58,
          "frame": 3,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 64,
          "frame": 26,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 66,
          "frame": 27,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 68,
          "frame": 28,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 70,
          "frame": 29,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 72,
          "frame": 26,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x0052592c"
        },
        {
          "tick": 74,
          "frame": 27,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x0052592c"
        },
        {
          "tick": 76,
          "frame": 28,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x0052592c"
        },
        {
          "tick": 78,
          "frame": 29,
          "gate": 2,
          "repeatIteration": 1,
          "repeatSourceVaHex": "0x0052592c"
        },
        {
          "tick": 80,
          "frame": 26,
          "gate": 2,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x0052592c"
        },
        {
          "tick": 82,
          "frame": 27,
          "gate": 2,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x0052592c"
        },
        {
          "tick": 84,
          "frame": 28,
          "gate": 2,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x0052592c"
        },
        {
          "tick": 86,
          "frame": 29,
          "gate": 2,
          "repeatIteration": 2,
          "repeatSourceVaHex": "0x0052592c"
        },
        {
          "tick": 88,
          "frame": 30,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 90,
          "frame": 30,
          "gate": 6,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 96,
          "frame": 2,
          "gate": 2,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 3,
      "repeatLoops": [
        {
          "vaHex": "0x0052585c",
          "targetVaHex": "0x00525838",
          "repeatCount": 3,
          "summary": "repeat-loop count=3, target=0x00525838; handler stores target in object +0x3c and counter in +0x60"
        },
        {
          "vaHex": "0x005258c4",
          "targetVaHex": "0x005258a0",
          "repeatCount": 3,
          "summary": "repeat-loop count=3, target=0x005258a0; handler stores target in object +0x3c and counter in +0x60"
        },
        {
          "vaHex": "0x0052592c",
          "targetVaHex": "0x00525908",
          "repeatCount": 3,
          "summary": "repeat-loop count=3, target=0x00525908; handler stores target in object +0x3c and counter in +0x60"
        }
      ],
      "waitBarrierCount": 3,
      "waitBarriers": [
        {
          "vaHex": "0x0052588c",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x005258f4",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        },
        {
          "vaHex": "0x0052595c",
          "opcode": "0xbf",
          "waitKind": "result/reaction-barrier",
          "summary": "display/actor busy barrier; waits for active actor/display flags to clear before advancing",
          "bytes": "bf 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 3,
      "confirmedHitEventCount": 3,
      "helperIds": [
        17
      ],
      "helperFrameScriptCount": 3,
      "helperWaitCount": 3,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 17,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3f64",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3f94",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 12,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 13,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 14,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        },
        {
          "helperId": 17,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3f64",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3f94",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 12,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 13,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 14,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        },
        {
          "helperId": 17,
          "syncSignals": [
            "frame-script-sync",
            "actor-flag-sync",
            "wait/yield",
            "frame-gate-timeline"
          ],
          "childScriptVaHex": "0x004b3f64",
          "frameScriptCount": 1,
          "actorFlagCount": 1,
          "waitCount": 1,
          "loopingFrameScriptCount": 0,
          "frameScripts": [
            {
              "targetVaHex": "0x004b3f94",
              "durationGate": 6,
              "frameGateSequence": [
                {
                  "frame": 12,
                  "gate": 2,
                  "tick": 0
                },
                {
                  "frame": 13,
                  "gate": 2,
                  "tick": 2
                },
                {
                  "frame": 14,
                  "gate": 2,
                  "tick": 4
                }
              ],
              "loopEvents": []
            }
          ]
        }
      ],
      "timingClass": "fixed-gate-repeat-expanded"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "방어",
      "familyName": "display-table fallback",
      "skillIdHex": "0x24",
      "levelOrFixed": null,
      "entryStartVaHex": "0x00525980",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 1,
      "expandedFrameCount": 1,
      "rawDurationGate": 8,
      "expandedDurationGate": 8,
      "rawFrameGateSequence": [
        {
          "frame": 0,
          "gate": 8
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 0,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 0,
      "waitBarriers": [],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 0,
      "confirmedHitEventCount": 0,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-frame-gates"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "눈요기",
      "familyName": "display-table fallback",
      "skillIdHex": "0x25",
      "levelOrFixed": null,
      "entryStartVaHex": "0x0052599c",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 1,
      "expandedFrameCount": 1,
      "rawDurationGate": 8,
      "expandedDurationGate": 8,
      "rawFrameGateSequence": [
        {
          "frame": 2,
          "gate": 8
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 2,
          "gate": 8,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 0,
      "waitBarriers": [],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 0,
      "confirmedHitEventCount": 0,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-frame-gates"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "인법·몸감추기",
      "familyName": "display-table fallback",
      "skillIdHex": "0x26",
      "levelOrFixed": null,
      "entryStartVaHex": "0x005259bc",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 1,
      "expandedFrameCount": 1,
      "rawDurationGate": 16,
      "expandedDurationGate": 16,
      "rawFrameGateSequence": [
        {
          "frame": 3,
          "gate": 16
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 3,
          "gate": 16,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 0,
      "waitBarriers": [],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 0,
      "confirmedHitEventCount": 0,
      "helperIds": [],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 0,
      "helperLoopCount": 0,
      "helperTiming": [],
      "timingClass": "actor-frame-gates"
    },
    {
      "ownerKey": "smashu",
      "ownerName": "스마슈",
      "skillName": "신격방어",
      "familyName": "display-table fallback",
      "skillIdHex": "0x27",
      "levelOrFixed": null,
      "entryStartVaHex": "0x005259dc",
      "startSource": "display-table-phase-pointer",
      "confidence": "display-table-phase-pointer",
      "note": "Fallback/payload-only row promoted by the per-actor display VM pointer table indexed by phase = skillId + 0x0a.",
      "rawFrameCount": 4,
      "expandedFrameCount": 4,
      "rawDurationGate": 16,
      "expandedDurationGate": 16,
      "rawFrameGateSequence": [
        {
          "frame": 6,
          "gate": 4
        },
        {
          "frame": 4,
          "gate": 4
        },
        {
          "frame": 40,
          "gate": 4
        },
        {
          "frame": 41,
          "gate": 4
        }
      ],
      "expandedFrameGateSequence": [
        {
          "tick": 0,
          "frame": 6,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 4,
          "frame": 4,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 8,
          "frame": 40,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        },
        {
          "tick": 12,
          "frame": 41,
          "gate": 4,
          "repeatIteration": null,
          "repeatSourceVaHex": null
        }
      ],
      "expandedRepeatLoopCount": 0,
      "repeatLoops": [],
      "waitBarrierCount": 1,
      "waitBarriers": [
        {
          "vaHex": "0x00525a04",
          "opcode": "0xc1",
          "waitKind": "actor-flag-barrier",
          "summary": "actor flag barrier mode=0, mask=0x00000002",
          "bytes": "c1 00 00 00 02 00 00 00"
        }
      ],
      "directFrameSelectorCount": 0,
      "resultHitEventCount": 0,
      "confirmedHitEventCount": 0,
      "helperIds": [
        42
      ],
      "helperFrameScriptCount": 0,
      "helperWaitCount": 2,
      "helperLoopCount": 0,
      "helperTiming": [
        {
          "helperId": 42,
          "syncSignals": [
            "child-actor-flag",
            "actor-flag-sync",
            "wait/yield",
            "spawn-tree-direct-init-frame"
          ],
          "childScriptVaHex": "0x004b5f94",
          "frameScriptCount": 0,
          "actorFlagCount": 1,
          "waitCount": 2,
          "loopingFrameScriptCount": 0,
          "frameScripts": []
        }
      ],
      "timingClass": "actor-gates-plus-engine-wait"
    }
  ]
}
