{
  "kind": "hwanse-surface-wrapper-catalog-review",
  "status": "wrapper-grid-vs-descriptor-catalog-classified",
  "source": [
    "out/cns_precut_catalog_review.json",
    "out/cns_rect_review_data.json",
    "out/render_pipeline_model_review.json",
    "docs/map3_active_object_overlay_notes.md",
    "docs/DIRECTDRAW_NOTES.md"
  ],
  "summary": {
    "surfaceWrapperTable": "0x0055abd8",
    "objectDrawSourceField": "object+0x28",
    "wrapperFieldOffsets": {
      "+0x2e": "cell/source width",
      "+0x30": "cell/source height",
      "+0x32": "columns",
      "+0x34": "group table candidate"
    },
    "assetRows": 132,
    "joinedRectRows": 130,
    "descriptorPlus4Assets": 114,
    "descriptorPlus4VariableOrOffsetAssets": 95,
    "fixedGridAssets": 6,
    "windowTemplateAssets": 1,
    "noPrecutEvidenceAssets": 11,
    "modeCounts": {
      "descriptor-plus4-source-rect-catalog": 114,
      "fixed-grid-sheet": 6,
      "no-precut-evidence": 11,
      "window-template-region-catalog": 1
    },
    "wrapperRoleCounts": {
      "surface-slot-plus-dispatch": 95,
      "surface-slot-with-uniform-looking-descriptor": 19,
      "grid-sheet-consumer": 6,
      "not-bound-in-precut-catalog": 11,
      "window-template-system": 1
    },
    "confidenceCounts": {
      "high": 100,
      "medium": 32
    },
    "wrapperGridFullyExplainsDescriptorCatalogs": false,
    "coreConclusion": "The surface-wrapper path is grounded as a slot/grid draw mechanism, but most actor/monster/effect CNS assets are grounded by descriptor +4 source-rect catalogs.  The wrapper grid fields should not replace those variable source-rect tables."
  },
  "consumerEvidence": [
    {
      "vaHex": "0x004175d3",
      "meaning": "generic draw wrapper stores packed draw source into temporary object +0x28 and x/y into +0x1c/+0x20",
      "classification": "grounded-consumer"
    },
    {
      "vaHex": "0x0041747b",
      "meaning": "draw dispatcher extracts object+0x28 high word and indexes 0x0055abd8 surface wrapper table",
      "classification": "grounded-consumer"
    },
    {
      "vaHex": "0x004199a0",
      "meaning": "low-word frame/tile index is converted by wrapper +0x2e/+0x30/+0x32 in the uniform-grid path",
      "classification": "grounded-grid-converter"
    },
    {
      "vaHex": "0x00416ce2",
      "meaning": "active object path also consumes object+0x28 for source selector and surface slot",
      "classification": "grounded-active-object-consumer"
    }
  ],
  "modelBoundaries": [
    {
      "area": "fixed-grid sheets",
      "assets": [
        "face_01",
        "01234567",
        "icon",
        "icon_s",
        "item",
        "num"
      ],
      "conclusion": "cell-grid rendering is sufficient for these confirmed/review grid sheets"
    },
    {
      "area": "descriptor +4 catalogs",
      "assets": 114,
      "conclusion": "source rects come from CNS descriptor +4-bound tables; many have variable sizes and/or offset2"
    },
    {
      "area": "window.cns",
      "assets": [
        "window"
      ],
      "conclusion": "uses template/region records; keep separate from wrapper-grid and descriptor +4 models"
    },
    {
      "area": "full-screen/no-precut assets",
      "assets": [
        "cara_14",
        "zky_nmk",
        "aaa",
        "compile",
        "ds14_a",
        "ds14_b",
        "ds14_ed",
        "ed_compi",
        "p_sp",
        "p_wb",
        "title"
      ],
      "conclusion": "not explained by promoted wrapper/precut evidence; do not fabricate rect catalogs"
    }
  ],
  "rows": [
    {
      "asset": "btl_at",
      "cns": "btl_at.cns",
      "category": "battle",
      "categoryLabel": "전투/효과",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 66,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004d5887",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table",
      "rectCount": 66,
      "uniqueSizeCount": 6,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 48,
          "h": 80
        },
        {
          "w": 64,
          "h": 32
        },
        {
          "w": 64,
          "h": 64
        },
        {
          "w": 64,
          "h": 80
        },
        {
          "w": 80,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004d5887",
          "frameCount": 66,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004d5887",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 66,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "invalid-terminator"
      }
    },
    {
      "asset": "btl_atu",
      "cns": "btl_atu.cns",
      "category": "battle",
      "categoryLabel": "전투/효과",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 25,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004b15c4",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table",
      "rectCount": 25,
      "uniqueSizeCount": 4,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 64,
          "h": 32
        },
        {
          "w": 64,
          "h": 64
        },
        {
          "w": 64,
          "h": 80
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004b15c4",
          "frameCount": 25,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004b15c4",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 25,
        "hasOffset2": true,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "invalid-terminator"
      }
    },
    {
      "asset": "btl_efc",
      "cns": "btl_efc.cns",
      "category": "battle",
      "categoryLabel": "전투/효과",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 220,
      "tableCount": 2,
      "bestTableStartVaHex": "0x004b28c4",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table",
      "rectCount": 209,
      "uniqueSizeCount": 20,
      "uniqueSizes": [
        {
          "w": 16,
          "h": 16
        },
        {
          "w": 16,
          "h": 32
        },
        {
          "w": 16,
          "h": 48
        },
        {
          "w": 16,
          "h": 64
        },
        {
          "w": 16,
          "h": 80
        },
        {
          "w": 32,
          "h": 16
        },
        {
          "w": 32,
          "h": 32
        },
        {
          "w": 32,
          "h": 48
        },
        {
          "w": 32,
          "h": 64
        },
        {
          "w": 48,
          "h": 16
        },
        {
          "w": 48,
          "h": 32
        },
        {
          "w": 48,
          "h": 48
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004b28c4",
          "frameCount": 209,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        },
        {
          "tableStartVaHex": "0x004e77a9",
          "frameCount": 11,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004b28c4",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 209,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "invalid-terminator"
      }
    },
    {
      "asset": "btl_etc",
      "cns": "btl_etc.cns",
      "category": "battle",
      "categoryLabel": "전투/효과",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 83,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004b23a4",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table",
      "rectCount": 83,
      "uniqueSizeCount": 5,
      "uniqueSizes": [
        {
          "w": 8,
          "h": 16
        },
        {
          "w": 16,
          "h": 16
        },
        {
          "w": 24,
          "h": 16
        },
        {
          "w": 32,
          "h": 16
        },
        {
          "w": 32,
          "h": 32
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004b23a4",
          "frameCount": 83,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004b23a4",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 83,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "btl_rs",
      "cns": "btl_rs.cns",
      "category": "battle",
      "categoryLabel": "전투/효과",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 55,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004da8ab",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table",
      "rectCount": 55,
      "uniqueSizeCount": 8,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 48,
          "h": 80
        },
        {
          "w": 64,
          "h": 64
        },
        {
          "w": 80,
          "h": 48
        },
        {
          "w": 80,
          "h": 64
        },
        {
          "w": 80,
          "h": 80
        },
        {
          "w": 80,
          "h": 96
        },
        {
          "w": 96,
          "h": 48
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004da8ab",
          "frameCount": 55,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004da8ab",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 55,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "invalid-terminator"
      }
    },
    {
      "asset": "btl_rsu",
      "cns": "btl_rsu.cns",
      "category": "battle",
      "categoryLabel": "전투/효과",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 31,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004f9678",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table",
      "rectCount": 31,
      "uniqueSizeCount": 7,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 48,
          "h": 80
        },
        {
          "w": 64,
          "h": 64
        },
        {
          "w": 80,
          "h": 48
        },
        {
          "w": 80,
          "h": 64
        },
        {
          "w": 80,
          "h": 80
        },
        {
          "w": 80,
          "h": 96
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004f9678",
          "frameCount": 31,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004f9678",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 31,
        "hasOffset2": true,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "invalid-terminator"
      }
    },
    {
      "asset": "btl_sm",
      "cns": "btl_sm.cns",
      "category": "battle",
      "categoryLabel": "전투/효과",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 45,
      "tableCount": 1,
      "bestTableStartVaHex": "0x0052407f",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table",
      "rectCount": 45,
      "uniqueSizeCount": 6,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 64,
          "h": 64
        },
        {
          "w": 64,
          "h": 80
        },
        {
          "w": 80,
          "h": 48
        },
        {
          "w": 80,
          "h": 64
        },
        {
          "w": 112,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0052407f",
          "frameCount": 45,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0052407f",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 45,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "invalid-terminator"
      }
    },
    {
      "asset": "btl_smu",
      "cns": "btl_smu.cns",
      "category": "battle",
      "categoryLabel": "전투/효과",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 19,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004bb4b4",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table",
      "rectCount": 19,
      "uniqueSizeCount": 3,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 64,
          "h": 64
        },
        {
          "w": 112,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004bb4b4",
          "frameCount": 19,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004bb4b4",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 19,
        "hasOffset2": true,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "invalid-terminator"
      }
    },
    {
      "asset": "cara_01",
      "cns": "cara_01.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 258,
      "tableCount": 16,
      "bestTableStartVaHex": "0x00500cf8",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table-union",
      "rectCount": 63,
      "uniqueSizeCount": 2,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 64,
          "h": 48
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00500cf8",
          "frameCount": 50,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x0053f4fc",
          "frameCount": 34,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x0053b42c",
          "frameCount": 32,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004496ba",
          "frameCount": 24,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00476c96",
          "frameCount": 24,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004f170b",
          "frameCount": 24,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x0043c91a",
          "frameCount": 14,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004ab03f",
          "frameCount": 8,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004df231",
          "frameCount": 8,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004fe266",
          "frameCount": 8,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004ffac1",
          "frameCount": 8,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x005143a0",
          "frameCount": 8,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x0043ea85",
          "frameCount": 4,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004f51de",
          "frameCount": 4,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00525b22",
          "frameCount": 4,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004a4b48",
          "frameCount": 4,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x00500cf8",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 50,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_02",
      "cns": "cara_02.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 88,
      "tableCount": 2,
      "bestTableStartVaHex": "0x00501018",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table-union",
      "rectCount": 66,
      "uniqueSizeCount": 2,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 64,
          "h": 48
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00501018",
          "frameCount": 66,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004df3a1",
          "frameCount": 22,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x00501018",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 66,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_03",
      "cns": "cara_03.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 480,
      "tableCount": 15,
      "bestTableStartVaHex": "0x0044983a",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table-union",
      "rectCount": 66,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        }
      ],
      "variableSizes": false,
      "wrapperRole": "surface-slot-with-uniform-looking-descriptor",
      "wrapperGridSufficient": false,
      "confidence": "medium",
      "conclusion": "descriptor +4 table is still the grounded source; its rects happen to use one size",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0044983a",
          "frameCount": 72,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00476f46",
          "frameCount": 72,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004f19cb",
          "frameCount": 52,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00514420",
          "frameCount": 52,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x0053b62c",
          "frameCount": 52,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x0053f85c",
          "frameCount": 52,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x0046797f",
          "frameCount": 24,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00493a52",
          "frameCount": 24,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004c2fbf",
          "frameCount": 24,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004a4a08",
          "frameCount": 20,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004f509e",
          "frameCount": 20,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00443e5c",
          "frameCount": 4,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00458fd6",
          "frameCount": 4,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004e21d9",
          "frameCount": 4,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00510797",
          "frameCount": 4,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0044983a",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 72,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_04",
      "cns": "cara_04.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 80,
      "tableCount": 2,
      "bestTableStartVaHex": "0x00473792",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table-union",
      "rectCount": 32,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        }
      ],
      "variableSizes": false,
      "wrapperRole": "surface-slot-with-uniform-looking-descriptor",
      "wrapperGridSufficient": false,
      "confidence": "medium",
      "conclusion": "descriptor +4 table is still the grounded source; its rects happen to use one size",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00473792",
          "frameCount": 40,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004c9100",
          "frameCount": 40,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x00473792",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 40,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_05",
      "cns": "cara_05.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 321,
      "tableCount": 11,
      "bestTableStartVaHex": "0x0043c1aa",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table-union",
      "rectCount": 61,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        }
      ],
      "variableSizes": false,
      "wrapperRole": "surface-slot-with-uniform-looking-descriptor",
      "wrapperGridSufficient": false,
      "confidence": "medium",
      "conclusion": "descriptor +4 table is still the grounded source; its rects happen to use one size",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0043c1aa",
          "frameCount": 41,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004908a0",
          "frameCount": 40,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004d006b",
          "frameCount": 40,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004e1f59",
          "frameCount": 40,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x0052e14c",
          "frameCount": 40,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00459016",
          "frameCount": 21,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004f188b",
          "frameCount": 20,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x0053f71c",
          "frameCount": 20,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00476e16",
          "frameCount": 19,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00528cbb",
          "frameCount": 19,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00532603",
          "frameCount": 21,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0043c1aa",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 41,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_06",
      "cns": "cara_06.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 148,
      "tableCount": 8,
      "bestTableStartVaHex": "0x00487e91",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table-union",
      "rectCount": 61,
      "uniqueSizeCount": 6,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 16
        },
        {
          "w": 48,
          "h": 32
        },
        {
          "w": 48,
          "h": 48
        },
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 80,
          "h": 64
        },
        {
          "w": 80,
          "h": 96
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00487e91",
          "frameCount": 33,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00443c7c",
          "frameCount": 27,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00477a26",
          "frameCount": 27,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x0044ffba",
          "frameCount": 26,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00528b1b",
          "frameCount": 26,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004ab17f",
          "frameCount": 4,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004df361",
          "frameCount": 4,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00557792",
          "frameCount": 1,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x00487e91",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 33,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_07",
      "cns": "cara_07.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 180,
      "tableCount": 8,
      "bestTableStartVaHex": "0x0051cb03",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table-union",
      "rectCount": 42,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        }
      ],
      "variableSizes": false,
      "wrapperRole": "surface-slot-with-uniform-looking-descriptor",
      "wrapperGridSufficient": false,
      "confidence": "medium",
      "conclusion": "descriptor +4 table is still the grounded source; its rects happen to use one size",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0051cb03",
          "frameCount": 32,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x0045cdda",
          "frameCount": 24,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004e5ab3",
          "frameCount": 24,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x005323a3",
          "frameCount": 24,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x0046818f",
          "frameCount": 17,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00494262",
          "frameCount": 17,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004c365f",
          "frameCount": 17,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004e4110",
          "frameCount": 25,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0051cb03",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 32,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_08",
      "cns": "cara_08.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 197,
      "tableCount": 8,
      "bestTableStartVaHex": "0x00467f1f",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table-union",
      "rectCount": 56,
      "uniqueSizeCount": 2,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 64,
          "h": 48
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00467f1f",
          "frameCount": 39,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00493ff2",
          "frameCount": 39,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x0043c9fa",
          "frameCount": 23,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00443b6c",
          "frameCount": 17,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x0051c9f3",
          "frameCount": 17,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004c355f",
          "frameCount": 16,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004f561e",
          "frameCount": 23,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        },
        {
          "tableStartVaHex": "0x00543cf0",
          "frameCount": 23,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x00467f1f",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 39,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_09",
      "cns": "cara_09.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 150,
      "tableCount": 5,
      "bestTableStartVaHex": "0x0044398c",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table-union",
      "rectCount": 30,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        }
      ],
      "variableSizes": false,
      "wrapperRole": "surface-slot-with-uniform-looking-descriptor",
      "wrapperGridSufficient": false,
      "confidence": "medium",
      "conclusion": "descriptor +4 table is still the grounded source; its rects happen to use one size",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0044398c",
          "frameCount": 30,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00467aff",
          "frameCount": 30,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00493bd2",
          "frameCount": 30,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004c313f",
          "frameCount": 30,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x0051c573",
          "frameCount": 30,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0044398c",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 30,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_0a",
      "cns": "cara_0a.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 4,
      "tableCount": 2,
      "bestTableStartVaHex": "0x00477bd6",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table-union",
      "rectCount": 2,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 64,
          "h": 48
        }
      ],
      "variableSizes": false,
      "wrapperRole": "surface-slot-with-uniform-looking-descriptor",
      "wrapperGridSufficient": false,
      "confidence": "medium",
      "conclusion": "descriptor +4 table is still the grounded source; its rects happen to use one size",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00477bd6",
          "frameCount": 2,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004b052f",
          "frameCount": 2,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x00477bd6",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 2,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_10",
      "cns": "cara_10.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 457,
      "tableCount": 6,
      "bestTableStartVaHex": "0x00449cba",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table-union",
      "rectCount": 73,
      "uniqueSizeCount": 4,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 32
        },
        {
          "w": 48,
          "h": 48
        },
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 64,
          "h": 48
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00449cba",
          "frameCount": 76,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004773c6",
          "frameCount": 76,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004f1d0b",
          "frameCount": 76,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x0053fb9c",
          "frameCount": 76,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00514760",
          "frameCount": 77,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        },
        {
          "tableStartVaHex": "0x0053b96c",
          "frameCount": 76,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x00449cba",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 76,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_11",
      "cns": "cara_11.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 40,
      "tableCount": 10,
      "bestTableStartVaHex": "0x0051c993",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table-union",
      "rectCount": 13,
      "uniqueSizeCount": 6,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 32
        },
        {
          "w": 64,
          "h": 48
        },
        {
          "w": 80,
          "h": 96
        },
        {
          "w": 96,
          "h": 80
        },
        {
          "w": 96,
          "h": 96
        },
        {
          "w": 112,
          "h": 112
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0051c993",
          "frameCount": 6,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x0045015a",
          "frameCount": 4,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004ab13f",
          "frameCount": 4,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004df321",
          "frameCount": 4,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00443e2c",
          "frameCount": 3,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004ab1bf",
          "frameCount": 3,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x0043eb25",
          "frameCount": 4,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        },
        {
          "tableStartVaHex": "0x004fe346",
          "frameCount": 4,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        },
        {
          "tableStartVaHex": "0x004ffba1",
          "frameCount": 4,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        },
        {
          "tableStartVaHex": "0x00525bc2",
          "frameCount": 4,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0051c993",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 6,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_12",
      "cns": "cara_12.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 466,
      "tableCount": 8,
      "bestTableStartVaHex": "0x0043c43a",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table-union",
      "rectCount": 69,
      "uniqueSizeCount": 2,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 64,
          "h": 48
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0043c43a",
          "frameCount": 64,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00490b20",
          "frameCount": 64,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004f521e",
          "frameCount": 64,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00459166",
          "frameCount": 63,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x0052e3cc",
          "frameCount": 63,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004d02eb",
          "frameCount": 20,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x0045cf5a",
          "frameCount": 64,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        },
        {
          "tableStartVaHex": "0x004e5c33",
          "frameCount": 64,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0043c43a",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 64,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_13",
      "cns": "cara_13.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 147,
      "tableCount": 4,
      "bestTableStartVaHex": "0x00473a12",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table-union",
      "rectCount": 43,
      "uniqueSizeCount": 4,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 64,
          "h": 48
        },
        {
          "w": 64,
          "h": 64
        },
        {
          "w": 80,
          "h": 48
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00473a12",
          "frameCount": 42,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004c9380",
          "frameCount": 42,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00508e7a",
          "frameCount": 42,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x0052e89c",
          "frameCount": 21,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x00473a12",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 42,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_15",
      "cns": "cara_15.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 168,
      "tableCount": 6,
      "bestTableStartVaHex": "0x00467cdf",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table-union",
      "rectCount": 48,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        }
      ],
      "variableSizes": false,
      "wrapperRole": "surface-slot-with-uniform-looking-descriptor",
      "wrapperGridSufficient": false,
      "confidence": "medium",
      "conclusion": "descriptor +4 table is still the grounded source; its rects happen to use one size",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00467cdf",
          "frameCount": 36,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00493db2",
          "frameCount": 36,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004c331f",
          "frameCount": 36,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x0051c753",
          "frameCount": 36,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004438cc",
          "frameCount": 12,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00484428",
          "frameCount": 12,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x00467cdf",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 36,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_16",
      "cns": "cara_16.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 3,
      "tableCount": 1,
      "bestTableStartVaHex": "0x0050979a",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table",
      "rectCount": 3,
      "uniqueSizeCount": 2,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 64,
          "h": 48
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0050979a",
          "frameCount": 3,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0050979a",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 3,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_17",
      "cns": "cara_17.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 196,
      "tableCount": 10,
      "bestTableStartVaHex": "0x00459556",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table-union",
      "rectCount": 54,
      "uniqueSizeCount": 9,
      "uniqueSizes": [
        {
          "w": 16,
          "h": 16
        },
        {
          "w": 48,
          "h": 32
        },
        {
          "w": 48,
          "h": 48
        },
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 48,
          "h": 80
        },
        {
          "w": 48,
          "h": 96
        },
        {
          "w": 64,
          "h": 64
        },
        {
          "w": 64,
          "h": 80
        },
        {
          "w": 96,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00459556",
          "frameCount": 53,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00490f20",
          "frameCount": 26,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x0052dfac",
          "frameCount": 26,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x0043c83a",
          "frameCount": 14,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004d042b",
          "frameCount": 14,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004e1e79",
          "frameCount": 14,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00532523",
          "frameCount": 14,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00528deb",
          "frameCount": 10,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00473cb2",
          "frameCount": 13,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        },
        {
          "tableStartVaHex": "0x004c9620",
          "frameCount": 12,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x00459556",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 53,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_18",
      "cns": "cara_18.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 16,
      "tableCount": 1,
      "bestTableStartVaHex": "0x00485874",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table",
      "rectCount": 16,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        }
      ],
      "variableSizes": false,
      "wrapperRole": "surface-slot-with-uniform-looking-descriptor",
      "wrapperGridSufficient": false,
      "confidence": "medium",
      "conclusion": "descriptor +4 table is still the grounded source; its rects happen to use one size",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00485874",
          "frameCount": 16,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x00485874",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 16,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "invalid-terminator"
      }
    },
    {
      "asset": "cara_19",
      "cns": "cara_19.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 20,
      "tableCount": 1,
      "bestTableStartVaHex": "0x0050911a",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table",
      "rectCount": 20,
      "uniqueSizeCount": 3,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 64,
          "h": 48
        },
        {
          "w": 64,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0050911a",
          "frameCount": 20,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0050911a",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 20,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_20",
      "cns": "cara_20.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 20,
      "tableCount": 1,
      "bestTableStartVaHex": "0x0050925a",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table",
      "rectCount": 20,
      "uniqueSizeCount": 3,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 64,
          "h": 48
        },
        {
          "w": 64,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0050925a",
          "frameCount": 20,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0050925a",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 20,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_21",
      "cns": "cara_21.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 38,
      "tableCount": 1,
      "bestTableStartVaHex": "0x0050939a",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table",
      "rectCount": 31,
      "uniqueSizeCount": 6,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 16
        },
        {
          "w": 48,
          "h": 32
        },
        {
          "w": 48,
          "h": 48
        },
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 64,
          "h": 48
        },
        {
          "w": 64,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0050939a",
          "frameCount": 38,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0050939a",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 38,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_22",
      "cns": "cara_22.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 14,
      "tableCount": 1,
      "bestTableStartVaHex": "0x0052e7bc",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table",
      "rectCount": 14,
      "uniqueSizeCount": 2,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 112,
          "h": 96
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0052e7bc",
          "frameCount": 14,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0052e7bc",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 14,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_23",
      "cns": "cara_23.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 5,
      "tableCount": 2,
      "bestTableStartVaHex": "0x005097ca",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table-union",
      "rectCount": 4,
      "uniqueSizeCount": 3,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 144,
          "h": 80
        },
        {
          "w": 416,
          "h": 160
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x005097ca",
          "frameCount": 3,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00477bf6",
          "frameCount": 2,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x005097ca",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 3,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_24",
      "cns": "cara_24.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 26,
      "tableCount": 1,
      "bestTableStartVaHex": "0x005095fa",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table",
      "rectCount": 26,
      "uniqueSizeCount": 5,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 32
        },
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 48,
          "h": 80
        },
        {
          "w": 64,
          "h": 64
        },
        {
          "w": 64,
          "h": 80
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x005095fa",
          "frameCount": 26,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x005095fa",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 26,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_25",
      "cns": "cara_25.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 2,
      "tableCount": 2,
      "bestTableStartVaHex": "0x004d050b",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table-union",
      "rectCount": 1,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 256,
          "h": 240
        }
      ],
      "variableSizes": false,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004d050b",
          "frameCount": 1,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004e2219",
          "frameCount": 1,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "next-table-start"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004d050b",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 1,
        "hasOffset2": true,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_at1",
      "cns": "cara_at1.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 21,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004f8695",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table",
      "rectCount": 21,
      "uniqueSizeCount": 2,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 64,
          "h": 48
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004f8695",
          "frameCount": 21,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004f8695",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 21,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_at2",
      "cns": "cara_at2.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 67,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004f87e5",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table",
      "rectCount": 67,
      "uniqueSizeCount": 6,
      "uniqueSizes": [
        {
          "w": 16,
          "h": 16
        },
        {
          "w": 48,
          "h": 32
        },
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 64,
          "h": 32
        },
        {
          "w": 64,
          "h": 64
        },
        {
          "w": 80,
          "h": 48
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004f87e5",
          "frameCount": 67,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004f87e5",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 67,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_at3",
      "cns": "cara_at3.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 28,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004f8c15",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table",
      "rectCount": 28,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 80,
          "h": 96
        }
      ],
      "variableSizes": false,
      "wrapperRole": "surface-slot-with-uniform-looking-descriptor",
      "wrapperGridSufficient": false,
      "confidence": "medium",
      "conclusion": "descriptor +4 table is still the grounded source; its rects happen to use one size",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004f8c15",
          "frameCount": 28,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004f8c15",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 28,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "invalid-terminator"
      }
    },
    {
      "asset": "cara_efc",
      "cns": "cara_efc.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 99,
      "tableCount": 3,
      "bestTableStartVaHex": "0x00501438",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table-union",
      "rectCount": 33,
      "uniqueSizeCount": 5,
      "uniqueSizes": [
        {
          "w": 16,
          "h": 10
        },
        {
          "w": 16,
          "h": 16
        },
        {
          "w": 32,
          "h": 32
        },
        {
          "w": 48,
          "h": 48
        },
        {
          "w": 64,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00501438",
          "frameCount": 33,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x005097fa",
          "frameCount": 33,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004df501",
          "frameCount": 33,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x00501438",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 33,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_etc",
      "cns": "cara_etc.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 190,
      "tableCount": 26,
      "bestTableStartVaHex": "0x00477886",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table-union",
      "rectCount": 49,
      "uniqueSizeCount": 5,
      "uniqueSizes": [
        {
          "w": 16,
          "h": 16
        },
        {
          "w": 32,
          "h": 32
        },
        {
          "w": 48,
          "h": 32
        },
        {
          "w": 48,
          "h": 48
        },
        {
          "w": 48,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00477886",
          "frameCount": 26,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004ab0bf",
          "frameCount": 8,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004df2b1",
          "frameCount": 7,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x0043eac5",
          "frameCount": 6,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004fe2e6",
          "frameCount": 6,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004ffb41",
          "frameCount": 6,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00525b62",
          "frameCount": 6,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x0051cdd3",
          "frameCount": 11,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        },
        {
          "tableStartVaHex": "0x0044a17a",
          "frameCount": 9,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        },
        {
          "tableStartVaHex": "0x0043cb6a",
          "frameCount": 7,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        },
        {
          "tableStartVaHex": "0x00443efc",
          "frameCount": 7,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        },
        {
          "tableStartVaHex": "0x00459906",
          "frameCount": 7,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        },
        {
          "tableStartVaHex": "0x00491120",
          "frameCount": 7,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        },
        {
          "tableStartVaHex": "0x00494372",
          "frameCount": 7,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        },
        {
          "tableStartVaHex": "0x004e2231",
          "frameCount": 7,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        },
        {
          "tableStartVaHex": "0x00501648",
          "frameCount": 7,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        },
        {
          "tableStartVaHex": "0x0054005c",
          "frameCount": 7,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        },
        {
          "tableStartVaHex": "0x00557802",
          "frameCount": 7,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        },
        {
          "tableStartVaHex": "0x0045019a",
          "frameCount": 6,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        },
        {
          "tableStartVaHex": "0x0046829f",
          "frameCount": 6,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        },
        {
          "tableStartVaHex": "0x00488101",
          "frameCount": 6,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        },
        {
          "tableStartVaHex": "0x004c376f",
          "frameCount": 6,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        },
        {
          "tableStartVaHex": "0x004d0523",
          "frameCount": 6,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        },
        {
          "tableStartVaHex": "0x00528e8b",
          "frameCount": 6,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        },
        {
          "tableStartVaHex": "0x0052e9ec",
          "frameCount": 4,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        },
        {
          "tableStartVaHex": "0x004f21cb",
          "frameCount": 2,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x00477886",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 26,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_fnt",
      "cns": "cara_fnt.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 18,
      "tableCount": 1,
      "bestTableStartVaHex": "0x00509a0a",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "best-exe-rect",
      "rectCount": 18,
      "uniqueSizeCount": 4,
      "uniqueSizes": [
        {
          "w": 64,
          "h": 48
        },
        {
          "w": 96,
          "h": 48
        },
        {
          "w": 144,
          "h": 48
        },
        {
          "w": 336,
          "h": 48
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00509a0a",
          "frameCount": 18,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": null
    },
    {
      "asset": "cara_lst",
      "cns": "cara_lst.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 49,
      "tableCount": 7,
      "bestTableStartVaHex": "0x0051cd03",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table-union",
      "rectCount": 13,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 96
        }
      ],
      "variableSizes": false,
      "wrapperRole": "surface-slot-with-uniform-looking-descriptor",
      "wrapperGridSufficient": false,
      "confidence": "medium",
      "conclusion": "descriptor +4 table is still the grounded source; its rects happen to use one size",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0051cd03",
          "frameCount": 13,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x00443e9c",
          "frameCount": 6,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004598a6",
          "frameCount": 6,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004880a1",
          "frameCount": 6,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004910c0",
          "frameCount": 6,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x005577a2",
          "frameCount": 6,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        },
        {
          "tableStartVaHex": "0x004ab1ef",
          "frameCount": 6,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0051cd03",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 13,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_rs1",
      "cns": "cara_rs1.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 21,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004e75b9",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table",
      "rectCount": 21,
      "uniqueSizeCount": 2,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 96,
          "h": 48
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004e75b9",
          "frameCount": 21,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004e75b9",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 21,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_rs2",
      "cns": "cara_rs2.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 10,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004e7709",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table",
      "rectCount": 10,
      "uniqueSizeCount": 2,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 48,
          "h": 80
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004e7709",
          "frameCount": 10,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004e7709",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 10,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_sm1",
      "cns": "cara_sm1.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 21,
      "tableCount": 1,
      "bestTableStartVaHex": "0x00546029",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table",
      "rectCount": 21,
      "uniqueSizeCount": 2,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 64,
          "h": 48
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00546029",
          "frameCount": 21,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x00546029",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 21,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "next-table-start"
      }
    },
    {
      "asset": "cara_sm2",
      "cns": "cara_sm2.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 24,
      "tableCount": 1,
      "bestTableStartVaHex": "0x00546179",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "exe-source-rect-table",
      "rectCount": 24,
      "uniqueSizeCount": 2,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 64,
          "h": 32
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00546179",
          "frameCount": 24,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x00546179",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 24,
        "hasOffset2": false,
        "fieldLabel": "+4",
        "fieldPlus4Bound": true,
        "boundaryKind": "invalid-terminator"
      }
    },
    {
      "asset": "boss_1",
      "cns": "boss_1.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 27,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004a410b",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 27,
      "uniqueSizeCount": 7,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 96
        },
        {
          "w": 48,
          "h": 112
        },
        {
          "w": 64,
          "h": 96
        },
        {
          "w": 80,
          "h": 80
        },
        {
          "w": 80,
          "h": 96
        },
        {
          "w": 96,
          "h": 80
        },
        {
          "w": 96,
          "h": 96
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004a410b",
          "frameCount": 27,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004a410b",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 27,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "boss_2",
      "cns": "boss_2.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 17,
      "tableCount": 1,
      "bestTableStartVaHex": "0x0053389f",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 17,
      "uniqueSizeCount": 6,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 48
        },
        {
          "w": 192,
          "h": 128
        },
        {
          "w": 192,
          "h": 144
        },
        {
          "w": 208,
          "h": 144
        },
        {
          "w": 224,
          "h": 128
        },
        {
          "w": 256,
          "h": 128
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0053389f",
          "frameCount": 17,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0053389f",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 17,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zak_debu",
      "cns": "zak_debu.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 5,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004da4cd",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 5,
      "uniqueSizeCount": 2,
      "uniqueSizes": [
        {
          "w": 64,
          "h": 64
        },
        {
          "w": 80,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004da4cd",
          "frameCount": 5,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004da4cd",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 5,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zak_pur",
      "cns": "zak_pur.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 9,
      "tableCount": 1,
      "bestTableStartVaHex": "0x0053ad5c",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 9,
      "uniqueSizeCount": 3,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 64,
          "h": 64
        },
        {
          "w": 80,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0053ad5c",
          "frameCount": 9,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0053ad5c",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 9,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zak_red",
      "cns": "zak_red.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 9,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004bf85c",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 9,
      "uniqueSizeCount": 3,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 64,
          "h": 64
        },
        {
          "w": 80,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004bf85c",
          "frameCount": 9,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004bf85c",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 9,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zak_yase",
      "cns": "zak_yase.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 5,
      "tableCount": 1,
      "bestTableStartVaHex": "0x005438ad",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 5,
      "uniqueSizeCount": 4,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 64,
          "h": 64
        },
        {
          "w": 72,
          "h": 80
        },
        {
          "w": 80,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x005438ad",
          "frameCount": 5,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x005438ad",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 5,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zg_gai",
      "cns": "zg_gai.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 3,
      "tableCount": 1,
      "bestTableStartVaHex": "0x0046742b",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 3,
      "uniqueSizeCount": 2,
      "uniqueSizes": [
        {
          "w": 56,
          "h": 64
        },
        {
          "w": 72,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0046742b",
          "frameCount": 3,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0046742b",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 3,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zg_kni",
      "cns": "zg_kni.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 4,
      "tableCount": 1,
      "bestTableStartVaHex": "0x00486d0b",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 4,
      "uniqueSizeCount": 2,
      "uniqueSizes": [
        {
          "w": 56,
          "h": 64
        },
        {
          "w": 80,
          "h": 72
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00486d0b",
          "frameCount": 4,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x00486d0b",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 4,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zg_sen",
      "cns": "zg_sen.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 4,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004cd927",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 4,
      "uniqueSizeCount": 3,
      "uniqueSizes": [
        {
          "w": 56,
          "h": 64
        },
        {
          "w": 72,
          "h": 64
        },
        {
          "w": 72,
          "h": 72
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004cd927",
          "frameCount": 4,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004cd927",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 4,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zh_dai",
      "cns": "zh_dai.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 4,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004cbfab",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 4,
      "uniqueSizeCount": 2,
      "uniqueSizes": [
        {
          "w": 80,
          "h": 72
        },
        {
          "w": 136,
          "h": 72
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004cbfab",
          "frameCount": 4,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004cbfab",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 4,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zh_doku",
      "cns": "zh_doku.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 4,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004a694c",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 4,
      "uniqueSizeCount": 2,
      "uniqueSizes": [
        {
          "w": 80,
          "h": 72
        },
        {
          "w": 136,
          "h": 72
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004a694c",
          "frameCount": 4,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004a694c",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 4,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zh_ka",
      "cns": "zh_ka.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 4,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004e7256",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 4,
      "uniqueSizeCount": 2,
      "uniqueSizes": [
        {
          "w": 80,
          "h": 72
        },
        {
          "w": 136,
          "h": 72
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004e7256",
          "frameCount": 4,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004e7256",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 4,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zh_rai",
      "cns": "zh_rai.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 5,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004ce08b",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 5,
      "uniqueSizeCount": 4,
      "uniqueSizes": [
        {
          "w": 80,
          "h": 80
        },
        {
          "w": 80,
          "h": 88
        },
        {
          "w": 96,
          "h": 80
        },
        {
          "w": 136,
          "h": 88
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004ce08b",
          "frameCount": 5,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004ce08b",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 5,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zh_sui",
      "cns": "zh_sui.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 5,
      "tableCount": 1,
      "bestTableStartVaHex": "0x0052862f",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 5,
      "uniqueSizeCount": 4,
      "uniqueSizes": [
        {
          "w": 80,
          "h": 72
        },
        {
          "w": 88,
          "h": 72
        },
        {
          "w": 88,
          "h": 88
        },
        {
          "w": 136,
          "h": 80
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0052862f",
          "frameCount": 5,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0052862f",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 5,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zi_ana",
      "cns": "zi_ana.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 3,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004e1af7",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 3,
      "uniqueSizeCount": 3,
      "uniqueSizes": [
        {
          "w": 80,
          "h": 64
        },
        {
          "w": 104,
          "h": 72
        },
        {
          "w": 112,
          "h": 80
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004e1af7",
          "frameCount": 3,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004e1af7",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 3,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zi_ibo",
      "cns": "zi_ibo.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 5,
      "tableCount": 1,
      "bestTableStartVaHex": "0x00490457",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 5,
      "uniqueSizeCount": 4,
      "uniqueSizes": [
        {
          "w": 80,
          "h": 64
        },
        {
          "w": 88,
          "h": 64
        },
        {
          "w": 104,
          "h": 72
        },
        {
          "w": 112,
          "h": 88
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00490457",
          "frameCount": 5,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x00490457",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 5,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zi_ikkak",
      "cns": "zi_ikkak.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 6,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004a3d59",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 6,
      "uniqueSizeCount": 3,
      "uniqueSizes": [
        {
          "w": 88,
          "h": 64
        },
        {
          "w": 112,
          "h": 72
        },
        {
          "w": 112,
          "h": 80
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004a3d59",
          "frameCount": 6,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004a3d59",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 6,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zi_inos",
      "cns": "zi_inos.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 3,
      "tableCount": 1,
      "bestTableStartVaHex": "0x0051be50",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 3,
      "uniqueSizeCount": 3,
      "uniqueSizes": [
        {
          "w": 80,
          "h": 64
        },
        {
          "w": 104,
          "h": 72
        },
        {
          "w": 112,
          "h": 80
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0051be50",
          "frameCount": 3,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0051be50",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 3,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zj_kage",
      "cns": "zj_kage.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 4,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004bf004",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 4,
      "uniqueSizeCount": 3,
      "uniqueSizes": [
        {
          "w": 64,
          "h": 64
        },
        {
          "w": 80,
          "h": 64
        },
        {
          "w": 96,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004bf004",
          "frameCount": 4,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004bf004",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 4,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zj_rase",
      "cns": "zj_rase.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 11,
      "tableCount": 1,
      "bestTableStartVaHex": "0x00542f14",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 11,
      "uniqueSizeCount": 10,
      "uniqueSizes": [
        {
          "w": 96,
          "h": 104
        },
        {
          "w": 112,
          "h": 112
        },
        {
          "w": 120,
          "h": 104
        },
        {
          "w": 128,
          "h": 104
        },
        {
          "w": 144,
          "h": 80
        },
        {
          "w": 144,
          "h": 112
        },
        {
          "w": 160,
          "h": 112
        },
        {
          "w": 168,
          "h": 136
        },
        {
          "w": 176,
          "h": 96
        },
        {
          "w": 216,
          "h": 128
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00542f14",
          "frameCount": 11,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x00542f14",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 11,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zj_touki",
      "cns": "zj_touki.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 4,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004cb7f1",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 4,
      "uniqueSizeCount": 3,
      "uniqueSizes": [
        {
          "w": 64,
          "h": 64
        },
        {
          "w": 80,
          "h": 64
        },
        {
          "w": 96,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004cb7f1",
          "frameCount": 4,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004cb7f1",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 4,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zjk_byk",
      "cns": "zjk_byk.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 6,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004bda9c",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 6,
      "uniqueSizeCount": 4,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 64,
          "h": 64
        },
        {
          "w": 64,
          "h": 80
        },
        {
          "w": 80,
          "h": 80
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004bda9c",
          "frameCount": 6,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004bda9c",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 6,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zjk_gen",
      "cns": "zjk_gen.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 6,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004934a8",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 6,
      "uniqueSizeCount": 5,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 80
        },
        {
          "w": 64,
          "h": 64
        },
        {
          "w": 64,
          "h": 80
        },
        {
          "w": 80,
          "h": 80
        },
        {
          "w": 96,
          "h": 80
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004934a8",
          "frameCount": 6,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004934a8",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 6,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zjk_sei",
      "cns": "zjk_sei.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 6,
      "tableCount": 1,
      "bestTableStartVaHex": "0x00545528",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 6,
      "uniqueSizeCount": 3,
      "uniqueSizes": [
        {
          "w": 64,
          "h": 64
        },
        {
          "w": 64,
          "h": 80
        },
        {
          "w": 80,
          "h": 80
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00545528",
          "frameCount": 6,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x00545528",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 6,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zjk_suz",
      "cns": "zjk_suz.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 6,
      "tableCount": 1,
      "bestTableStartVaHex": "0x005033f0",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 6,
      "uniqueSizeCount": 4,
      "uniqueSizes": [
        {
          "w": 64,
          "h": 48
        },
        {
          "w": 64,
          "h": 64
        },
        {
          "w": 64,
          "h": 80
        },
        {
          "w": 80,
          "h": 80
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x005033f0",
          "frameCount": 6,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x005033f0",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 6,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zk_big",
      "cns": "zk_big.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 4,
      "tableCount": 1,
      "bestTableStartVaHex": "0x00545933",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 4,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 56,
          "h": 64
        }
      ],
      "variableSizes": false,
      "wrapperRole": "surface-slot-with-uniform-looking-descriptor",
      "wrapperGridSufficient": false,
      "confidence": "medium",
      "conclusion": "descriptor +4 table is still the grounded source; its rects happen to use one size",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00545933",
          "frameCount": 4,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x00545933",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 4,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zk_komo",
      "cns": "zk_komo.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 4,
      "tableCount": 1,
      "bestTableStartVaHex": "0x00546a9c",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 4,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 56,
          "h": 64
        }
      ],
      "variableSizes": false,
      "wrapperRole": "surface-slot-with-uniform-looking-descriptor",
      "wrapperGridSufficient": false,
      "confidence": "medium",
      "conclusion": "descriptor +4 table is still the grounded source; its rects happen to use one size",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00546a9c",
          "frameCount": 4,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x00546a9c",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 4,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zk_maoh",
      "cns": "zk_maoh.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 5,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004cdc48",
      "hasOffset2": false,
      "rectReviewStatus": "warn",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 5,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 56,
          "h": 64
        }
      ],
      "variableSizes": false,
      "wrapperRole": "surface-slot-with-uniform-looking-descriptor",
      "wrapperGridSufficient": false,
      "confidence": "medium",
      "conclusion": "descriptor +4 table is still the grounded source; its rects happen to use one size",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004cdc48",
          "frameCount": 5,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004cdc48",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 5,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zk_q",
      "cns": "zk_q.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 4,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004ede21",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 4,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 56,
          "h": 64
        }
      ],
      "variableSizes": false,
      "wrapperRole": "surface-slot-with-uniform-looking-descriptor",
      "wrapperGridSufficient": false,
      "confidence": "medium",
      "conclusion": "descriptor +4 table is still the grounded source; its rects happen to use one size",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004ede21",
          "frameCount": 4,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004ede21",
        "schema": "u32-xyxy-excl",
        "stride": 16,
        "frameCount": 4,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zka_ge",
      "cns": "zka_ge.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 6,
      "tableCount": 1,
      "bestTableStartVaHex": "0x0053a9df",
      "hasOffset2": true,
      "rectReviewStatus": "warn",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 6,
      "uniqueSizeCount": 5,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 48,
          "h": 80
        },
        {
          "w": 64,
          "h": 64
        },
        {
          "w": 72,
          "h": 64
        },
        {
          "w": 80,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0053a9df",
          "frameCount": 6,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0053a9df",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 6,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zka_so",
      "cns": "zka_so.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 6,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004c8c9b",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 6,
      "uniqueSizeCount": 4,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 64,
          "h": 64
        },
        {
          "w": 64,
          "h": 80
        },
        {
          "w": 72,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004c8c9b",
          "frameCount": 6,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004c8c9b",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 6,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zka_su",
      "cns": "zka_su.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 6,
      "tableCount": 1,
      "bestTableStartVaHex": "0x00485483",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 6,
      "uniqueSizeCount": 3,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 64,
          "h": 64
        },
        {
          "w": 72,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00485483",
          "frameCount": 6,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x00485483",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 6,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zkb_bu",
      "cns": "zkb_bu.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 10,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004d53f3",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 10,
      "uniqueSizeCount": 7,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 48,
          "h": 72
        },
        {
          "w": 56,
          "h": 72
        },
        {
          "w": 64,
          "h": 64
        },
        {
          "w": 64,
          "h": 80
        },
        {
          "w": 64,
          "h": 96
        },
        {
          "w": 80,
          "h": 104
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004d53f3",
          "frameCount": 10,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004d53f3",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 10,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zkb_hyr",
      "cns": "zkb_hyr.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 9,
      "tableCount": 1,
      "bestTableStartVaHex": "0x0047deb8",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 9,
      "uniqueSizeCount": 8,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 72
        },
        {
          "w": 56,
          "h": 64
        },
        {
          "w": 56,
          "h": 72
        },
        {
          "w": 56,
          "h": 96
        },
        {
          "w": 72,
          "h": 56
        },
        {
          "w": 80,
          "h": 72
        },
        {
          "w": 88,
          "h": 72
        },
        {
          "w": 88,
          "h": 104
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0047deb8",
          "frameCount": 9,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0047deb8",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 9,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zkb_ka",
      "cns": "zkb_ka.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 10,
      "tableCount": 1,
      "bestTableStartVaHex": "0x005101d3",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 10,
      "uniqueSizeCount": 5,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 56,
          "h": 72
        },
        {
          "w": 56,
          "h": 96
        },
        {
          "w": 64,
          "h": 64
        },
        {
          "w": 64,
          "h": 72
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x005101d3",
          "frameCount": 10,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x005101d3",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 10,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zkb_ke",
      "cns": "zkb_ke.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 10,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004d7943",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 10,
      "uniqueSizeCount": 8,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 48,
          "h": 72
        },
        {
          "w": 56,
          "h": 72
        },
        {
          "w": 56,
          "h": 96
        },
        {
          "w": 64,
          "h": 64
        },
        {
          "w": 64,
          "h": 72
        },
        {
          "w": 72,
          "h": 72
        },
        {
          "w": 80,
          "h": 96
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004d7943",
          "frameCount": 10,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004d7943",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 10,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zkb_sai",
      "cns": "zkb_sai.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 10,
      "tableCount": 1,
      "bestTableStartVaHex": "0x00513d7c",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 10,
      "uniqueSizeCount": 7,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 56,
          "h": 72
        },
        {
          "w": 56,
          "h": 96
        },
        {
          "w": 72,
          "h": 72
        },
        {
          "w": 80,
          "h": 88
        },
        {
          "w": 88,
          "h": 64
        },
        {
          "w": 88,
          "h": 72
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00513d7c",
          "frameCount": 10,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x00513d7c",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 10,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zkg_kame",
      "cns": "zkg_kame.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 10,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004c2915",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 10,
      "uniqueSizeCount": 7,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 72
        },
        {
          "w": 56,
          "h": 64
        },
        {
          "w": 56,
          "h": 72
        },
        {
          "w": 56,
          "h": 96
        },
        {
          "w": 64,
          "h": 56
        },
        {
          "w": 72,
          "h": 72
        },
        {
          "w": 80,
          "h": 96
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004c2915",
          "frameCount": 10,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004c2915",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 10,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zky_ao",
      "cns": "zky_ao.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 9,
      "tableCount": 1,
      "bestTableStartVaHex": "0x0049003b",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 9,
      "uniqueSizeCount": 2,
      "uniqueSizes": [
        {
          "w": 104,
          "h": 88
        },
        {
          "w": 136,
          "h": 88
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0049003b",
          "frameCount": 9,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0049003b",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 9,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zky_gen",
      "cns": "zky_gen.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 18,
      "tableCount": 2,
      "bestTableStartVaHex": "0x00442f18",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 9,
      "uniqueSizeCount": 2,
      "uniqueSizes": [
        {
          "w": 96,
          "h": 88
        },
        {
          "w": 136,
          "h": 88
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00442f18",
          "frameCount": 9,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        },
        {
          "tableStartVaHex": "0x004cbb9c",
          "frameCount": 9,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x00442f18",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 9,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zky_shu",
      "cns": "zky_shu.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 9,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004a5ad0",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 9,
      "uniqueSizeCount": 2,
      "uniqueSizes": [
        {
          "w": 96,
          "h": 88
        },
        {
          "w": 136,
          "h": 88
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004a5ad0",
          "frameCount": 9,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004a5ad0",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 9,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zm_1",
      "cns": "zm_1.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 4,
      "tableCount": 1,
      "bestTableStartVaHex": "0x0049f601",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 4,
      "uniqueSizeCount": 4,
      "uniqueSizes": [
        {
          "w": 72,
          "h": 64
        },
        {
          "w": 96,
          "h": 64
        },
        {
          "w": 104,
          "h": 64
        },
        {
          "w": 120,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0049f601",
          "frameCount": 4,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0049f601",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 4,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zm_2",
      "cns": "zm_2.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 4,
      "tableCount": 1,
      "bestTableStartVaHex": "0x00466959",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 4,
      "uniqueSizeCount": 4,
      "uniqueSizes": [
        {
          "w": 72,
          "h": 64
        },
        {
          "w": 96,
          "h": 64
        },
        {
          "w": 104,
          "h": 64
        },
        {
          "w": 120,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00466959",
          "frameCount": 4,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x00466959",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 4,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zm_mk1",
      "cns": "zm_mk1.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 4,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004f81ff",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 4,
      "uniqueSizeCount": 3,
      "uniqueSizes": [
        {
          "w": 72,
          "h": 64
        },
        {
          "w": 96,
          "h": 64
        },
        {
          "w": 104,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004f81ff",
          "frameCount": 4,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004f81ff",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 4,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zm_mk2",
      "cns": "zm_mk2.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 4,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004b12a7",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 4,
      "uniqueSizeCount": 4,
      "uniqueSizes": [
        {
          "w": 72,
          "h": 64
        },
        {
          "w": 96,
          "h": 64
        },
        {
          "w": 104,
          "h": 64
        },
        {
          "w": 112,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004b12a7",
          "frameCount": 4,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004b12a7",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 4,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zs_dd",
      "cns": "zs_dd.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 6,
      "tableCount": 1,
      "bestTableStartVaHex": "0x00454386",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 6,
      "uniqueSizeCount": 5,
      "uniqueSizes": [
        {
          "w": 180,
          "h": 168
        },
        {
          "w": 192,
          "h": 144
        },
        {
          "w": 200,
          "h": 144
        },
        {
          "w": 224,
          "h": 168
        },
        {
          "w": 248,
          "h": 136
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00454386",
          "frameCount": 6,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x00454386",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 6,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zs_enn",
      "cns": "zs_enn.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 5,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004e567f",
      "hasOffset2": true,
      "rectReviewStatus": "warn",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 5,
      "uniqueSizeCount": 4,
      "uniqueSizes": [
        {
          "w": 64,
          "h": 24
        },
        {
          "w": 72,
          "h": 48
        },
        {
          "w": 96,
          "h": 56
        },
        {
          "w": 112,
          "h": 40
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004e567f",
          "frameCount": 5,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004e567f",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 5,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zs_ice",
      "cns": "zs_ice.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 5,
      "tableCount": 1,
      "bestTableStartVaHex": "0x005434ff",
      "hasOffset2": true,
      "rectReviewStatus": "warn",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 5,
      "uniqueSizeCount": 4,
      "uniqueSizes": [
        {
          "w": 64,
          "h": 24
        },
        {
          "w": 72,
          "h": 48
        },
        {
          "w": 96,
          "h": 56
        },
        {
          "w": 112,
          "h": 40
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x005434ff",
          "frameCount": 5,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x005434ff",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 5,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zs_iwa",
      "cns": "zs_iwa.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 5,
      "tableCount": 1,
      "bestTableStartVaHex": "0x00545c8b",
      "hasOffset2": true,
      "rectReviewStatus": "warn",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 5,
      "uniqueSizeCount": 5,
      "uniqueSizes": [
        {
          "w": 64,
          "h": 24
        },
        {
          "w": 64,
          "h": 40
        },
        {
          "w": 72,
          "h": 56
        },
        {
          "w": 96,
          "h": 56
        },
        {
          "w": 112,
          "h": 40
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00545c8b",
          "frameCount": 5,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x00545c8b",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 5,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zs_maoh",
      "cns": "zs_maoh.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 5,
      "tableCount": 1,
      "bestTableStartVaHex": "0x0044dce4",
      "hasOffset2": true,
      "rectReviewStatus": "warn",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 5,
      "uniqueSizeCount": 4,
      "uniqueSizes": [
        {
          "w": 64,
          "h": 24
        },
        {
          "w": 80,
          "h": 48
        },
        {
          "w": 96,
          "h": 56
        },
        {
          "w": 112,
          "h": 40
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0044dce4",
          "frameCount": 5,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0044dce4",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 5,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zs_rai",
      "cns": "zs_rai.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 5,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004cd58f",
      "hasOffset2": true,
      "rectReviewStatus": "warn",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 5,
      "uniqueSizeCount": 4,
      "uniqueSizes": [
        {
          "w": 64,
          "h": 24
        },
        {
          "w": 72,
          "h": 56
        },
        {
          "w": 104,
          "h": 56
        },
        {
          "w": 112,
          "h": 40
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004cd58f",
          "frameCount": 5,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004cd58f",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 5,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zs_rb",
      "cns": "zs_rb.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 6,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004d1752",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 6,
      "uniqueSizeCount": 5,
      "uniqueSizes": [
        {
          "w": 160,
          "h": 184
        },
        {
          "w": 168,
          "h": 152
        },
        {
          "w": 168,
          "h": 160
        },
        {
          "w": 184,
          "h": 144
        },
        {
          "w": 224,
          "h": 184
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004d1752",
          "frameCount": 6,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004d1752",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 6,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zs_rg",
      "cns": "zs_rg.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 6,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004b0ee2",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 6,
      "uniqueSizeCount": 6,
      "uniqueSizes": [
        {
          "w": 160,
          "h": 184
        },
        {
          "w": 168,
          "h": 152
        },
        {
          "w": 168,
          "h": 160
        },
        {
          "w": 184,
          "h": 144
        },
        {
          "w": 224,
          "h": 184
        },
        {
          "w": 232,
          "h": 144
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004b0ee2",
          "frameCount": 6,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004b0ee2",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 6,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zs_rr",
      "cns": "zs_rr.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 6,
      "tableCount": 1,
      "bestTableStartVaHex": "0x0043fbca",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 6,
      "uniqueSizeCount": 5,
      "uniqueSizes": [
        {
          "w": 152,
          "h": 152
        },
        {
          "w": 160,
          "h": 184
        },
        {
          "w": 176,
          "h": 152
        },
        {
          "w": 184,
          "h": 144
        },
        {
          "w": 232,
          "h": 184
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0043fbca",
          "frameCount": 6,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0043fbca",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 6,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zs_ryu",
      "cns": "zs_ryu.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 6,
      "tableCount": 1,
      "bestTableStartVaHex": "0x0051374b",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 6,
      "uniqueSizeCount": 6,
      "uniqueSizes": [
        {
          "w": 152,
          "h": 176
        },
        {
          "w": 160,
          "h": 144
        },
        {
          "w": 160,
          "h": 152
        },
        {
          "w": 168,
          "h": 136
        },
        {
          "w": 216,
          "h": 144
        },
        {
          "w": 216,
          "h": 176
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0051374b",
          "frameCount": 6,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0051374b",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 6,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zs_sl",
      "cns": "zs_sl.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 4,
      "tableCount": 1,
      "bestTableStartVaHex": "0x0050380e",
      "hasOffset2": true,
      "rectReviewStatus": "warn",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 4,
      "uniqueSizeCount": 4,
      "uniqueSizes": [
        {
          "w": 64,
          "h": 24
        },
        {
          "w": 64,
          "h": 32
        },
        {
          "w": 96,
          "h": 56
        },
        {
          "w": 112,
          "h": 40
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0050380e",
          "frameCount": 4,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0050380e",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 4,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zsa_iwa",
      "cns": "zsa_iwa.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 4,
      "tableCount": 1,
      "bestTableStartVaHex": "0x0052daf8",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 4,
      "uniqueSizeCount": 3,
      "uniqueSizes": [
        {
          "w": 40,
          "h": 64
        },
        {
          "w": 56,
          "h": 64
        },
        {
          "w": 64,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0052daf8",
          "frameCount": 4,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0052daf8",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 4,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zsa_kika",
      "cns": "zsa_kika.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 4,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004aab21",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 4,
      "uniqueSizeCount": 3,
      "uniqueSizes": [
        {
          "w": 40,
          "h": 64
        },
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 56,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004aab21",
          "frameCount": 4,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004aab21",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 4,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zsa_mi",
      "cns": "zsa_mi.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 4,
      "tableCount": 1,
      "bestTableStartVaHex": "0x0055736b",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 4,
      "uniqueSizeCount": 4,
      "uniqueSizes": [
        {
          "w": 40,
          "h": 64
        },
        {
          "w": 48,
          "h": 32
        },
        {
          "w": 56,
          "h": 64
        },
        {
          "w": 72,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0055736b",
          "frameCount": 4,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0055736b",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 4,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zsa_saru",
      "cns": "zsa_saru.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 3,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004d21e1",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 3,
      "uniqueSizeCount": 2,
      "uniqueSizes": [
        {
          "w": 40,
          "h": 64
        },
        {
          "w": 56,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004d21e1",
          "frameCount": 3,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004d21e1",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 3,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zsk_mou",
      "cns": "zsk_mou.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 9,
      "tableCount": 1,
      "bestTableStartVaHex": "0x00443328",
      "hasOffset2": true,
      "rectReviewStatus": "warn",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 9,
      "uniqueSizeCount": 3,
      "uniqueSizes": [
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 64,
          "h": 64
        },
        {
          "w": 80,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x00443328",
          "frameCount": 9,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x00443328",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 9,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zsl_yoi",
      "cns": "zsl_yoi.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 6,
      "tableCount": 1,
      "bestTableStartVaHex": "0x0048c0b4",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 6,
      "uniqueSizeCount": 3,
      "uniqueSizes": [
        {
          "w": 40,
          "h": 64
        },
        {
          "w": 48,
          "h": 64
        },
        {
          "w": 56,
          "h": 64
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0048c0b4",
          "frameCount": 6,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0048c0b4",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 6,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zy_gost",
      "cns": "zy_gost.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 4,
      "tableCount": 1,
      "bestTableStartVaHex": "0x0051c104",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 4,
      "uniqueSizeCount": 3,
      "uniqueSizes": [
        {
          "w": 64,
          "h": 80
        },
        {
          "w": 96,
          "h": 80
        },
        {
          "w": 112,
          "h": 80
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0051c104",
          "frameCount": 4,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x0051c104",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 4,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "zy_rich",
      "cns": "zy_rich.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 4,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004a5ee0",
      "hasOffset2": true,
      "rectReviewStatus": "good",
      "rectSource": "monster-exe-adjacent-source-rect-table",
      "rectCount": 4,
      "uniqueSizeCount": 3,
      "uniqueSizes": [
        {
          "w": 64,
          "h": 80
        },
        {
          "w": 96,
          "h": 80
        },
        {
          "w": 112,
          "h": 80
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004a5ee0",
          "frameCount": 4,
          "schema": "u32-xyxy-excl-offset2",
          "stride": 24,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": true,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": {
        "tableStartVaHex": "0x004a5ee0",
        "schema": "u32-xyxy-excl-offset2",
        "stride": 24,
        "frameCount": 4,
        "hasOffset2": null,
        "fieldLabel": null,
        "fieldPlus4Bound": null,
        "boundaryKind": null
      }
    },
    {
      "asset": "ed",
      "cns": "ed.cns",
      "category": "ui-misc",
      "categoryLabel": "UI/문구",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 2,
      "tableCount": 1,
      "bestTableStartVaHex": "0x0046c177",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "confirmed-full-screen",
      "rectCount": 1,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 640,
          "h": 480
        }
      ],
      "variableSizes": false,
      "wrapperRole": "surface-slot-with-uniform-looking-descriptor",
      "wrapperGridSufficient": false,
      "confidence": "medium",
      "conclusion": "descriptor +4 table is still the grounded source; its rects happen to use one size",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0046c177",
          "frameCount": 2,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": null
    },
    {
      "asset": "frame",
      "cns": "frame.cns",
      "category": "ui-misc",
      "categoryLabel": "UI/문구",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 1,
      "tableCount": 1,
      "bestTableStartVaHex": "0x0047e3d0",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "confirmed-full-frame",
      "rectCount": 1,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 640,
          "h": 352
        }
      ],
      "variableSizes": false,
      "wrapperRole": "surface-slot-with-uniform-looking-descriptor",
      "wrapperGridSufficient": false,
      "confidence": "medium",
      "conclusion": "descriptor +4 table is still the grounded source; its rects happen to use one size",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0047e3d0",
          "frameCount": 1,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "next-table-start"
        }
      ],
      "rectTableFromReview": null
    },
    {
      "asset": "logo_00",
      "cns": "logo_00.cns",
      "category": "ui-misc",
      "categoryLabel": "UI/문구",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 2,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004a2d16",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "best-exe-rect",
      "rectCount": 2,
      "uniqueSizeCount": 2,
      "uniqueSizes": [
        {
          "w": 176,
          "h": 224
        },
        {
          "w": 176,
          "h": 304
        }
      ],
      "variableSizes": true,
      "wrapperRole": "surface-slot-plus-dispatch",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "frame id must resolve through the descriptor +4 source-rect table; uniform wrapper cell width/height/columns cannot explain this asset alone",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004a2d16",
          "frameCount": 2,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": null
    },
    {
      "asset": "spot",
      "cns": "spot.cns",
      "category": "ui-misc",
      "categoryLabel": "UI/문구",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 4,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004429e1",
      "hasOffset2": false,
      "rectReviewStatus": "warn",
      "rectSource": "review-full-image",
      "rectCount": 1,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 608,
          "h": 224
        }
      ],
      "variableSizes": false,
      "wrapperRole": "surface-slot-with-uniform-looking-descriptor",
      "wrapperGridSufficient": false,
      "confidence": "medium",
      "conclusion": "descriptor +4 table is still the grounded source; its rects happen to use one size",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004429e1",
          "frameCount": 4,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": null
    },
    {
      "asset": "status",
      "cns": "status.cns",
      "category": "ui-misc",
      "categoryLabel": "UI/문구",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 23,
      "tableCount": 1,
      "bestTableStartVaHex": "0x0047e3e0",
      "hasOffset2": false,
      "rectReviewStatus": "warn",
      "rectSource": "review-full-image",
      "rectCount": 1,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 288,
          "h": 48
        }
      ],
      "variableSizes": false,
      "wrapperRole": "surface-slot-with-uniform-looking-descriptor",
      "wrapperGridSufficient": false,
      "confidence": "medium",
      "conclusion": "descriptor +4 table is still the grounded source; its rects happen to use one size",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x0047e3e0",
          "frameCount": 23,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": null
    },
    {
      "asset": "sun",
      "cns": "sun.cns",
      "category": "ui-misc",
      "categoryLabel": "UI/문구",
      "mode": "descriptor-plus4-source-rect-catalog",
      "status": "grounded",
      "frameCount": 13,
      "tableCount": 1,
      "bestTableStartVaHex": "0x004a9f14",
      "hasOffset2": false,
      "rectReviewStatus": "good",
      "rectSource": "confirmed-full-screen",
      "rectCount": 1,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 640,
          "h": 480
        }
      ],
      "variableSizes": false,
      "wrapperRole": "surface-slot-with-uniform-looking-descriptor",
      "wrapperGridSufficient": false,
      "confidence": "medium",
      "conclusion": "descriptor +4 table is still the grounded source; its rects happen to use one size",
      "descriptorTables": [
        {
          "tableStartVaHex": "0x004a9f14",
          "frameCount": 13,
          "schema": "u32-xyxy-excl",
          "stride": 16,
          "fieldLabel": "+4",
          "fieldPlus4Bound": true,
          "hasOffset2": false,
          "boundaryKind": "invalid-terminator"
        }
      ],
      "rectTableFromReview": null
    },
    {
      "asset": "face_01",
      "cns": "face_01.cns",
      "category": "face",
      "categoryLabel": "초상화",
      "mode": "fixed-grid-sheet",
      "status": "confirmed-grid",
      "frameCount": null,
      "tableCount": 0,
      "bestTableStartVaHex": null,
      "hasOffset2": null,
      "rectReviewStatus": "good",
      "rectSource": "confirmed-80x80-face-grid",
      "rectCount": 16,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 80,
          "h": 80
        }
      ],
      "variableSizes": false,
      "wrapperRole": "grid-sheet-consumer",
      "wrapperGridSufficient": true,
      "confidence": "high",
      "conclusion": "fixed grid sheet; wrapper-style cell width/height/columns is a compatible draw model",
      "descriptorTables": [],
      "rectTableFromReview": null
    },
    {
      "asset": "01234567",
      "cns": "01234567.cns",
      "category": "ui-misc",
      "categoryLabel": "UI/문구",
      "mode": "fixed-grid-sheet",
      "status": "review-grid",
      "frameCount": null,
      "tableCount": 0,
      "bestTableStartVaHex": null,
      "hasOffset2": null,
      "rectReviewStatus": "warn",
      "rectSource": "review-full-image",
      "rectCount": 1,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 88,
          "h": 32
        }
      ],
      "variableSizes": false,
      "wrapperRole": "grid-sheet-consumer",
      "wrapperGridSufficient": true,
      "confidence": "medium",
      "conclusion": "fixed grid sheet; wrapper-style cell width/height/columns is a compatible draw model",
      "descriptorTables": [],
      "rectTableFromReview": null
    },
    {
      "asset": "icon",
      "cns": "icon.cns",
      "category": "ui-misc",
      "categoryLabel": "UI/문구",
      "mode": "fixed-grid-sheet",
      "status": "confirmed-grid",
      "frameCount": null,
      "tableCount": 0,
      "bestTableStartVaHex": null,
      "hasOffset2": null,
      "rectReviewStatus": "good",
      "rectSource": "confirmed-32x32-cell-grid",
      "rectCount": 80,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 32,
          "h": 32
        }
      ],
      "variableSizes": false,
      "wrapperRole": "grid-sheet-consumer",
      "wrapperGridSufficient": true,
      "confidence": "high",
      "conclusion": "fixed grid sheet; wrapper-style cell width/height/columns is a compatible draw model",
      "descriptorTables": [],
      "rectTableFromReview": null
    },
    {
      "asset": "icon_s",
      "cns": "icon_s.cns",
      "category": "ui-misc",
      "categoryLabel": "UI/문구",
      "mode": "fixed-grid-sheet",
      "status": "review-grid",
      "frameCount": null,
      "tableCount": 0,
      "bestTableStartVaHex": null,
      "hasOffset2": null,
      "rectReviewStatus": "warn",
      "rectSource": "review-32x32-cell-grid",
      "rectCount": 2,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 32,
          "h": 32
        }
      ],
      "variableSizes": false,
      "wrapperRole": "grid-sheet-consumer",
      "wrapperGridSufficient": true,
      "confidence": "medium",
      "conclusion": "fixed grid sheet; wrapper-style cell width/height/columns is a compatible draw model",
      "descriptorTables": [],
      "rectTableFromReview": null
    },
    {
      "asset": "item",
      "cns": "item.cns",
      "category": "ui-misc",
      "categoryLabel": "UI/문구",
      "mode": "fixed-grid-sheet",
      "status": "confirmed-grid",
      "frameCount": null,
      "tableCount": 0,
      "bestTableStartVaHex": null,
      "hasOffset2": null,
      "rectReviewStatus": "good",
      "rectSource": "confirmed-32x32-cell-grid",
      "rectCount": 60,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 32,
          "h": 32
        }
      ],
      "variableSizes": false,
      "wrapperRole": "grid-sheet-consumer",
      "wrapperGridSufficient": true,
      "confidence": "high",
      "conclusion": "fixed grid sheet; wrapper-style cell width/height/columns is a compatible draw model",
      "descriptorTables": [],
      "rectTableFromReview": null
    },
    {
      "asset": "num",
      "cns": "num.cns",
      "category": "ui-misc",
      "categoryLabel": "UI/문구",
      "mode": "fixed-grid-sheet",
      "status": "confirmed-grid",
      "frameCount": null,
      "tableCount": 0,
      "bestTableStartVaHex": null,
      "hasOffset2": null,
      "rectReviewStatus": "good",
      "rectSource": "confirmed-glyph-grid",
      "rectCount": 40,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 16,
          "h": 16
        }
      ],
      "variableSizes": false,
      "wrapperRole": "grid-sheet-consumer",
      "wrapperGridSufficient": true,
      "confidence": "high",
      "conclusion": "fixed grid sheet; wrapper-style cell width/height/columns is a compatible draw model",
      "descriptorTables": [],
      "rectTableFromReview": null
    },
    {
      "asset": "cara_14",
      "cns": "cara_14.cns",
      "category": "character",
      "categoryLabel": "필드 캐릭터",
      "mode": "no-precut-evidence",
      "status": "none",
      "frameCount": null,
      "tableCount": 0,
      "bestTableStartVaHex": null,
      "hasOffset2": null,
      "rectReviewStatus": "bad",
      "rectSource": "missing",
      "rectCount": 0,
      "uniqueSizeCount": 0,
      "uniqueSizes": [],
      "variableSizes": false,
      "wrapperRole": "not-bound-in-precut-catalog",
      "wrapperGridSufficient": null,
      "confidence": "medium",
      "conclusion": "no descriptor +4/fixed-grid binding is promoted for this asset",
      "descriptorTables": [],
      "rectTableFromReview": null
    },
    {
      "asset": "zky_nmk",
      "cns": "zky_nmk.cns",
      "category": "enemy-object",
      "categoryLabel": "몬스터/오브젝트",
      "mode": "no-precut-evidence",
      "status": "none",
      "frameCount": null,
      "tableCount": 0,
      "bestTableStartVaHex": null,
      "hasOffset2": null,
      "rectReviewStatus": "bad",
      "rectSource": "missing",
      "rectCount": 0,
      "uniqueSizeCount": 0,
      "uniqueSizes": [],
      "variableSizes": false,
      "wrapperRole": "not-bound-in-precut-catalog",
      "wrapperGridSufficient": null,
      "confidence": "medium",
      "conclusion": "no descriptor +4/fixed-grid binding is promoted for this asset",
      "descriptorTables": [],
      "rectTableFromReview": null
    },
    {
      "asset": "aaa",
      "cns": "aaa.cns",
      "category": "ui-misc",
      "categoryLabel": "UI/문구",
      "mode": "no-precut-evidence",
      "status": "none",
      "frameCount": null,
      "tableCount": 0,
      "bestTableStartVaHex": null,
      "hasOffset2": null,
      "rectReviewStatus": "good",
      "rectSource": "confirmed-full-screen",
      "rectCount": 1,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 640,
          "h": 480
        }
      ],
      "variableSizes": false,
      "wrapperRole": "not-bound-in-precut-catalog",
      "wrapperGridSufficient": null,
      "confidence": "medium",
      "conclusion": "no descriptor +4/fixed-grid binding is promoted for this asset",
      "descriptorTables": [],
      "rectTableFromReview": null
    },
    {
      "asset": "compile",
      "cns": "compile.cns",
      "category": "ui-misc",
      "categoryLabel": "UI/문구",
      "mode": "no-precut-evidence",
      "status": "none",
      "frameCount": null,
      "tableCount": 0,
      "bestTableStartVaHex": null,
      "hasOffset2": null,
      "rectReviewStatus": "good",
      "rectSource": "confirmed-full-screen",
      "rectCount": 1,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 640,
          "h": 480
        }
      ],
      "variableSizes": false,
      "wrapperRole": "not-bound-in-precut-catalog",
      "wrapperGridSufficient": null,
      "confidence": "medium",
      "conclusion": "no descriptor +4/fixed-grid binding is promoted for this asset",
      "descriptorTables": [],
      "rectTableFromReview": null
    },
    {
      "asset": "ds14_a",
      "cns": "ds14_a.cns",
      "category": "ui-misc",
      "categoryLabel": "UI/문구",
      "mode": "no-precut-evidence",
      "status": "none",
      "frameCount": null,
      "tableCount": 0,
      "bestTableStartVaHex": null,
      "hasOffset2": null,
      "rectReviewStatus": "good",
      "rectSource": "confirmed-full-screen",
      "rectCount": 1,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 640,
          "h": 480
        }
      ],
      "variableSizes": false,
      "wrapperRole": "not-bound-in-precut-catalog",
      "wrapperGridSufficient": null,
      "confidence": "medium",
      "conclusion": "no descriptor +4/fixed-grid binding is promoted for this asset",
      "descriptorTables": [],
      "rectTableFromReview": null
    },
    {
      "asset": "ds14_b",
      "cns": "ds14_b.cns",
      "category": "ui-misc",
      "categoryLabel": "UI/문구",
      "mode": "no-precut-evidence",
      "status": "none",
      "frameCount": null,
      "tableCount": 0,
      "bestTableStartVaHex": null,
      "hasOffset2": null,
      "rectReviewStatus": "good",
      "rectSource": "confirmed-full-screen",
      "rectCount": 1,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 640,
          "h": 480
        }
      ],
      "variableSizes": false,
      "wrapperRole": "not-bound-in-precut-catalog",
      "wrapperGridSufficient": null,
      "confidence": "medium",
      "conclusion": "no descriptor +4/fixed-grid binding is promoted for this asset",
      "descriptorTables": [],
      "rectTableFromReview": null
    },
    {
      "asset": "ds14_ed",
      "cns": "ds14_ed.cns",
      "category": "ui-misc",
      "categoryLabel": "UI/문구",
      "mode": "no-precut-evidence",
      "status": "none",
      "frameCount": null,
      "tableCount": 0,
      "bestTableStartVaHex": null,
      "hasOffset2": null,
      "rectReviewStatus": "good",
      "rectSource": "confirmed-full-screen",
      "rectCount": 1,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 640,
          "h": 480
        }
      ],
      "variableSizes": false,
      "wrapperRole": "not-bound-in-precut-catalog",
      "wrapperGridSufficient": null,
      "confidence": "medium",
      "conclusion": "no descriptor +4/fixed-grid binding is promoted for this asset",
      "descriptorTables": [],
      "rectTableFromReview": null
    },
    {
      "asset": "ed_compi",
      "cns": "ed_compi.cns",
      "category": "ui-misc",
      "categoryLabel": "UI/문구",
      "mode": "no-precut-evidence",
      "status": "none",
      "frameCount": null,
      "tableCount": 0,
      "bestTableStartVaHex": null,
      "hasOffset2": null,
      "rectReviewStatus": "warn",
      "rectSource": "review-full-image",
      "rectCount": 1,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 304,
          "h": 32
        }
      ],
      "variableSizes": false,
      "wrapperRole": "not-bound-in-precut-catalog",
      "wrapperGridSufficient": null,
      "confidence": "medium",
      "conclusion": "no descriptor +4/fixed-grid binding is promoted for this asset",
      "descriptorTables": [],
      "rectTableFromReview": null
    },
    {
      "asset": "p_sp",
      "cns": "p_sp.cns",
      "category": "ui-misc",
      "categoryLabel": "UI/문구",
      "mode": "no-precut-evidence",
      "status": "none",
      "frameCount": null,
      "tableCount": 0,
      "bestTableStartVaHex": null,
      "hasOffset2": null,
      "rectReviewStatus": "warn",
      "rectSource": "review-full-image",
      "rectCount": 1,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 16,
          "h": 16
        }
      ],
      "variableSizes": false,
      "wrapperRole": "not-bound-in-precut-catalog",
      "wrapperGridSufficient": null,
      "confidence": "medium",
      "conclusion": "no descriptor +4/fixed-grid binding is promoted for this asset",
      "descriptorTables": [],
      "rectTableFromReview": null
    },
    {
      "asset": "p_wb",
      "cns": "p_wb.cns",
      "category": "ui-misc",
      "categoryLabel": "UI/문구",
      "mode": "no-precut-evidence",
      "status": "none",
      "frameCount": null,
      "tableCount": 0,
      "bestTableStartVaHex": null,
      "hasOffset2": null,
      "rectReviewStatus": "warn",
      "rectSource": "review-full-image",
      "rectCount": 1,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 16,
          "h": 16
        }
      ],
      "variableSizes": false,
      "wrapperRole": "not-bound-in-precut-catalog",
      "wrapperGridSufficient": null,
      "confidence": "medium",
      "conclusion": "no descriptor +4/fixed-grid binding is promoted for this asset",
      "descriptorTables": [],
      "rectTableFromReview": null
    },
    {
      "asset": "title",
      "cns": "title.cns",
      "category": "ui-misc",
      "categoryLabel": "UI/문구",
      "mode": "no-precut-evidence",
      "status": "none",
      "frameCount": null,
      "tableCount": 0,
      "bestTableStartVaHex": null,
      "hasOffset2": null,
      "rectReviewStatus": "good",
      "rectSource": "confirmed-full-screen",
      "rectCount": 1,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 640,
          "h": 480
        }
      ],
      "variableSizes": false,
      "wrapperRole": "not-bound-in-precut-catalog",
      "wrapperGridSufficient": null,
      "confidence": "medium",
      "conclusion": "no descriptor +4/fixed-grid binding is promoted for this asset",
      "descriptorTables": [],
      "rectTableFromReview": null
    },
    {
      "asset": "window",
      "cns": "window.cns",
      "category": "ui-misc",
      "categoryLabel": "UI/문구",
      "mode": "window-template-region-catalog",
      "status": "grounded",
      "frameCount": null,
      "tableCount": 0,
      "bestTableStartVaHex": null,
      "hasOffset2": null,
      "rectReviewStatus": "good",
      "rectSource": "confirmed-16x16-cell-grid",
      "rectCount": 72,
      "uniqueSizeCount": 1,
      "uniqueSizes": [
        {
          "w": 16,
          "h": 16
        }
      ],
      "variableSizes": false,
      "wrapperRole": "window-template-system",
      "wrapperGridSufficient": false,
      "confidence": "high",
      "conclusion": "window.cns uses reusable template/region records, not a descriptor +4 source-rect table",
      "descriptorTables": [],
      "rectTableFromReview": null
    }
  ],
  "nextFrontier": [
    {
      "area": "runtime wrapper memory dump",
      "reason": "static evidence proves the consumer fields, but not each loaded slot's live +0x2e/+0x30/+0x32/+0x34 values"
    },
    {
      "area": "object+0x2c / BltFast flags",
      "reason": "needed to separate source-color-key copy, opaque copy, draw priority, and palette/context behavior"
    },
    {
      "area": "descriptor table producer",
      "reason": "descriptor +4 tables are grounded; the loader that binds CNS descriptors to these tables remains useful for future automation"
    }
  ]
}
