{
  "status": "completed",
  "completed_count": 91,
  "applicable_count": 91,
  "failed_count": 0,
  "config_hash": "7f4e18fdeaddc219cc36f90902bff949b414d65be903df26e9a840571c157909",
  "data": {
    "scenes": [
      {
        "scene_index": 1,
        "scene_heading": "1. 바다 속 – D",
        "shots": [
          {
            "shot_index": 1,
            "description": "바다 밑바닥에 잠긴 온갖 쓰레기 더미 틈으로 튀어나온 낡은 로봇 손가락을 향해 작은 물고기가 유유히 다가가는 도중, 지느러미를 뒤로 젖힌 채 물살을 가르는 mid-action 찰나.",
            "characters": [
              "작은 물고기"
            ],
            "based_on_beat": 1,
            "original_description": "바다 밑바닥에 잠긴 온갖 쓰레기 더미 틈으로 튀어나온 낡은 로봇 손가락을 향해 작은 물고기가 유유히 헤엄치는 모습.",
            "validator_reason": "'헤엄치는 모습'이라는 이동 동작을 지느러미의 방향과 추진력을 보존한 단일 정지 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "작은 물고기의 주둥이가 낡은 로봇 손가락 끝에 톡 맞닿은 찰나의 클로즈업.",
            "characters": [
              "작은 물고기"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "위에서 거대한 수많은 물기포들이 쏟아져 내리는 가운데, 놀란 물고기가 도망치기 위해 지느러미를 강하게 비틀어 몸을 꺾은 찰나의 자세.",
            "characters": [
              "물고기"
            ],
            "based_on_beat": 1,
            "original_description": "위에서 거대한 수많은 물기포들이 쏟아져 내리는 가운데, 놀란 물고기가 지느러미를 강하게 비틀며 도망치는 자세.",
            "validator_reason": "'비틀며 도망치는'이라는 연속 동작을 도망가기 위해 몸을 꺾은 결과 상태인 고정된 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "수면 위에서부터 깊은 바다 속으로 뻗어 내려온 거대한 금속 크레인의 집게가 쓰레기 더미 위를 우악스럽게 덮치며 내려오는 도중, 물살을 밀어내고 있는 찰나의 프레임.",
            "characters": [],
            "based_on_beat": 1,
            "original_description": "수면 위에서부터 깊은 바다 속으로 뻗어 내려온 거대한 금속 크레인의 집게가 쓰레기 더미 위를 우악스럽게 덮치는 프레임.",
            "validator_reason": "'덮치는'이라는 변화 동작을 덮치며 내려오는 도중의 진행 위상을 한 순간으로 멈춰 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 2,
        "scene_heading": "2. 쓰레기 수거선 – D",
        "shots": [
          {
            "shot_index": 1,
            "description": "산산이 부서진 헬리콥터 잔해와 반 토막 난 선박, 잡다한 쓰레기들이 수면에 부유하는 바다 위 거대한 쓰레기 수거선의 전경.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "쓰레기 수거선의 널찍한 철제 갑판 위로 젖은 쓰레기 무더기들이 허공에서 우수수 쏟아져 내리는 찰나.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "갑판 위 쏟아진 쓰레기 더미 틈에 파묻힌 채, 굵은 그물에 몸이 칭칭 감겨 있는 낡고 부서진 고철 로봇 찰리의 정지된 외관.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 3,
        "scene_heading": "3. 도로 위 – D",
        "shots": [
          {
            "shot_index": 1,
            "description": "고철을 짐칸에 가득 실은 덤프트럭 한 대가 아스팔트 도로 위를 질주하는 외관.",
            "characters": [],
            "based_on_beat": 0,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "자율주행 중인 덤프트럭 운전석에 앉은 아시아계 한국인 운전사의 고개가 핸들 쪽으로 푹 꺾여 잠든 찰나.",
            "characters": [
              "아시아계 한국인 운전사"
            ],
            "based_on_beat": 0,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 4,
        "scene_heading": "4. 고급주택가. 자동차 안 – D",
        "shots": [
          {
            "shot_index": 1,
            "description": "화려한 도심 빌딩과 고급주택가를 배경으로 정차된 차 안 운전석에서 페드로가 앞창문 밖을 주시하는 얼굴.",
            "characters": [
              "페드로"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "조수석에 앉은 이현우가 심하게 구겨진 허술한 도면 종이를 두 손으로 펼쳐 들고 미간을 깊게 찌푸린 표정.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "페드로가 조수석 창밖으로 팔을 뻗어 길 건너편의 고급주택 쪽을 정확히 가리키는 손끝.",
            "characters": [
              "페드로"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "차에서 내린 이현우가 어깨를 움츠린 채 길 건너의 으리으리한 고급주택을 향해 걷는 도중 한 발을 허공에 든 mid-stride 자세의 뒷모습.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "차에서 내린 이현우가 어깨를 움츠린 채 길 건너의 으리으리한 고급주택을 향해 걸어가는 뒷모습.",
            "validator_reason": "연속적인 걷기 동작을 추진 방향과 자세가 보존된 mid-stride 정지 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "고급주택 근처에 멈춰 선 이현우가 검지 손가락을 들어 자신의 귓바퀴에 꽂힌 소형 무선 이어폰 바깥쪽을 꾹 누르는 순간.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "차 안 운전석에 남아있는 페드로가 자신의 귀에 낀 이어폰을 손으로 단단히 누르며 입술을 여는 찰나.",
            "characters": [
              "페드로"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "길가에 선 이현우가 고개를 살짝 떨군 채 입술을 비죽 내밀고 깊은 한숨을 내쉬는 표정.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 5,
        "scene_heading": "5. 고급주택가 + 집안 거실 – D",
        "shots": [
          {
            "shot_index": 1,
            "description": "이현우가 고급주택의 높은 돌담을 딛은 발에 힘을 실어 담 너머로 상체를 훌쩍 넘기는 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 고급주택의 높은 돌담 위로 상체를 훌쩍 넘기며 공중에 떠 있는 찰나.",
            "validator_reason": "지지 단서 없이 공중에 떠 있는 순간을 담을 딛고 넘는 순간으로 바꾸어 추진 방향과 몸을 받치는 접점을 보존했다.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "거실의 커다란 통유리창 너머 집 안에서 먼지떨이를 든 코카시안 백인 여성 외형의 집사 로봇이 가구를 문질러 닦는 중인 모습.",
            "characters": [
              "코카시안 백인 여성 외형의 집사 로봇"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "굳게 닫힌 현관문 앞의 구형 금속 도어락을 내려다보며 당황한 듯 눈을 크게 뜬 이현우의 표정.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "이현우가 거실 통유리창 앞 대리석 바닥 위에 자신의 스마트폰을 슬쩍 내려놓는 손끝.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "이현우가 통유리창 바깥쪽 모퉁이 벽에 등을 바짝 기대고 숨결을 참는 긴장된 자세.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "멀리 떨어진 차 안의 페드로가 노트북 자판 위에 두 손을 둔 채 빠르게 타이핑하는 찰나.",
            "characters": [
              "페드로"
            ],
            "based_on_beat": 1,
            "original_description": "멀리 떨어진 차 안의 페드로가 노트북 자판 위로 두 손을 올려 빠르게 타이핑하는 찰나.",
            "validator_reason": "손을 올린 뒤 타이핑하는 연결을 자판 위에 놓인 손의 상태와 타이핑 한 동작으로 줄였다.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "통유리창 앞 바닥에 놓인 스마트폰 액정 화면에 붉은색 글씨로 'UNKNOWN'이 밝게 빛나는 클로즈업.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "집 안의 백인 여성형 집사 로봇이 반쯤 열린 유리창 밖으로 얼굴을 내민 채 스마트폰을 귀에 바짝 댄 상태.",
            "characters": [
              "백인 여성형 집사 로봇"
            ],
            "based_on_beat": 1,
            "original_description": "집 안의 백인 여성형 집사 로봇이 반쯤 열린 유리창 밖으로 얼굴을 내민 채 스마트폰을 주워 귀에 바짝 댄 상태.",
            "validator_reason": "스마트폰을 줍는 선행 동작만 제거하고 얼굴과 스마트폰의 위치 및 유리창의 반쯤 열린 상태를 보존했다.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "해킹 음향에 반응한 백인 여성형 집사 로봇의 입이 비정상적으로 쩍 벌어지고 눈이 뒤집힌 상태로 상체가 바깥으로 확 꺾이는 찰나.",
            "characters": [
              "백인 여성형 집사 로봇"
            ],
            "based_on_beat": 1,
            "original_description": "해킹 음향을 전해 들은 백인 여성형 집사 로봇의 입이 비정상적으로 쩍 벌어지고 눈이 뒤집히며 상체가 바깥으로 확 꺾인 찰나.",
            "validator_reason": "음향을 듣고 입과 눈이 변한 뒤 몸이 꺾이는 흐름을 입과 눈의 결과 상태가 보이는 상체 꺾임 한 순간으로 줄였다.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "열린 창문 밖으로 힘없이 꺾인 백인 여성형 집사 로봇의 상체를 벽 모퉁이의 이현우가 두 팔로 덥석 받아 안는 순간.",
            "characters": [
              "백인 여성형 집사 로봇",
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "열린 창문 밖으로 힘없이 고꾸라지는 백인 여성형 집사 로봇의 상체를 벽 뒤에 숨어있던 이현우가 두 팔로 덥석 받아 안는 순간.",
            "validator_reason": "벽 뒤에 숨어 있던 과거 동작을 현재의 벽 모퉁이 위치로 바꾸고 로봇의 하향 자세와 두 팔로 받는 능동적 접촉 한 순간을 남겼다.",
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "축 늘어진 무거운 집사 로봇을 두 팔로 품에 단단히 안아 든 이현우가 미간에 주름이 잡힌 채 끙끙대는 얼굴.",
            "characters": [
              "집사 로봇",
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "축 늘어진 무거운 집사 로봇을 두 팔로 품에 단단히 안아 든 이현우가 미간에 주름을 잡으며 끙끙대는 얼굴.",
            "validator_reason": "미간에 주름을 잡는 동작을 이미 주름진 표정으로 바꾸어 로봇을 안은 상태에서 끙끙대는 한 순간으로 정리했다.",
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "거실 통유리창 안쪽에서 송곳니를 훤히 드러낸 채 으르렁거리는 거대한 셰퍼드의 맹렬한 짐승의 표정.",
            "characters": [
              "셰퍼드"
            ],
            "based_on_beat": 2,
            "original_description": "거실 통유리창 안쪽에서 송곳니를 훤히 드러내며 으르렁거리는 거대한 셰퍼드의 맹렬한 짐승의 표정.",
            "validator_reason": "송곳니를 드러내는 동작을 드러난 결과 상태로 바꾸고 으르렁거리는 한 동작과 맹렬한 기색을 보존했다.",
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "셰퍼드가 두 앞발을 맹렬히 앞으로 뻗은 채 활짝 열린 거실 창문 밖 이현우를 향해 공중으로 도약 중인 찰나.",
            "characters": [
              "셰퍼드",
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "셰퍼드가 활짝 열린 거실 창문 밖 이현우를 향해 공중으로 날아오르며 두 앞발을 맹렬히 뻗는 찰나.",
            "validator_reason": "날아오르며 앞발을 뻗는 두 동작을 앞발이 뻗어진 도약 중 한 순간으로 줄이고 도약 방향과 충돌 대상인 이현우를 보존했다.",
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "셰퍼드의 기습에 놀란 이현우의 두 팔이 양옆으로 확 벌어진 상태에서 집사 로봇이 그의 품 아래 허공으로 툭 떨어지는 순간.",
            "characters": [
              "이현우",
              "집사 로봇"
            ],
            "based_on_beat": 2,
            "original_description": "셰퍼드의 기습에 놀란 이현우의 두 팔이 양옆으로 확 벌어지며, 껴안고 있던 집사 로봇이 아래쪽 허공으로 툭 떨어지는 순간.",
            "validator_reason": "팔을 벌리며 로봇을 놓는 흐름을 벌어진 팔 아래로 로봇이 떨어지는 진행 중 한 순간으로 줄이고 낙하의 출처인 이현우의 품을 명시했다.",
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "바닥에 쿵 떨어진 백인 여성형 집사 로봇의 머리 윗부분을 셰퍼드의 날카로운 이빨이 무자비하게 파고드는 찰나.",
            "characters": [
              "백인 여성형 집사 로봇",
              "셰퍼드"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "셰퍼드에게 찢겨 벗겨진 인공 피부 가죽 사이로 여성형 집사 로봇 내부의 차가운 금속 프레임이 흉측하게 노출된 클로즈업.",
            "characters": [
              "여성형 집사 로봇"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "열린 창문 안쪽의 이현우가 상체를 웅크린 채 한 발로 실내 바닥을 밀어내며 2층 나무 계단을 향해 전력 질주하는 뒷모습.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "열린 창문을 통해 집 안으로 몸을 피한 이현우가 2층 나무 계단을 향해 상체를 웅크린 채 전력 질주하는 뒷모습.",
            "validator_reason": "창문으로 피신한 선행 동작을 실내 위치로 바꾸고 바닥을 밀어내는 발로 계단을 향한 질주의 추진력이 보이는 한 순간을 선택했다.",
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "2층 침대에 나란히 앉은 코카시안 백인 노인 부부가 계단 쪽에서 들리는 소음을 향해 두 눈을 동그랗게 뜨고 얼어붙은 표정.",
            "characters": [
              "코카시안 백인 노인 부부"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "이현우의 뒤를 바짝 쫓아 2층 나무 계단을 무서운 속도로 박차고 올라오는 셰퍼드의 역동적이고 날렵한 자태.",
            "characters": [
              "이현우",
              "셰퍼드"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 20,
            "description": "2층 창문 틀을 밟고 밖으로 몸을 날리려는 이현우의 오른쪽 종아리 바지를 셰퍼드가 사나운 이빨로 콱 물고 늘어지는 순간.",
            "characters": [
              "이현우",
              "셰퍼드"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 21,
            "description": "다급해진 이현우가 공중으로 번쩍 들어 올린 왼쪽 발목으로 셰퍼드의 턱 밑을 강하게 걷어차 올리는 타격의 찰나.",
            "characters": [
              "이현우",
              "셰퍼드"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 22,
            "description": "2층 창문 밖에서 몸을 둥글게 만 이현우가 1층 정원 잔디밭을 향해 빠르게 하강하는 공중 샷.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "셰퍼드의 속박에서 벗어난 이현우가 2층 창문 밖 허공을 향해 몸을 둥글게 만 채 빠르게 하강하는 공중 샷.",
            "validator_reason": "셰퍼드의 속박에서 벗어난 선행 사건을 제거하고 하강 중 위상을 유지하면서 다음 shot에 명시된 착지 지점인 정원 잔디밭을 방향 단서로 연결했다.",
            "character_ids": []
          },
          {
            "shot_index": 23,
            "description": "1층 정원 잔디밭에 두 발과 양손 바닥을 댄 이현우가 두 무릎을 깊게 굽힌 채 착지 충격을 흡수하는 날렵한 자세.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "1층 정원 잔디밭에 두 발로 착지한 이현우가 두 무릎을 깊게 굽히며 양손 바닥으로 땅을 짚어 충격을 흡수하는 날렵한 자세.",
            "validator_reason": "착지한 뒤 무릎을 굽히고 손으로 땅을 짚는 흐름을 두 발과 양손이 땅에 닿고 무릎이 깊게 굽혀진 충격 흡수 한 순간으로 줄였다.",
            "character_ids": []
          },
          {
            "shot_index": 24,
            "description": "잔디밭에 꼿꼿이 선 이현우의 몸을 빙 둘러싼 채, 짙은 남색 제복을 입은 아시아계 한국인 경찰 여러 명이 권총을 일제히 겨눈 위압적인 구도.",
            "characters": [
              "이현우",
              "아시아계 한국인 경찰 여러 명"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 25,
            "description": "차가운 금속 수갑이 채워진 이현우가 양옆의 경찰들에게 팔을 단단히 붙잡힌 채 길 저편으로 고개를 돌린 상태로 노려보는 날선 표정.",
            "characters": [
              "이현우",
              "경찰들"
            ],
            "based_on_beat": 3,
            "original_description": "차가운 금속 수갑이 채워진 이현우가 양옆의 경찰들에게 팔을 단단히 붙잡힌 채 길 저편을 향해 고개를 돌려 노려보는 날선 표정.",
            "validator_reason": "고개를 돌린 뒤 노려보는 연결을 고개가 돌아간 결과 상태로 바꾸고 수갑과 경찰의 단단한 붙잡음 및 날선 표정을 보존했다.",
            "character_ids": []
          },
          {
            "shot_index": 26,
            "description": "이현우의 매서운 시선이 향한 고급주택가 아스팔트 도로 위에, 페드로가 탔던 차량이 먼지 하나 없이 텅 비어 사라진 황량한 풍경.",
            "characters": [],
            "based_on_beat": 3,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 6,
        "scene_heading": "인천 난민촌 도로 + 쓰레기장 – D",
        "shots": [
          {
            "shot_index": 1,
            "description": "거대한 쓰레기 산 위로 덤프트럭 짐칸에서 잡동사니 쓰레기들이 우수수 쏟아져 내리는 찰나.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "거대한 쓰레기 더미 사이로 흑인 혼혈 소년 라울이 고개를 불쑥 내민 채 주변을 살피는 얼굴.",
            "characters": [
              "흑인 혼혈 소년 라울"
            ],
            "based_on_beat": 1,
            "original_description": "거대한 쓰레기 더미 사이로 흑인 혼혈 소년 라울이 고개를 불쑥 내밀고 주변을 살피는 얼굴.",
            "validator_reason": "순차 동작 '내밀고 살피는'을 '내민 채 살피는' 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "멀어지는 덤프트럭을 향해 라울이 입술을 동그랗게 모은 채 휘파람을 부는 표정.",
            "characters": [
              "라울"
            ],
            "based_on_beat": 1,
            "original_description": "멀어지는 덤프트럭을 향해 라울이 입술을 동그랗게 모으고 휘파람을 부는 표정.",
            "validator_reason": "순차 동작 '모으고 부는'을 결과 상태 '모은 채 부는'으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "라울 옆 쓰레기 더미에서 마스크를 쓴 백인 혼혈 소녀 앰버가 얼굴을 쏙 내민 찰나.",
            "characters": [
              "라울",
              "마스크를 쓴 백인 혼혈 소녀 앰버"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "앰버가 찌그러진 금속 로봇 팔을 두 손으로 꽉 쥔 채 허공으로 번쩍 들어 올린 상태.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "앰버가 한 손으로 로봇 팔을 잡은 채 다른 손으로 렌치를 쥐어 볼트를 강하게 조이는 찰나.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 1,
            "original_description": "앰버가 한 손으로 로봇 팔을 잡고 다른 손으로 렌치를 쥐어 볼트를 강하게 조이는 찰나.",
            "validator_reason": "순차 동작 '잡고 쥐어 조이는'을 고정 자세 '잡은 채 쥐어 조이는'으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "라울이 낡고 부서진 주크박스 기계를 두 손으로 든 채 앰버 앞에 쪼그려 앉은 전신.",
            "characters": [
              "라울",
              "앰버"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "라울이 양손으로 낡은 주크박스를 단단히 쥔 채 허공에서 위아래로 힘껏 흔드는 찰나.",
            "characters": [
              "라울"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "낡은 모포 위에 분해된 주크박스 부품들과 공구, 검은색 LP판들이 널브러져 있는 바닥의 클로즈업.",
            "characters": [],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "앰버와 라울이 거대한 쓰레기 더미 양쪽에서 상체를 숙인 채 파묻힌 잡동사니들을 양손으로 파헤치는 순간.",
            "characters": [
              "앰버",
              "라울"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "앰버가 커다란 나팔 모양의 금속 스피커를 두 손으로 높이 치켜든 채 활짝 웃는 표정.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 2,
            "original_description": "앰버가 커다란 나팔 모양의 금속 스피커를 두 손으로 높이 치켜들고 활짝 웃는 표정.",
            "validator_reason": "순차 동작 '치켜들고 웃는'을 결과 상태 '치켜든 채 웃는'으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "라울이 주크박스 부품과 LP판을 품에 안은 채 앰버 쪽을 향해 다급하게 내달리는 도중, 한쪽 발이 허공에 떠 있는 역동적인 찰나.",
            "characters": [
              "라울",
              "앰버"
            ],
            "based_on_beat": 2,
            "original_description": "라울이 주크박스 부품과 LP판을 품에 안고 앰버 쪽을 향해 다급하게 뛰어오는 역동적인 찰나.",
            "validator_reason": "동적 동작인 '뛰어오는'을 방향성이 보존된 mid-stride 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "앰버가 주크박스 본체 위로 LP판의 중앙 구멍을 정확히 맞춰 끼워 넣는 손끝 클로즈업.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "턴테이블 위에서 검은색 LP판이 빙글빙글 돌아가는 상태의 클로즈업.",
            "characters": [],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "라울과 앰버가 귀를 주크박스 쪽으로 바짝 기울인 채 눈을 크게 뜨고 미소 지은 얼굴.",
            "characters": [
              "라울",
              "앰버"
            ],
            "based_on_beat": 2,
            "original_description": "라울과 앰버가 귀를 주크박스 쪽으로 바짝 기울인 채 눈을 크게 뜨고 미소 짓는 얼굴.",
            "validator_reason": "순차 동작 '뜨고 짓는'을 결과 상태 '뜨고 지은'으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "쓰레기 더미 아래 파묻힌 낡은 금속 고릴라 로봇 찰리의 굵은 손가락 하나가 위로 까딱 튕겨 오르는 찰나의 클로즈업.",
            "characters": [
              "고릴라 로봇 찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "라울과 앰버가 동시에 고개를 돌려 서로의 눈을 마주친 채 놀란 표정을 짓고 있는 순간.",
            "characters": [
              "라울",
              "앰버"
            ],
            "based_on_beat": 3,
            "original_description": "라울과 앰버가 동시에 고개를 돌려 서로의 눈을 마주치며 놀란 표정을 짓는 순간.",
            "validator_reason": "순차 동작 '마주치며 짓는'을 결과 상태 '마주친 채 짓고 있는'으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "라울과 앰버가 어깨를 잔뜩 웅크린 채 거대한 쓰레기 더미 쪽을 향해 조심스레 한 발을 내딛는 mid-stride 자세.",
            "characters": [
              "라울",
              "앰버"
            ],
            "based_on_beat": 3,
            "original_description": "라울과 앰버가 어깨를 잔뜩 웅크린 채 거대한 쓰레기 더미 쪽을 향해 조심스레 발을 내딛는 자세.",
            "validator_reason": "동적 동작인 '내딛는 자세'를 보존하기 위해 mid-stride 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "라울과 앰버의 등 뒤편 거대한 쓰레기 더미를 뚫고 고릴라 로봇 찰리의 거대한 금속 팔이 하늘을 향해 뻗어 나온 찰나.",
            "characters": [
              "라울",
              "앰버",
              "고릴라 로봇 찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 20,
            "description": "기겁한 라울과 앰버가 뒤로 넘어지며 엉덩방아를 찧기 직전, 몸이 뒤로 크게 기울어진 역동적인 순간.",
            "characters": [
              "라울",
              "앰버"
            ],
            "based_on_beat": 3,
            "original_description": "기겁한 라울과 앰버가 엉덩방아를 찧으며 뒤로 넘어지는 역동적인 순간.",
            "validator_reason": "순차 동작 '찧으며 넘어지는'을 넘어지는 도중의 한 찰나로 수정하여 방향성을 보존함.",
            "character_ids": []
          },
          {
            "shot_index": 21,
            "description": "낡은 금속 고릴라 로봇 찰리가 쓰레기 더미 속에서 상체를 무겁게 일으켜 세운 웅장한 전신.",
            "characters": [
              "낡은 금속 고릴라 로봇 찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 22,
            "description": "고릴라 로봇 찰리의 두 눈 부분에서 푸른색 섬광이 밝게 켜진 클로즈업.",
            "characters": [
              "고릴라 로봇 찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 23,
            "description": "바닥에 주저앉은 라울과 앰버가 서로의 어깨를 꽉 끌어안은 채 공포에 질려 위를 올려다보는 시선.",
            "characters": [
              "라울",
              "앰버"
            ],
            "based_on_beat": 3,
            "original_description": "바닥에 주저앉은 라울과 앰버가 서로의 어깨를 꽉 끌어안고 공포에 질린 채 위를 올려다보는 시선.",
            "validator_reason": "순차 동작 '끌어안고 올려다보는'을 고정 상태 '끌어안은 채 올려다보는'으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 24,
            "description": "고릴라 로봇 찰리가 두 다리로 일어서려다 한쪽 무릎이 덜컥 꺾인 채 정지된 불안정한 자세.",
            "characters": [
              "고릴라 로봇 찰리"
            ],
            "based_on_beat": 3,
            "original_description": "고릴라 로봇 찰리가 두 다리로 일어서며 한쪽 무릎이 덜컥 꺾이는 불안정한 자세.",
            "validator_reason": "순차 동작 '일어서며 꺾이는'을 꺾인 채 멈춘 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 25,
            "description": "앰버가 바닥에서 몸을 일으켜 세운 채 고릴라 로봇 찰리를 향해 한 발짝 다가서서 멈춘 옆모습.",
            "characters": [
              "앰버",
              "고릴라 로봇 찰리"
            ],
            "based_on_beat": 3,
            "original_description": "앰버가 바닥에서 몸을 일으켜 세운 채 고릴라 로봇 찰리를 향해 한 발짝 다가선 옆모습.",
            "validator_reason": "동작의 전후 연결인 '다가선'을 결과 상태 '다가서서 멈춘'으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 26,
            "description": "거대한 금속 덩치의 찰리가 아래쪽에 선 작은 앰버를 향해 고개를 푹 숙인 채 내려다보는 구도.",
            "characters": [
              "거대한 금속 덩치의 찰리",
              "작은 앰버"
            ],
            "based_on_beat": 4,
            "original_description": "거대한 금속 덩치의 찰리가 아래쪽에 선 작은 앰버를 향해 고개를 푹 숙여 내려다보는 구도.",
            "validator_reason": "순차 동작 '숙여 내려다보는'을 고정 자세 '숙인 채 내려다보는'으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 27,
            "description": "찰리가 두꺼운 금속 팔로 앰버의 작은 몸집을 와락 끌어안아, 앰버의 어깨가 찰리의 가슴에 강하게 밀착된 찰나.",
            "characters": [
              "찰리",
              "앰버"
            ],
            "based_on_beat": 4,
            "original_description": "찰리가 두꺼운 금속 팔로 앰버의 작은 몸집을 와락 끌어안는 찰나.",
            "validator_reason": "모호한 접촉인 '끌어안는 찰나'를 능동성과 접촉 지점을 보존한 '밀착된 찰나'로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 28,
            "description": "찰리의 품에 안긴 앰버가 두 팔이 허공에 뜬 채 당황한 눈으로 앞을 바라보는 표정.",
            "characters": [
              "찰리",
              "앰버"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 29,
            "description": "찰리가 앰버의 양어깨를 잡은 채 몸을 뒤로 살짝 떼어내어 얼굴을 유심히 들여다보는 모습.",
            "characters": [
              "찰리",
              "앰버"
            ],
            "based_on_beat": 4,
            "original_description": "찰리가 앰버의 양어깨를 잡고 뒤로 살짝 떼어내어 얼굴을 유심히 들여다보는 모습.",
            "validator_reason": "순차 동작 '잡고 떼어내어'를 결과 상태 '잡은 채 떼어내어'로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 30,
            "description": "찰리의 시야 인터페이스 속 지소영의 얼굴 사진 위로 'NEGATIVE'라는 붉은 글자가 선명하게 겹쳐진 주관 시점 찰나.",
            "characters": [
              "찰리",
              "지소영"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 31,
            "description": "찰리의 안광이 살짝 흐려진 채 고개를 아래로 푹 떨군 실망한 자태.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 4,
            "original_description": "찰리의 안광이 살짝 흐려지며 고개를 아래로 푹 떨군 실망한 자태.",
            "validator_reason": "순차 동작 '흐려지며 떨군'을 결과 상태 '흐려진 채 떨군'으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 32,
            "description": "찰리가 고개를 돌린 채 산더미처럼 쌓인 주변의 쓰레기장 풍경을 둘러보는 모습.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 4,
            "original_description": "찰리가 고개를 돌려 산더미처럼 쌓인 주변의 쓰레기장 풍경을 둘러보는 모습.",
            "validator_reason": "순차 동작 '돌려 둘러보는'을 결과 상태 '돌린 채 둘러보는'으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 33,
            "description": "앰버가 찰리를 향해 한쪽 손을 활짝 편 채 내밀고 있는 친근한 동작.",
            "characters": [
              "앰버",
              "찰리"
            ],
            "based_on_beat": 5,
            "original_description": "앰버가 찰리를 향해 한쪽 손을 활짝 펴고 내민 친근한 동작.",
            "validator_reason": "순차 동작 '펴고 내민'을 결과 상태 '편 채 내밀고 있는'으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 34,
            "description": "찰리가 고개를 옆으로 꺾은 채 굵은 금속 검지손가락으로 바닥의 낡은 주크박스를 콕 가리키는 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 35,
            "description": "앰버가 주크박스의 재생 다이얼을 꾹 누르는 손끝 클로즈업.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 36,
            "description": "찰리의 입가 금속 부품이 위로 올라간 상태에서, 두 어깨가 위쪽으로 한껏 들린 유쾌한 자세.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 5,
            "original_description": "찰리의 입가 금속 부품이 위로 올라가며, 두 어깨를 위아래로 들썩이는 유쾌한 자세.",
            "validator_reason": "진행형 동작 '올라가며 들썩이는'을 한 순간인 '올라간 상태에서 들린 자세'로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 37,
            "description": "앰버가 주크박스의 버튼을 눌러 들어간 채 고정된 상태의 스위치 클로즈업.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 38,
            "description": "찰리의 두 어깨가 축 처지고 눈가의 푸른빛이 희미해진 슬픈 형태의 전신.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 39,
            "description": "찰리의 턱관절 금속 부품이 덜컥거리며 벌어진 상태의 얼굴 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 40,
            "description": "라울이 손가락으로 멀리 떨어진 도로 쪽을 가리킨 채 눈을 크게 치켜뜬 당황한 표정.",
            "characters": [
              "라울"
            ],
            "based_on_beat": 6,
            "original_description": "라울이 손가락으로 멀리 떨어진 도로 쪽을 가리키며 눈을 크게 치켜뜬 당황한 표정.",
            "validator_reason": "순차 동작 '가리키며 치켜뜬'을 결과 상태 '가리킨 채 치켜뜬'으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 41,
            "description": "먼지 나는 도로 저편에서 거친 인상의 쿠마가 한 발을 내딛은 mid-stride 자세로 다가오는 위협적인 실루엣.",
            "characters": [
              "쿠마"
            ],
            "based_on_beat": 6,
            "original_description": "먼지 나는 도로 저편에서 거친 인상의 쿠마가 걸어오는 위협적인 실루엣.",
            "validator_reason": "동적 동작인 '걸어오는'을 보존하기 위해 발을 내딛은 mid-stride 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 42,
            "description": "앰버가 눈을 반짝이며 양손을 허리에 얹은 채 다부지게 선 모습.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 43,
            "description": "커다란 낡은 롱코트와 챙 넓은 중절모를 푹 눌러쓴 고릴라 로봇 찰리의 거대한 뒷모습.",
            "characters": [
              "고릴라 로봇 찰리"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 44,
            "description": "길을 걷던 쿠마가 발걸음을 멈추지 않은 채, 코트를 입은 찰리의 넓은 등판을 향해 힐끗 시선을 던지는 찰나.",
            "characters": [
              "쿠마",
              "찰리"
            ],
            "based_on_beat": 6,
            "original_description": "길을 지나치던 쿠마가 코트를 입은 찰리의 넓은 등판을 향해 힐끗 시선을 던지는 찰나.",
            "validator_reason": "순차 동작 '지나치던 쿠마가 던지는'을 동작 중 시선만 던지는 단일 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 45,
            "description": "쿠마가 시선을 앞으로 돌린 채 반대편으로 멀어져 가는, 옷자락이 펄럭이는 뒷모습.",
            "characters": [
              "쿠마"
            ],
            "based_on_beat": 6,
            "original_description": "쿠마가 시선을 거두고 반대편으로 멀어져 가는 뒷모습.",
            "validator_reason": "순차 동작 '거두고 멀어져 가는'을 '돌린 채 멀어지는' 단일 순간으로 수정하고 추진력 단서를 추가함.",
            "character_ids": []
          },
          {
            "shot_index": 46,
            "description": "라울과 앰버가 코트 입은 찰리의 양옆에 바짝 붙어 한 발을 내딛은 도중, 서로 마주 본 채 환하게 웃는 찰나.",
            "characters": [
              "라울",
              "앰버",
              "찰리"
            ],
            "based_on_beat": 6,
            "original_description": "라울과 앰버가 코트 입은 찰리의 양옆에 바짝 붙어 걸으며 서로 마주 보고 환하게 웃는 찰나.",
            "validator_reason": "동적 동작 '붙어 걸으며'를 한 발을 내딛은 순간으로 수정하여 방향성과 한 찰나를 보존함.",
            "character_ids": []
          },
          {
            "shot_index": 47,
            "description": "앰버 일행의 머리 위로 펼쳐진, 판잣집과 고철 덩어리들이 끝없이 늘어선 거대한 난민촌의 장엄한 전경.",
            "characters": [
              "앰버 일행"
            ],
            "based_on_beat": 6,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 7,
        "scene_heading": "7. 인공제방 – D",
        "shots": [
          {
            "shot_index": 1,
            "description": "금이 간 제방 벽 앞, 지게차 운전석에 앉은 미연이 짐받이 레버를 뒤로 당기는 힘이 실린 찰나.",
            "characters": [
              "미연"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "다양한 인종의 난민 아이들이 맨손으로 흙바닥의 흩어진 돌멩이들을 품 쪽으로 끌어모으는 자세.",
            "characters": [
              "다양한 인종의 난민 아이들"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "작업복 차림의 신부가 커다란 상자를 양팔로 품에 안은 채 지게차 쪽의 미연을 올려다보는 시선.",
            "characters": [
              "신부",
              "미연"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "운전석에 기대어 활짝 웃음 짓는 미연의 얼굴.",
            "characters": [
              "미연"
            ],
            "based_on_beat": 1,
            "original_description": "신부의 시선을 받은 미연이 운전석에 기대어 활짝 웃음 짓는 얼굴.",
            "validator_reason": "인과/맥락을 나타내는 '신부의 시선을 받은'을 제거하고 단일 순간의 표정으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "아시아계 난민 남성이 양팔을 앞으로 뻗은 채 지게차를 향해 수신호 자세를 취한 찰나.",
            "characters": [
              "아시아계 난민 남성"
            ],
            "based_on_beat": 1,
            "original_description": "아시아계 난민 남성이 양팔을 앞으로 뻗어 지게차를 향해 수신호를 보내는 자세.",
            "validator_reason": "'뻗어 ~ 보내는'의 순차 동작을 수신호를 취한 단일 정지 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "지게차 바로 앞에 멈춰 선 군용 트럭의 외관, 흩날리던 흙먼지가 아직 공중에 떠 있는 상태.",
            "characters": [],
            "based_on_beat": 1,
            "original_description": "먼지바람을 일으키며 달려온 군용 트럭이 지게차 바로 앞에 멈춰 선 외관.",
            "validator_reason": "'달려온'이라는 과거 시제를 제거하고 멈춰 선 트럭과 떠 있는 흙먼지의 고정된 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "열린 조수석 문 옆에서, 코카시안 백인 대머리의 관리소장이 물웅덩이 한가운데로 검은 구두를 막 내딛은 찰나.",
            "characters": [
              "코카시안 백인 대머리의 관리소장"
            ],
            "based_on_beat": 1,
            "original_description": "조수석 문을 열고 내린 코카시안 백인 대머리의 관리소장이 물웅덩이 한가운데로 검은 구두를 내디딘 찰나.",
            "validator_reason": "'문을 열고 내린'이라는 순차 동작을 제거하고 웅덩이를 내딛는 순간으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "물웅덩이에서 위로 튄 진흙물이 관리소장의 반짝이는 구두코 겉면에 덕지덕지 묻은 상태의 클로즈업.",
            "characters": [
              "관리소장"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "관리소장이 웅덩이에 선 채 뒤돌아서서 트럭 운전석 쪽을 향해 턱을 치켜든 얼굴.",
            "characters": [
              "관리소장"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "무장한 아시아계 경비병들이 트럭 뒷칸에서 뛰어내려, 공중에 몸이 뜬 채 땅을 향해 하강하는 mid-action 찰나.",
            "characters": [
              "아시아계 경비병들"
            ],
            "based_on_beat": 1,
            "original_description": "트럭 뒷칸에서 무장한 아시아계 경비병들이 땅을 향해 잇달아 뛰어내리는 공중의 찰나.",
            "validator_reason": "시간 흐름을 암시하는 '잇달아'를 제거하고 여러 경비병이 동시에 허공에 뜬 mid-action 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "한 경비병의 두 손이 낡은 확성기를 관리소장의 가슴 쪽으로 불쑥 내민 순간.",
            "characters": [
              "경비병",
              "관리소장"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "관리소장이 확성기를 입에 바짝 댄 채 눈을 부릅뜨고 소리를 지르는 표정.",
            "characters": [
              "관리소장"
            ],
            "based_on_beat": 1,
            "original_description": "관리소장이 건네받은 확성기를 입에 바짝 댄 채 눈을 부릅뜨고 소리를 지르는 표정.",
            "validator_reason": "과거 동작을 나타내는 '건네받은'을 제거하고 소리치는 한 찰나의 표정으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "미연의 두 발이 거친 흙바닥에 닿아 무릎이 굽혀진 착지 찰나의 날렵한 자세.",
            "characters": [
              "미연"
            ],
            "based_on_beat": 2,
            "original_description": "지게차 운전석에서 뛰어내린 미연의 두 발이 거친 흙바닥에 착지한 직후의 날렵한 자세.",
            "validator_reason": "'뛰어내린'이라는 이전 동작과 '직후'라는 시간 경과 표현을 지우고, 발이 닿아 굽혀진 착지 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "다양한 국적의 난민 무리가 관리소장 쪽을 향해 일제히 고개를 돌린 채 멈춰 선 구도.",
            "characters": [
              "다양한 국적의 난민 무리"
            ],
            "based_on_beat": 2,
            "original_description": "다양한 국적의 난민 무리가 일하던 동작을 멈추고 관리소장 쪽을 향해 일제히 고개를 돌린 구도.",
            "validator_reason": "'일하던 동작을 멈추고'라는 전후 동작을 제거하고 고개를 돌린 정지 자세만 남김.",
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "미연이 미간을 깊게 찌푸린 채 두 팔을 벌려 관리소장에게 강하게 항의하는 자세.",
            "characters": [
              "미연",
              "관리소장"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "관리소장이 입에 댄 확성기에서 찌그러진 노이즈가 터져 나오며 그의 미간이 찌푸려진 찰나.",
            "characters": [
              "관리소장"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "아프리카계 흑인 난민 남성이 제방 쪽을 삿대질하며 고함을 치는 험악한 얼굴.",
            "characters": [
              "아프리카계 흑인 난민 남성"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "소총을 가로로 쥔 경비병들이 난민 무리와 관리소장 사이에 일렬로 서서 앞을 가로막은 방어선 구도.",
            "characters": [
              "경비병들",
              "난민 무리",
              "관리소장"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "분노한 난민들이 경비병들의 소총 위로 몸을 밀어붙이며 앞으로 쏠린 역동적인 찰나.",
            "characters": [
              "난민들",
              "경비병들"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 20,
            "description": "미연이 관리소장 코앞에 서서 손가락으로 금이 간 제방 벽을 정확히 가리키는 모습.",
            "characters": [
              "미연",
              "관리소장"
            ],
            "based_on_beat": 2,
            "original_description": "군중을 헤치고 튀어나온 미연이 관리소장 코앞에서 손가락으로 금이 간 제방 벽을 정확히 가리키는 모습.",
            "validator_reason": "'군중을 헤치고 튀어나온'이라는 이전 동작을 제거하고 가리키는 정지 동작으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 21,
            "description": "관리소장이 미연의 손가락질을 외면한 채 트럭 문손잡이를 움켜쥔 뒷모습.",
            "characters": [
              "관리소장",
              "미연"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 22,
            "description": "경비병의 두꺼운 장갑 낀 양손이 아시아계 난민 남성의 가슴팍을 맹렬히 밀쳐내는 타격의 찰나.",
            "characters": [
              "경비병",
              "아시아계 난민 남성"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 23,
            "description": "난민 남성이 진흙 바닥에 엉덩방아를 찧은 채 고통스럽게 눈을 감은 표정.",
            "characters": [
              "난민 남성"
            ],
            "based_on_beat": 3,
            "original_description": "밀쳐진 난민 남성이 진흙 바닥에 엉덩방아를 찧으며 고통스럽게 눈을 감은 표정.",
            "validator_reason": "'찧으며'라는 진행형을 '찧은 채'라는 결과 상태로 변경하여 한 찰나로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 24,
            "description": "미연이 바닥에 쓰러진 난민 남성의 양어깨 밑으로 두 팔을 집어넣은 부축 자세.",
            "characters": [
              "미연",
              "난민 남성"
            ],
            "based_on_beat": 3,
            "original_description": "미연이 바닥에 쓰러진 난민 남성의 양어깨 밑으로 두 팔을 집어넣어 부축하려는 자세.",
            "validator_reason": "'집어넣어 부축하려는'이라는 연속 동작/의도를 지우고 팔을 집어넣은 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 25,
            "description": "트럭 조수석에 올라탄 관리소장이 차 문을 안으로 급히 끌어당기는 힘이 실린 찰나.",
            "characters": [
              "관리소장"
            ],
            "based_on_beat": 3,
            "original_description": "당황한 표정의 관리소장이 트럭 조수석에 올라타며 차 문을 안으로 급히 끌어당기는 순간.",
            "validator_reason": "'올라타며 끌어당기는' 두 동작의 연속을 피하기 위해, 올라탄 상태에서 문을 당기는 한 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 26,
            "description": "군용 트럭이 타이어 뒤로 흙먼지를 거칠게 뿜어내며 뒤쪽 도로를 향해 질주하는 mid-action 후면 외관.",
            "characters": [
              "관리소장"
            ],
            "based_on_beat": 3,
            "original_description": "관리소장을 태운 군용 트럭이 흙먼지를 거칠게 뿜어내며 뒤쪽 도로로 멀어지는 후면 외관.",
            "validator_reason": "'멀어지는'이라는 이동의 시간 흐름을 질주 방향의 역동성이 담긴 mid-action 찰나로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 8,
        "scene_heading": "8. 난민 재판소 – D",
        "shots": [
          {
            "shot_index": 1,
            "description": "어두침침한 재판소 안, 아시아계 경찰 두 명에게 양팔이 결박된 채 문 안쪽을 향해 상체가 기울어져 바닥에 무릎을 대고 있는 이현우의 모습.",
            "characters": [
              "이현우",
              "아시아계 경찰"
            ],
            "based_on_beat": 1,
            "original_description": "어두침침한 재판소 안, 아시아계 경찰 두 명에게 양팔이 결박된 이현우가 바닥에 무릎이 끌린 채 문 안으로 질질 끌려 들어오는 찰나.",
            "validator_reason": "'질질 끌려 들어오는'이라는 연속 동작을 결박되어 당겨지는 중의 정지된 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "낡은 탁자 뒤에 앉은 재판관이 한 손으로 턱을 괸 채 무심한 눈빛으로 앞을 응시하는 얼굴.",
            "characters": [
              "재판관"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "식은땀으로 뒤범벅된 이현우가 두 다리에 힘이 풀려 상체가 바닥을 향해 푹 꺾인 위태로운 구도.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "재판관이 탁자 위 너덜너덜한 서류 뭉치를 펜 끝으로 짚으며 내려다보는 모습.",
            "characters": [
              "재판관"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "고통스러운 표정으로 입을 벌린 채 가슴을 한껏 부풀려 숨을 들이켠 이현우의 얼굴 클로즈업.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 고통스러운 표정으로 입을 살짝 벌린 채 거칠게 숨을 몰아쉬는 얼굴 클로즈업.",
            "validator_reason": "'거칠게 숨을 몰아쉬는'이라는 반복 호흡 동작을 가슴이 부푼 한 순간의 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "재판관 옆의 아시아계 경찰이 상체를 굽혀 재판관의 귀 곁으로 얼굴을 바짝 들이민 자세.",
            "characters": [
              "아시아계 경찰",
              "재판관"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "재판관이 손등을 바깥으로 향한 채 귀찮은 듯 손바닥을 허공으로 뻗고 있는 자세.",
            "characters": [
              "재판관"
            ],
            "based_on_beat": 1,
            "original_description": "재판관이 손등을 바깥으로 향한 채 귀찮은 듯 손바닥을 허공에 휘젓는 동작.",
            "validator_reason": "'허공에 휘젓는 동작'이라는 연속 움직임을 손바닥을 뻗은 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "이현우가 두 눈을 번쩍 뜬 채 시선을 탁자 쪽으로 확 치켜든 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "고개를 푹 숙이고 있던 이현우가 두 눈을 번쩍 뜨며 시선을 탁자 쪽으로 확 치켜든 찰나.",
            "validator_reason": "'숙이고 있던'과 '번쩍 뜨며'의 시간 순차를 제거하고 시선을 치켜든 동시 상태로 통합함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "재판관이 쌓인 서류 뭉치 위로 손을 뻗은 채 한 페이지의 끝을 반쯤 들어 올린 무심한 모습.",
            "characters": [
              "재판관"
            ],
            "based_on_beat": 1,
            "original_description": "재판관이 쌓인 서류 뭉치 위로 손을 뻗어 다른 페이지를 들추는 무심한 모습.",
            "validator_reason": "'손을 뻗어 다른 페이지를 들추는'의 순차 동작을 서류를 들어 올린 중인 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "양옆의 경찰들이 이현우의 어깨와 팔을 꽉 쥔 채 출입구 쪽으로 강하게 끌어당기는 힘이 실린 구도.",
            "characters": [
              "경찰",
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "경찰들의 손아귀를 거칠게 벗어난 이현우가 탁자 너머의 재판관을 향해 상체를 맹렬히 뻗어 뒷발이 바닥에서 막 떨어진 공중의 찰나.",
            "characters": [
              "이현우",
              "경찰",
              "재판관"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 경찰들의 손아귀를 거칠게 벗어나 탁자 너머의 재판관을 향해 상체를 맹렬히 던진 공중의 찰나.",
            "validator_reason": "'벗어나 던진'의 순차 동작을 제거하고 지면에서 발이 떨어진 도약 순간의 mid-action 자세로 단서를 추가해 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "기겁한 재판관의 상체가 나무 의자와 함께 뒤로 확 젖혀져 의자 다리 두 개가 허공에 들린 역동적인 순간.",
            "characters": [
              "재판관"
            ],
            "based_on_beat": 2,
            "original_description": "기겁한 재판관의 상체가 나무 의자와 함께 뒤로 확 젖혀지며 바닥을 향해 고꾸라지는 역동적인 순간.",
            "validator_reason": "'젖혀지며 고꾸라지는'이라는 연속 동작을 의자가 뒤로 넘어가는 중인 구체적인 단일 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "바닥에 쓰러진 재판관의 셔츠 멱살을 이현우의 두 주먹이 빈틈없이 꽉 틀어쥔 클로즈업.",
            "characters": [
              "재판관",
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "이현우가 재판관의 얼굴 위로 바짝 엎드린 채 목에 핏대를 세우며 포효하는 광기 어린 표정.",
            "characters": [
              "이현우",
              "재판관"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "다급히 다가온 아시아계 경찰이 이현우의 뒤통수를 향해 검은색 경찰 곤봉을 허공 높이 치켜든 찰나.",
            "characters": [
              "아시아계 경찰",
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "허공에서 맹렬히 내리꽂힌 곤봉 끝이 이현우의 정수리에 정통으로 맞닿은 타격의 순간.",
            "characters": [
              "이현우",
              "경찰"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "타격을 입은 이현우의 눈꺼풀이 반쯤 풀린 채 상체가 재판관의 가슴 위로 축 늘어진 형태.",
            "characters": [
              "이현우",
              "재판관"
            ],
            "based_on_beat": 3,
            "original_description": "타격을 입은 이현우의 눈꺼풀이 반쯤 풀리며 상체가 재판관의 가슴 위로 축 늘어진 직후의 형태.",
            "validator_reason": "'풀리며 늘어진'이라는 순차적인 변화를 이미 풀린 채 늘어져 있는 동시 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "흑백 화면 속, 복면을 쓴 무장 괴한들이 아스팔트 거리에 무릎 꿇은 유색인종들을 향해 돌격 소총을 일제히 겨눈 위압적인 구도.",
            "characters": [
              "무장 괴한",
              "유색인종"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "흑백 화면 속, 두려움에 질린 미연이 어린 이현우와 앰버의 머리를 자신의 양팔로 빈틈없이 감싸 안고 엎드린 모습.",
            "characters": [
              "미연",
              "이현우",
              "앰버"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 20,
            "description": "흑백 화면 속, 미연의 머리를 겨눈 복면 괴한의 권총 방아쇠에 검지손가락이 꾹 눌려 있는 클로즈업.",
            "characters": [
              "복면 괴한",
              "미연"
            ],
            "based_on_beat": 3,
            "original_description": "흑백 화면 속, 미연의 머리를 겨눈 복면 괴한의 권총 방아쇠에 검지손가락이 꾹 눌리는 클로즈업.",
            "validator_reason": "'눌리는'이라는 변화 중인 동작을 방아쇠가 이미 눌려 있는 단일 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 21,
            "description": "흑백 화면 속, 낡은 군복을 입은 코카시안 백인 남성이 뒷발로 바닥을 강하게 밀어낸 채 복면 괴한의 옆구리를 향해 상체를 뻗으며 허공에 뜬 찰나.",
            "characters": [
              "코카시안 백인 남성",
              "복면 괴한"
            ],
            "based_on_beat": 3,
            "original_description": "흑백 화면 속, 낡은 군복을 입은 코카시안 백인 남성이 복면 괴한의 옆구리를 향해 맹렬히 몸을 날려 부딪치기 직전의 찰나.",
            "validator_reason": "'몸을 날려'의 공중 동작이 아무것도 지탱하지 않는 부유가 되지 않도록 바닥을 밀어낸 자세 단서를 추가함.",
            "character_ids": []
          },
          {
            "shot_index": 22,
            "description": "흑백 화면 속, 또 다른 복면 괴한의 총구에서 허공에 뜬 백인 남성을 향해 하얀 섬광이 번쩍 뿜어져 나온 격발의 순간.",
            "characters": [
              "복면 괴한",
              "백인 남성"
            ],
            "based_on_beat": 3,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 9,
        "scene_heading": "9. 난민 재판소 밖 – N",
        "shots": [
          {
            "shot_index": 1,
            "description": "어두운 쓰레기 더미 위, 기절해 있던 이현우가 허리를 튕기듯 상체를 반쯤 들어올린 mid-action 자세로 입을 크게 벌린 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "어두운 쓰레기 더미 위, 기절해 있던 이현우가 허리를 튕기듯 상체를 벌떡 일으키며 입을 크게 벌린 찰나.",
            "validator_reason": "연속 동작 '일으키며'를 상체를 반쯤 들어올린 mid-action 정지 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "이현우가 동공이 확장된 채 황폐한 어둠 속 쓰레기장 한쪽으로 고개를 빠르게 돌리는 mid-action의 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 동공이 확장된 채 황폐한 어둠 속 쓰레기장 주변을 빠르게 두리번거리는 얼굴.",
            "validator_reason": "연속/반복 동작 '두리번거리는'을 한 방향으로 고개를 돌리는 도중의 단일 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "오른쪽 다리를 땅에 딛어 몸의 중심이 한쪽으로 확 쏠린 이현우의 위태로운 mid-stride 전신.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "두 발로 선 이현우가 오른쪽 다리를 심하게 절뚝이며 몸의 중심이 한쪽으로 확 쏠린 위태로운 전신.",
            "validator_reason": "연속 이동 동작 '절뚝이며'를 중심이 쏠린 걷기 도중의 mid-stride 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "이현우가 자신의 낡은 바지 주머니 안으로 오른손을 깊숙이 밀어 넣은 자세.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "이현우의 손아귀에 단단히 쥐어진 낡은 검은색 가죽 지갑이 주머니 밖으로 쑥 빠져나온 클로즈업.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "반으로 펼쳐진 지갑 내부의 재판관 사진이 부착된 신분증명서를 이현우가 매섭게 내려다보는 시선.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "이현우의 엄지와 검지가 지갑 속 빳빳한 지폐 뭉치의 끝자락을 단단히 쥐고 바깥으로 반쯤 당겨낸 고정 상태의 손끝.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "이현우의 엄지와 검지가 지갑 속 빳빳한 지폐 뭉치의 끝자락을 단단히 쥐고 바깥으로 당기는 도중의 손끝.",
            "validator_reason": "진행 중인 동작 '당기는 도중의'를 반쯤 당겨낸 결과 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "돈이 모두 빠져나간 빈 가죽 지갑이 이현우의 뻗은 손끝을 막 벗어나 쓰레기 더미 위 허공에 떠 있는 mid-action 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "돈이 모두 빠져나간 빈 가죽 지갑이 이현우의 손끝을 떠나 쓰레기 더미 위 허공을 둥글게 가르며 날아가는 찰나.",
            "validator_reason": "이동 상태 '날아가는'을 지갑이 손끝을 막 떠나 허공에 위치한 mid-action 순간으로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 10,
        "scene_heading": "10. 허름한 골목 식당 - N",
        "shots": [
          {
            "shot_index": 1,
            "description": "식당 안 외진 구석 탁자, 40대 아시아계 남성이 한 손으로 턱을 괸 채 무심하게 앉아있는 구도.",
            "characters": [
              "40대 아시아계 남성"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "이현우가 탁자 앞에 마주 앉아 두꺼운 돈 봉투를 남자를 향해 쭉 밀어내는 손끝 클로즈업.",
            "characters": [
              "이현우",
              "남자"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "40대 아시아계 남성이 입꼬리를 비스듬히 올린 채 피식 웃는 얼굴.",
            "characters": [
              "40대 아시아계 남성"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "이현우가 남자의 손에 닿기 직전의 돈 봉투를 자신의 손으로 꽉 움켜쥔 찰나.",
            "characters": [
              "이현우",
              "남자"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "40대 아시아계 남성이 이현우의 손에서 봉투를 거칠게 낚아채는 힘이 실린 순간.",
            "characters": [
              "40대 아시아계 남성",
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "40대 아시아계 남성이 봉투 안의 지폐를 내려다보며 입을 크게 벌리고 환하게 웃는 얼굴.",
            "characters": [
              "40대 아시아계 남성"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "이현우가 상체를 탁자 앞으로 쑥 내민 채 눈을 부릅뜨고 입을 크게 벌린 분노의 표정.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "40대 아시아계 남성이 미간을 찌푸린 채 귀찮은 듯 손을 허공에 뻗은 거만한 자세.",
            "characters": [
              "40대 아시아계 남성"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "이현우가 턱관절에 힘을 잔뜩 준 채 분노로 이를 꽉 깨문 클로즈업.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "낡은 식당 벽면에 달린 붉은색 경광등이 강하게 켜져 붉은 빛을 뿜어내는 찰나.",
            "characters": [],
            "based_on_beat": 3,
            "original_description": "낡은 식당 벽면에 달린 붉은색 경광등이 번쩍이며 빛을 발하는 찰나.",
            "validator_reason": "연속/반복 동작인 '번쩍이며 빛을 발하는'을 강한 빛이 나오는 한 순간의 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "40대 아시아계 남성이 이현우를 향해 여유롭게 미소 짓는 얄미운 얼굴.",
            "characters": [
              "40대 아시아계 남성",
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 11,
        "scene_heading": "11. 난민 수용서 전경 몽타주 – N",
        "shots": [
          {
            "shot_index": 1,
            "description": "낡은 상점들에 불이 켜져 있고 거리에 다양한 인종의 난민들이 붐비는 난민 수용소 전경.",
            "characters": [
              "난민들"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "수용소 전봇대 위에 매달린 낡은 철제 스피커의 겉면 클로즈업.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "상점의 불빛들이 모두 꺼져 칠흑 같은 어둠에 잠긴 황량한 난민 수용소 거리 전경.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "거대한 철제 출입문이 양쪽에서 맞물려 닫히기 직전의 비좁은 틈새 구도.",
            "characters": [],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "이현우가 닫히는 출입문 틈 사이로 한쪽 어깨를 밀어넣고 앞발을 내딛은 mid-action 자세.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 닫히는 출입문 틈 사이로 어깨를 좁힌 채 간신히 통과하는 역동적인 찰나.",
            "validator_reason": "'통과하는'이라는 이동 동작을 앞발을 딛고 어깨를 밀어넣은 구체적인 mid-action 자세로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "이현우가 어두운 컨테이너 사이 좁은 골목에서 한쪽 발이 공중에 떠 있는 mid-stride 뒷모습.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 어두운 컨테이너 사이 좁은 골목을 걷고 있는 뒷모습.",
            "validator_reason": "'걷고 있는'이라는 이동 동작을 걷는 방향의 추진력이 드러나는 mid-stride 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "'7-31'이라는 흰색 글씨가 적힌 낡은 철제 컨테이너 문앞에 이현우가 우두커니 선 전신.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "이현우가 컨테이너 문의 낡은 쇠문고리를 쥔 채 고개를 푹 숙인 자세.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 12,
        "scene_heading": "12. 현우의 컨테이너 안 – N",
        "shots": [
          {
            "shot_index": 1,
            "description": "낡은 컨테이너 안, 촛불 켜진 식탁 앞에 앉은 미연의 손에 쥔 바늘 끝이 헌 옷 원단에 반쯤 꽂혀 있는 손끝 클로즈업.",
            "characters": [
              "미연"
            ],
            "based_on_beat": 1,
            "original_description": "낡은 컨테이너 안, 촛불 켜진 식탁 앞에 앉은 미연이 바늘로 헌 옷을 찌르는 손끝 클로즈업.",
            "validator_reason": "'찌르는'이라는 연속 동작을 바늘이 원단에 꽂힌 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "현관문 안쪽에 선 이현우를 향해 두 팔을 앞으로 뻗은 채 한쪽 발은 바닥을 차고 다른 발은 앞으로 내딛어 공중에 떠 있는 앰버의 mid-action 찰나.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 1,
            "original_description": "현관문 안쪽에 선 이현우를 향해 앰버가 두 팔을 뻗고 달려오는 공중의 찰나.",
            "validator_reason": "'달려오는'이라는 연속 동작을 뻗은 팔과 공중에 뜬 발이 묘사된 mid-action 정지 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "미연이 식탁에서 고개를 든 채 흙먼지를 뒤집어쓴 이현우를 쳐다보는 못마땅한 표정.",
            "characters": [
              "미연",
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "이현우가 양손으로 더러워진 웃옷의 소매 끝을 쥐고 아래로 강하게 당기고 있는 정지 자세.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 더러워진 웃옷의 소매를 양손으로 잡아당겨 벗는 도중의 자세.",
            "validator_reason": "'잡아당겨 벗는'이라는 순차 동작을 소매를 당기고 있는 단일 정지 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "앰버가 바지가 찢겨 피가 묻은 이현우의 다리 쪽에 시선을 둔 채 입을 크게 벌린 놀란 얼굴.",
            "characters": [
              "앰버",
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "이현우가 식탁 위 촛불 아래서 밥이 수북이 담긴 숟가락을 벌린 입술 사이로 막 밀어 넣고 있는 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 식탁 위 촛불 아래 차려진 밥을 숟가락으로 크게 떠서 입에 욱여넣는 찰나.",
            "validator_reason": "'떠서 욱여넣는'이라는 연속 동작을 숟가락을 입에 넣고 있는 단일 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "이현우가 두 손으로 바짓단을 아래로 팽팽하게 당겨 핏자국이 묻은 다리 위를 반쯤 덮고 있는 자세.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 바짓단을 두 손으로 추스르며 핏자국이 묻은 다리를 가리는 동작.",
            "validator_reason": "'추스르며 가리는'이라는 인과성 연결 동작을 바짓단으로 다리를 덮고 있는 하나의 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "앰버가 양손을 가슴 앞에 모은 채 눈을 반짝이는 귀여운 표정.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "이현우가 숟가락을 탁자에 쥔 채 앰버를 향해 눈을 부릅뜬 화난 얼굴.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "미연이 이현우를 향해 미간을 찌푸린 채 턱을 치켜든 굳은 표정.",
            "characters": [
              "미연",
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "앰버가 이현우와 미연 사이에서 고개를 푹 숙인 채 눈치를 보는 주눅 든 모습.",
            "characters": [
              "앰버",
              "이현우",
              "미연"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "앰버가 낡은 헝겊 커튼이 쳐진 자신의 방 안으로 상체를 반쯤 숨긴 뒷모습.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "미연이 탁자 위 구급상자의 뚜껑을 반쯤 위로 젖힌 채 가장자리를 쥐고 있는 손끝 클로즈업.",
            "characters": [
              "미연"
            ],
            "based_on_beat": 4,
            "original_description": "미연이 탁자 위 구급상자의 뚜껑을 위로 젖혀 여는 손끝 클로즈업.",
            "validator_reason": "'젖혀 여는'이라는 시간 진행을 뚜껑이 반쯤 열린 각도에 머문 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "미연이 약병을 쥔 채 눈썹을 늘어뜨리고 이현우를 걱정스레 바라보는 시선.",
            "characters": [
              "미연",
              "이현우"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "이현우가 미간에 깊은 주름을 잡은 채 고개를 옆으로 돌려버린 냉랭한 표정.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "이현우가 눈썹을 치켜세운 채 미연을 향해 입을 크게 벌려 소리치는 격앙된 얼굴.",
            "characters": [
              "이현우",
              "미연"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "미연이 눈을 동그랗게 뜬 채 이현우의 시선을 마주하며 얼어붙은 표정.",
            "characters": [
              "미연",
              "이현우"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "이현우가 두 발로 바닥을 딛고 상체를 완전히 기립한 자세이며, 그 뒤로 의자가 바닥에서 허공을 향해 비스듬히 기울어진 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 5,
            "original_description": "이현우가 식탁 앞에서 상체를 벌떡 일으켜 세우며 의자가 뒤로 엎어지기 직전의 찰나.",
            "validator_reason": "'일으켜 세우며'와 '엎어지기 직전'의 연결 동작을 상체가 기립하고 의자가 기울어진 동시 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "이현우가 낡은 웃옷을 쥔 손을 들어 올려 한쪽 어깨 위로 옷자락이 막 펄럭이는 역동적 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 5,
            "original_description": "이현우가 벗어두었던 낡은 웃옷을 한쪽 어깨에 거칠게 걸치는 역동적 동작.",
            "validator_reason": "'거칠게 걸치는'이라는 동작 진행을 어깨 위로 옷자락이 펄럭이는 한 순간의 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 20,
            "description": "미연이 당황한 눈으로, 문 쪽을 향해 발을 내디디며 뒷모습을 보인 이현우의 굽은 등짝을 바라보는 구도.",
            "characters": [
              "미연",
              "이현우"
            ],
            "based_on_beat": 5,
            "original_description": "미연이 당황한 눈으로 멀어지는 이현우의 굽은 등짝을 바라보는 구도.",
            "validator_reason": "'멀어지는'이라는 시간적 거리 변화를 문 쪽을 향해 발을 내디딘 뒷모습의 정지 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 21,
            "description": "이현우가 한 손으로 등 뒤의 철제 문손잡이를 강하게 쥐고 당겨 문틈이 반쯤 닫힌 각도에 머문 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 5,
            "original_description": "이현우가 등 뒤의 철제 문을 거칠게 당겨 문틈이 막 좁아지는 찰나.",
            "validator_reason": "'당겨 좁아지는'이라는 인과 변화의 과정을 문이 닫히는 도중의 고정된 각도로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 22,
            "description": "강한 타격의 충격으로 문 표면에 미세한 찌그러짐이 포착된 굳게 닫힌 컨테이너 현관문.",
            "characters": [],
            "based_on_beat": 6,
            "original_description": "굳게 닫힌 컨테이너 현관문이 둔탁한 타격에 진동하는 순간.",
            "validator_reason": "'진동하는'이라는 시간적 움직임을 충격이 포착된 시각적 상태 묘사로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 23,
            "description": "방 안쪽에서 헝겊 커튼 틈새로 빼꼼히 내민 앰버의 눈동자.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 24,
            "description": "앰버가 고개를 푹 숙인 채 입술을 비죽 내밀고 실망한 표정.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 6,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 13,
        "scene_heading": "난민 수용소 – N",
        "shots": [
          {
            "shot_index": 1,
            "description": "어둠이 내려앉은 난민촌 거리, 이현우가 낡은 옷깃을 여민 채 한쪽 발을 내딛고 다른 발의 뒤꿈치가 들린 걷는 도중의 매서운 표정의 전신.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 0,
            "original_description": "어둠이 내려앉은 난민촌 거리, 이현우가 낡은 옷깃을 여민 채 매서운 표정으로 걷는 전신.",
            "validator_reason": "이동 동작(걷는)을 한 발이 들린 mid-stride 고정 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "희미한 불빛이 새어 나오는 건물 앞 어둠 속에서 페드로가 상체를 웅크린 채 땅을 짚고 한쪽 무릎을 앞으로 당긴 기어 나오는 도중의 찰나.",
            "characters": [
              "페드로"
            ],
            "based_on_beat": 1,
            "original_description": "희미한 불빛이 새어 나오는 건물 앞 어둠 속에서 페드로가 상체를 웅크린 채 기어 나오는 찰나.",
            "validator_reason": "이동 동작(기어 나오는)을 한쪽 무릎을 당긴 mid-action 고정 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "이현우가 공중으로 치켜든 주먹이 페드로의 얼굴에 정통으로 꽂히는 타격의 순간.",
            "characters": [
              "이현우",
              "페드로"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "얼굴을 맞은 페드로의 상체가 뒤로 확 젖혀진 채 한쪽 발만 바닥에 아슬아슬하게 닿아 뒤로 고꾸라지는 찰나.",
            "characters": [
              "페드로"
            ],
            "based_on_beat": 1,
            "original_description": "얼굴을 맞은 페드로의 상체가 뒤로 확 젖혀지며 바닥을 향해 무방비로 고꾸라지는 공중의 찰나.",
            "validator_reason": "허공에 떠 있는 묘사를 지면에 닿아 있는 한 발을 추가하여 지지대가 있는 현실적인 mid-action 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "바닥에 쓰러진 페드로 위로 올라탄 이현우가 페드로의 멱살을 두 주먹으로 꽉 틀어쥔 클로즈업.",
            "characters": [
              "이현우",
              "페드로"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "양철통 안에 붉은 불길이 타오르는 노상, 이현우가 쿠마를 향해 살기 띤 얼굴로 한쪽 발을 성큼 내디딘 도중의 전신.",
            "characters": [
              "이현우",
              "쿠마"
            ],
            "based_on_beat": 2,
            "original_description": "양철통 안에 붉은 불길이 타오르는 노상, 이현우가 쿠마를 향해 살기 띤 얼굴로 다가가는 전신.",
            "validator_reason": "이동 동작(다가가는)을 한쪽 발을 내디딘 mid-stride 고정 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "맥주와 닭꼬치를 든 채 모여 앉아있던 아시아계 난민 패거리가 이현우를 향해 쇠몽둥이와 총을 치켜들고 일어선 위압적인 구도.",
            "characters": [
              "아시아계 난민 패거리",
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "이현우의 맹렬한 주먹이 총을 든 아시아계 난민 남성의 턱에 정통으로 꽂힌 타격의 찰나.",
            "characters": [
              "이현우",
              "아시아계 난민 남성"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "이현우의 손이 뒤로 꺾이는 남성의 손에 들린 소총을 거칠게 움켜쥐고 당기는 힘이 실린 손끝 클로즈업.",
            "characters": [
              "이현우",
              "아시아계 난민 남성"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 쓰러지는 남성의 손에서 소총을 거칠게 낚아채는 힘이 실린 손끝 클로즈업.",
            "validator_reason": "진행형 동사(낚아채는)를 양쪽의 힘이 맞물려 당기는 고정된 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "이현우가 빼앗은 소총의 총구를 쿠마의 얼굴을 향해 정확히 겨눈 매서운 구도.",
            "characters": [
              "이현우",
              "쿠마"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "총구 앞의 쿠마의 손에서 벗어난 먹다 남은 닭꼬치가 바닥으로 떨어지고 있는 찰나.",
            "characters": [
              "쿠마"
            ],
            "based_on_beat": 2,
            "original_description": "총구 앞의 쿠마가 먹다 남은 닭꼬치를 바닥으로 툭 던지는 찰나.",
            "validator_reason": "연속 동작(던지는)을 물건이 손에서 떨어지고 있는 단일 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "자신을 겨눈 총구 너머로 쿠마가 입술을 삐딱하게 올리며 피식 웃는 여유로운 얼굴.",
            "characters": [
              "쿠마"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "쿠마가 총을 겨눈 이현우를 등진 채 어두운 인공제방 쪽을 향해 한쪽 발을 크게 내딛고 있는 걷는 도중의 뒷모습.",
            "characters": [
              "쿠마",
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "쿠마가 총을 겨눈 이현우를 등진 채 어두운 인공제방 쪽을 향해 성큼성큼 걷는 뒷모습.",
            "validator_reason": "이동 동작(걷는)을 한 발을 내딛은 mid-stride 고정 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "어둠 속, 길게 금이 간 제방 벽 틈새와 지지대로 검은 바닷물이 줄줄 흘러내리는 표면 클로즈업.",
            "characters": [],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "쿠마가 갈라진 인공제방 벽면을 향해 맨손바닥을 바짝 밀착시킨 자세.",
            "characters": [
              "쿠마"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "쿠마가 검은 바닷물에 흠뻑 젖은 손바닥을 이현우의 눈앞으로 쑥 내민 찰나.",
            "characters": [
              "쿠마",
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "이현우가 쿠마의 젖은 손을 쳐다보며 미간을 깊게 찌푸린 황당한 표정.",
            "characters": [
              "이현우",
              "쿠마"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "쿠마가 손가락을 뻗어 화려한 조명이 빛나는 바다 건너 도심 쪽을 가리키는 모습.",
            "characters": [
              "쿠마"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "쿠마가 빳빳한 지폐 뭉치를 이현우의 가슴 앞으로 불쑥 뻗어 멈춘 손끝.",
            "characters": [
              "쿠마",
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "쿠마가 빳빳한 지폐 뭉치를 이현우의 가슴 앞으로 불쑥 내미는 손끝.",
            "validator_reason": "진행형 동작(내미는)을 뻗어 멈춘 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 20,
            "description": "이현우가 지폐 뭉치를 두 손으로 움켜쥔 채 지폐 한 장의 끝을 손가락으로 넘기고 있는 집중한 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "이현우가 지폐 뭉치를 두 손으로 움켜쥔 채 빠르게 장수를 세는 집중한 얼굴.",
            "validator_reason": "반복 동작(장수를 세는)을 지폐 한 장을 넘기는 단일 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 21,
            "description": "아침 햇살 아래, 인천 바다를 배경으로 판잣집과 상점들이 끝없이 늘어선 난민촌의 광활한 전경.",
            "characters": [],
            "based_on_beat": 0,
            "character_ids": []
          },
          {
            "shot_index": 22,
            "description": "흙먼지 날리는 도로변 끝, 문이 굳게 닫힌 낡은 철제 컨테이너의 아침 외관.",
            "characters": [],
            "based_on_beat": 0,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 14,
        "scene_heading": "현우의 컨테이너 안 – D",
        "shots": [
          {
            "shot_index": 1,
            "description": "낡은 컨테이너 안, 앰버의 억지를 들은 미연과 이현우가 입을 반쯤 벌린 채 황당해하는 표정.",
            "characters": [
              "미연",
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "거대한 고철 로봇 찰리의 뭉툭한 발밑에서 도자기 화병이 산산조각 나며 파편이 사방으로 튀어 오르는 타격의 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "찰리가 커다란 금속 발로 바닥의 깨진 도자기 조각들을 뒤쪽으로 쓱 밀어내는 중인 mid-action 순간, 눈치를 보는 멈칫한 동작.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "찰리가 커다란 금속 발로 바닥의 깨진 도자기 조각들을 뒤쪽으로 쓱 밀어 가리는 눈치 보는 동작.",
            "validator_reason": "‘밀어 가리는’이라는 연속 동작을 발로 밀어내는 중인 한 순간의 mid-action 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "이현우가 미간에 깊은 주름을 잡은 채 찰리를 향해 삿대질을 하는 분노한 모습.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "찰리의 눈가 푸른빛이 희미해지는 진행 중의 한 순간, 두 어깨를 아래로 축 늘어뜨린 시무룩한 자태.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "찰리의 눈가 푸른빛이 희미해지며 두 어깨를 아래로 축 늘어뜨린 시무룩한 자태.",
            "validator_reason": "‘희미해지며’라는 변화를 희미해지는 도중의 한 찰나로 고정하여 상태 변화의 위상을 보존함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "앰버가 입술을 뾰로통하게 내민 채 불만 가득한 표정으로 웅크린 자세.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "이현우가 두 주먹을 꽉 쥔 채 거대한 찰리 앞까지 성큼 다가선 위압적인 구도.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "이현우가 험상궂은 표정으로 현관문 쪽을 가리키며 입을 크게 벌려 소리치는 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 15,
        "scene_heading": "난민촌 고물상 – D",
        "shots": [
          {
            "shot_index": 1,
            "description": "낮 시간의 난민촌 거리, 거대한 덩치의 찰리가 두 눈의 푸른빛을 낸 채 한쪽 상점을 향해 호기심 어린 표정으로 고개를 살짝 돌린 외관.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "낮 시간의 난민촌 거리, 거대한 덩치의 찰리가 두 눈의 푸른빛을 낸 채 양옆의 상점들을 호기심 어린 표정으로 두리번거리는 외관.",
            "validator_reason": "'두리번거리는'이라는 연속 동작을 단일 방향을 바라보는 정지 모먼트로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "온갖 낡은 가전제품과 고철이 산더미처럼 쌓인 어수선한 고물상 내부 전경.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "고물상 안쪽에서 마츠다가 드라이버 끝을 낡은 기계 부품에 맞댄 채 집중한 얼굴.",
            "characters": [
              "마츠다"
            ],
            "based_on_beat": 1,
            "original_description": "고물상 안쪽에서 마츠다가 드라이버로 낡은 기계 부품을 수리하는 집중한 얼굴.",
            "validator_reason": "'수리하는'이라는 진행형 동작을 드라이버를 댄 고정된 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "마츠다가 작업대에서 고개를 든 채 문 앞의 거대한 찰리를 향해 두 눈을 동그랗게 뜬 찰나.",
            "characters": [
              "마츠다",
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "마츠다가 작업대에서 고개를 들어 문 앞의 거대한 찰리를 향해 두 눈을 동그랗게 뜬 찰나.",
            "validator_reason": "시간 간격이 있는 '들어'와 '뜬'을 동시 고정 상태인 '든 채'로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "마츠다가 찰리의 가슴 장갑판에 희미하게 벗겨진 유빅 로고를 검지손가락으로 콕 짚은 채 멈춘 손끝.",
            "characters": [
              "마츠다",
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "마츠다가 찰리의 가슴 장갑판에 희미하게 벗겨진 유빅 로고를 검지손가락으로 콕 짚는 손끝.",
            "validator_reason": "'짚는'이라는 진행 동작을 짚은 채 고정된 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "마츠다의 양손이 먼지 쌓인 컴퓨터 키보드 위에서 한 자판을 누른 채 멈춰선 자세.",
            "characters": [
              "마츠다"
            ],
            "based_on_beat": 1,
            "original_description": "마츠다의 양손이 먼지 쌓인 컴퓨터 키보드 위에서 빠르게 자판을 두드리는 동작.",
            "validator_reason": "'두드리는'이라는 연속 동작을 자판 하나를 누른 단일 정지 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "오래된 모니터 화면 위로 '5억 원 현상금'이라는 붉은 글씨의 뉴스 기사가 밝게 떠오른 클로즈업.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "모니터 불빛을 받은 마츠다의 입술이 살짝 벌어진 채 동공이 크게 확장된 당황한 표정.",
            "characters": [
              "마츠다"
            ],
            "based_on_beat": 1,
            "original_description": "모니터 불빛을 받은 마츠다의 입술이 미세하게 떨리며 동공이 크게 확장된 당황한 표정.",
            "validator_reason": "'떨리며'라는 연속 동작을 벌어진 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "마츠다가 애써 침착한 척 입꼬리를 억지로 올린 채 한 손바닥을 쫙 펴 이현우에게 내민 자세.",
            "characters": [
              "마츠다",
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "마츠다가 애써 침착한 척 입꼬리를 억지로 올리며 한 손바닥을 쫙 펴 이현우에게 내민 자세.",
            "validator_reason": "'올리며'라는 동시 진행 표현을 '올린 채'의 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "이현우가 턱을 빳빳하게 치켜든 채 불만스러운 표정으로 단호하게 고개를 한쪽으로 돌린 정지 자세.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 턱을 빳빳하게 치켜든 채 불만스러운 표정으로 단호하게 고개를 젓는 찰나.",
            "validator_reason": "'고개를 젓는'이라는 반복 동작을 단일 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "이현우가 찰리의 거대한 금속 팔을 쥔 채 상점 밖을 향해 몸을 확 돌린 역동적인 구도.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "다급해진 마츠다가 상점 밖을 향해 한 발을 내디딘 이현우의 뒷모습을 향해 두 팔을 허공으로 뻗은 자세.",
            "characters": [
              "마츠다",
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "다급해진 마츠다가 상점 밖으로 멀어지는 이현우를 향해 두 팔을 허공으로 뻗은 자세.",
            "validator_reason": "'멀어지는'이라는 이동 연속 동작을 걷기(내딛기)의 단일 미드액션으로 수정하여 모션 방향을 보존함.",
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "마츠다가 낡은 유선 전화기 수화기를 귓가에 바짝 가져다 댄 채 손으로 입을 가리고 멈춰선 초조한 표정.",
            "characters": [
              "마츠다"
            ],
            "based_on_beat": 2,
            "original_description": "마츠다가 낡은 유선 전화기 수화기를 귓가에 바짝 가져다 댄 채 입을 가리고 속삭이는 초조한 표정.",
            "validator_reason": "'속삭이는'이라는 연속 말하기 동작을 정지 상태로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 16,
        "scene_heading": "라울의 집(컨테이너) 앞 – D",
        "shots": [
          {
            "shot_index": 1,
            "description": "앰버가 양손으로 쥔 고무 호스에서 뿜어져 나온 물줄기가 찰리의 낡은 금속 몸통에 세차게 부딪히며 물보라를 일으키는 찰나.",
            "characters": [
              "앰버",
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "물줄기를 맞은 찰리가 입가 금속 부품을 위로 한껏 올린 채 두 팔을 좌우로 활짝 벌린 유쾌한 자태.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "라울이 찰리의 다리 옆에서 흙바닥의 물웅덩이를 발로 세차게 내리찍어 물방울이 공중으로 튀어 오르는 순간, 환하게 웃는 얼굴.",
            "characters": [
              "라울",
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "라울이 찰리의 다리 옆에서 흙바닥의 물웅덩이를 발로 세차게 구르며 환하게 웃는 얼굴.",
            "validator_reason": "'구르며'라는 연속 동작을 발이 웅덩이에 닿아 물이 튀어 오르는 한 순간(mid-action)으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "멀리 떨어진 흙바닥에 서서 그 광경을 지켜보며 페드로가 입술을 삐딱하게 올린 채 턱을 치켜든 거만한 표정.",
            "characters": [
              "페드로"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "옆에 선 이현우가 한쪽 눈썹을 깊게 찌푸린 채 페드로를 향해 매섭게 쏘아보는 시선.",
            "characters": [
              "이현우",
              "페드로"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "눈썹을 위로 치켜세운 채 감탄한 듯 입을 동그랗게 모은 페드로의 얼굴.",
            "characters": [
              "페드로"
            ],
            "based_on_beat": 2,
            "original_description": "이현우의 말을 들은 페드로가 눈썹을 위로 치켜세우며 감탄한 듯 입을 동그랗게 모은 얼굴.",
            "validator_reason": "'이현우의 말을 들은'이라는 이전 사건(인과) 표현을 제거하고 표정의 고정 상태만 남김.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 17,
        "scene_heading": "고물상 안 – D",
        "shots": [
          {
            "shot_index": 1,
            "description": "어수선한 고물상 안, 작업대 앞에 선 마츠다가 문 앞의 박철진의 수하 1을 향해 고개를 튼 채 두 눈을 동그랗게 뜬 얼굴.",
            "characters": [
              "마츠다",
              "박철진의 수하 1"
            ],
            "based_on_beat": 1,
            "original_description": "어수선한 고물상 안, 작업대 앞에 선 마츠다가 고개를 돌려 문 앞의 박철진의 수하 1을 향해 두 눈을 동그랗게 뜬 얼굴.",
            "validator_reason": "'고개를 돌려'라는 시간 진행을 '고개를 튼 채'라는 결과 상태와 정지 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "박철진의 수하 1이 무표정한 얼굴로 상점 안의 낡은 기계를 향해 고정된 시선.",
            "characters": [
              "박철진의 수하 1"
            ],
            "based_on_beat": 1,
            "original_description": "박철진의 수하 1이 무표정한 얼굴로 상점 안의 낡은 기계들을 이리저리 둘러보는 시선.",
            "validator_reason": "'이리저리 둘러보는'이라는 연속적인 안구 및 고개 움직임을 단일 대상을 향한 정지 시선으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "마츠다가 한쪽 손가락 세 개를 쫙 펴 보이며 비열한 미소를 짓는 찰나.",
            "characters": [
              "마츠다"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "마츠다가 박철진의 수하 1 쪽으로 허리를 굽힌 채 조심스럽게 속삭이듯 입술을 반쯤 벌린 표정.",
            "characters": [
              "마츠다",
              "박철진의 수하 1"
            ],
            "based_on_beat": 1,
            "original_description": "마츠다가 박철진의 수하 1 쪽으로 허리를 굽힌 채 조심스럽게 속삭이듯 입술을 달싹이는 표정.",
            "validator_reason": "'입술을 달싹이는'이라는 되풀이되는 움직임을 '입술을 반쯤 벌린' 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "박철진의 수하 1이 무심한 표정으로 마츠다를 향해 고개를 살짝 숙인 찰나.",
            "characters": [
              "박철진의 수하 1",
              "마츠다"
            ],
            "based_on_beat": 1,
            "original_description": "박철진의 수하 1이 무심한 표정으로 마츠다를 향해 고개를 살짝 끄덕이는 찰나.",
            "validator_reason": "'끄덕이는'이라는 상하 연속 움직임을 '살짝 숙인' 정지 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "마츠다가 눈꺼풀을 크게 치켜뜬 채 입이 귀에 걸리도록 환하게 웃는 얼굴 클로즈업.",
            "characters": [
              "마츠다"
            ],
            "based_on_beat": 1,
            "original_description": "마츠다가 눈꺼풀을 크게 치켜뜨고 입이 귀에 걸리도록 환하게 웃는 얼굴 클로즈업.",
            "validator_reason": "'치켜뜨고'라는 동작 연결을 '치켜뜬 채'라는 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "마츠다의 찢어진 가슴팍 옷자락에서 붉은 피가 공중에 튀어 오른 타격의 순간.",
            "characters": [
              "마츠다"
            ],
            "based_on_beat": 2,
            "original_description": "마츠다의 가슴 팍 옷자락이 보이지 않는 총격에 의해 작게 찢어지며 붉은 피가 튀어 오르는 타격의 순간.",
            "validator_reason": "'찢어지며 튀어 오르는'이라는 시간 순서 연쇄를 옷자락이 이미 찢어진 결과 상태에서 피가 공중에 뜬 단일 모먼트로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "눈이 풀린 마츠다의 상체가 낡은 작업대 위로 힘없이 기운 채 부딪히기 직전 공중에 멈춘 위태로운 찰나.",
            "characters": [
              "마츠다"
            ],
            "based_on_beat": 2,
            "original_description": "눈이 풀린 마츠다의 상체가 낡은 작업대 위로 힘없이 고꾸라져 부딪히기 직전의 위태로운 찰나.",
            "validator_reason": "'고꾸라져'라는 완료 상태의 어휘가 '부딪히기 직전'과 섞인 것을 떨어지는 도중의 mid-action 자세인 '기운 채'로 통일하여 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "박철진의 수하 1이 한 손으로 검은 무전기를 입가에 바짝 가져다 댄 채 무표정하게 앞을 응시하는 구도.",
            "characters": [
              "박철진의 수하 1"
            ],
            "based_on_beat": 2,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 18,
        "scene_heading": "민병대 사무실 – D",
        "shots": [
          {
            "shot_index": 1,
            "description": "책상 위 스피커폰으로 상체를 숙인 박철진이 비릿한 미소를 지은 채 입술이 살짝 열린 얼굴.",
            "characters": [
              "박철진"
            ],
            "based_on_beat": 1,
            "original_description": "책상 위 스피커폰으로 상체를 숙인 박철진이 비릿한 미소를 지으며 입술을 여는 얼굴.",
            "validator_reason": "'지으며 입술을 여는' 연속 동작을 '지은 채 입술이 열린' 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "맞은편에 선 윤성찬이 흰 손수건으로 자신의 코끝을 꾹 누른 채 미간을 찌푸린 굳은 표정.",
            "characters": [
              "윤성찬"
            ],
            "based_on_beat": 1,
            "original_description": "맞은편에 선 윤성찬이 흰 손수건으로 자신의 코끝을 꾹 누르며 미간을 찌푸린 굳은 표정.",
            "validator_reason": "'누르며'를 '누른 채'라는 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "박철진이 한 손에 쥔 날카로운 단도를 손가락 사이로 돌리던 중 칼날이 비스듬히 기울어진 손끝 클로즈업.",
            "characters": [
              "박철진"
            ],
            "based_on_beat": 1,
            "original_description": "박철진이 한 손에 쥔 날카로운 단도를 손가락 사이로 빙글 돌리는 손끝 클로즈업.",
            "validator_reason": "'빙글 돌리는' 연속 동작을 회전 방향이 읽히는 진행 중의 한 위치로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "윤성찬이 박철진을 향해 고개를 살짝 내민 채 눈치를 보듯 턱이 미세하게 떨리는 진동의 한 찰나를 포착한 얼굴.",
            "characters": [
              "윤성찬",
              "박철진"
            ],
            "based_on_beat": 1,
            "original_description": "윤성찬이 박철진을 향해 고개를 살짝 내민 채 눈치를 보듯 턱을 파르르 떠는 얼굴.",
            "validator_reason": "'파르르 떠는' 반복 변화를 진동 중인 한 찰나로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "박철진이 등 뒤 벽을 향해 맹렬히 팔을 뻗어 단도가 손끝에서 막 허공으로 떠오른 역동적인 찰나.",
            "characters": [
              "박철진"
            ],
            "based_on_beat": 1,
            "original_description": "박철진이 손에 쥐고 있던 단도를 등 뒤 벽을 향해 맹렬히 집어 던지는 팔의 역동적인 찰나.",
            "validator_reason": "'집어 던지는' 동작을 칼이 손끝에서 막 떨어지는 mid-action 순간으로 구체화하여 추진 방향을 보존함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "단도 끝이 윤성찬의 얼굴 옆 나무 벽면에 깊숙이 박힌 채 나무 파편이 허공에 정지해 있는 타격의 순간.",
            "characters": [
              "윤성찬"
            ],
            "based_on_beat": 1,
            "original_description": "허공을 가른 단도 끝이 윤성찬의 얼굴 옆 나무 벽면에 깊숙이 박히며 파편이 살짝 튀는 타격의 순간.",
            "validator_reason": "'박히며 튀는' 연속 동작을 '박힌 채 파편이 흩뿌려진' 타격 직후의 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "윤성찬의 두 눈이 크게 확장되고 얼굴 전체가 벌겋게 달아오른 당황한 표정 클로즈업.",
            "characters": [
              "윤성찬"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "박철진이 두 팔을 양옆으로 벌린 채 거만한 미소를 지으며 윤성찬을 똑바로 응시하는 위압적인 구도.",
            "characters": [
              "박철진",
              "윤성찬"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "박철진이 윤성찬을 향해 허리를 90도로 푹 굽힌 채 비꼬듯 멈춰 있는 가식적인 자세.",
            "characters": [
              "박철진",
              "윤성찬"
            ],
            "based_on_beat": 1,
            "original_description": "박철진이 윤성찬을 향해 허리를 90도로 푹 굽히며 비꼬듯 인사하는 가식적인 자세.",
            "validator_reason": "'굽히며 인사하는' 동작을 '굽힌 채 멈춰 있는' 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "윤성찬이 미간을 찌푸린 채 어색하게 입꼬리를 올리고 이마에 식은땀이 맺힌 굳은 얼굴.",
            "characters": [
              "윤성찬"
            ],
            "based_on_beat": 2,
            "original_description": "윤성찬이 미간을 찌푸린 채 어색하게 입꼬리를 올리며 이마에 식은땀을 흘리는 굳은 얼굴.",
            "validator_reason": "'올리며 흘리는' 연속 동작을 '올리고 맺힌' 고정 상태로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 19,
        "scene_heading": "윤성찬 차 안 – D",
        "shots": [
          {
            "shot_index": 1,
            "description": "고급 승용차 뒷좌석에 앉은 윤성찬이 앞좌석 쪽으로 몸을 바짝 기울인 채 매서운 눈빛을 뿜는 구도.",
            "characters": [
              "윤성찬"
            ],
            "based_on_beat": 1,
            "original_description": "고급 승용차 뒷좌석에 앉은 윤성찬이 앞좌석 쪽으로 몸을 바짝 기울이며 매서운 눈빛을 뿜는 구도.",
            "validator_reason": "진행형 동작인 '기울이며'를 고정된 자세인 '기울인 채'로 수정하여 한 순간으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "운전석의 윤성찬의 비서가 놀란 눈으로 룸미러를 힐끗 쳐다보는 찰나.",
            "characters": [
              "윤성찬의 비서"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "윤성찬이 미간에 깊은 주름을 잡은 채 차 창밖을 향해 턱을 괴고 불만스러운 표정을 짓고 있는 얼굴.",
            "characters": [
              "윤성찬"
            ],
            "based_on_beat": 1,
            "original_description": "윤성찬이 미간에 깊은 주름을 잡은 채 차 창밖을 향해 턱을 괴며 불만스러운 표정을 짓는 얼굴.",
            "validator_reason": "진행형 동작인 '턱을 괴며'를 고정된 상태인 '턱을 괴고'로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 20,
        "scene_heading": "난민촌 일각 – D",
        "shots": [
          {
            "shot_index": 1,
            "description": "먼지 날리는 골목에서 이현우와 페드로가 나란히 걷던 중 한 발을 내디딘 자세로 서로를 쳐다보고 환하게 웃는 찰나.",
            "characters": [
              "이현우",
              "페드로"
            ],
            "based_on_beat": 1,
            "original_description": "먼지 날리는 골목에서 이현우와 페드로가 나란히 걸으며 서로를 쳐다보고 환하게 웃는 찰나.",
            "validator_reason": "걷는 연속 동작을 이동 방향이 보존된 mid-stride 순간으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "팔에 완장을 찬 아시아계 남성 여럿이 낡은 컨테이너 안의 잡동사니들을 밖으로 거칠게 내던져, 잡동사니들이 허공에 떠 있는 한 찰나의 외관.",
            "characters": [
              "아시아계 남성 여럿"
            ],
            "based_on_beat": 1,
            "original_description": "팔에 완장을 찬 아시아계 남성 여럿이 낡은 컨테이너 안의 잡동사니들을 밖으로 거칠게 내던지는 외관.",
            "validator_reason": "내던지는 연속 동작을 물건이 허공에 흩어진 고정 상태의 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "이현우와 페드로가 짐이 허공에 쏟아져 내리는 도중의 컨테이너 쪽을 응시하며 입을 벌리고 얼어붙은 표정.",
            "characters": [
              "이현우",
              "페드로"
            ],
            "based_on_beat": 1,
            "original_description": "이현우와 페드로가 짐이 쏟아지는 컨테이너 쪽을 응시하며 입을 벌리고 얼어붙은 표정.",
            "validator_reason": "쏟아지는 상태의 위상을 진행 중인 한 순간으로 고정하여 명확히 함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "이현우가 페드로의 어깨를 잡은 채 골목 구석의 커다란 나무통 뒤로 몸을 밀착시켜 숨은 긴장된 자세.",
            "characters": [
              "이현우",
              "페드로"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "다른 골목을 빠져나가려는 이현우의 앞을 건장한 아시아계 사복경찰들이 일렬로 막아선 위압적인 구도.",
            "characters": [
              "이현우",
              "아시아계 사복경찰들"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "앞을 막아선 한 아시아계 사복경찰이 매서운 눈빛으로 이현우의 얼굴을 빤히 내려다보는 시선.",
            "characters": [
              "아시아계 사복경찰",
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "페드로의 두 손바닥이 앞의 사복경찰 가슴팍에 닿아 맹렬하게 밀어내는 힘에 의해 경찰의 상체가 뒤로 젖혀진 타격의 순간.",
            "characters": [
              "페드로",
              "사복경찰"
            ],
            "based_on_beat": 2,
            "original_description": "페드로가 두 손바닥으로 앞의 사복경찰 가슴팍을 맹렬하게 밀쳐내는 힘이 실린 타격의 순간.",
            "validator_reason": "밀쳐내는 동작을 능동적 힘과 영향받은 자세 불균형이 드러나는 접촉 순간으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "이현우가 놀란 표정으로 반대편 골목을 향해 상체를 깊숙이 숙인 채, 한쪽 뒷발로 바닥을 힘껏 밀어내며 질주를 시작한 날렵한 자세.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 놀란 표정으로 반대편 골목을 향해 상체를 깊숙이 숙이며 전력 질주를 시작하는 날렵한 자세.",
            "validator_reason": "질주를 시작하는 연속 동작을 땅을 차고 나가는 mid-action 순간으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "잡동사니로 가득한 시장 골목 사이에서 이현우가 한쪽 발은 공중에 띄우고 두 팔은 엇갈려 뻗은 채 내달리는 역동적인 전신.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "잡동사니로 가득한 시장 골목 사이를 뚫고 이현우가 두 팔을 거칠게 휘두르며 내달리는 역동적인 전신.",
            "validator_reason": "내달리는 연속 동작을 사지가 교차된 mid-stride 순간으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "이현우의 몸에 강하게 부딪힌 시장 바닥의 낡은 빈 상자들이 허공으로 사방팔방 흩어져 떠 있는 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "이현우의 몸에 강하게 부딪힌 시장 바닥의 낡은 빈 상자들이 허공으로 사방팔방 흩어지는 찰나.",
            "validator_reason": "흩어지는 과정을 파편이 공중에 멈춘 정지 순간으로 명확히 함.",
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "좁은 골목 끝에서 튀어나온 다른 아시아계 사복경찰이 소총의 개머리판을 이현우의 얼굴을 향해 거세게 뻗어 올린 스윙 궤적 중간의 구도.",
            "characters": [
              "아시아계 사복경찰",
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "좁은 골목 끝에서 튀어나온 다른 아시아계 사복경찰이 소총의 개머리판을 이현우의 얼굴을 향해 거세게 휘두르는 도중의 구도.",
            "validator_reason": "휘두르는 연속 동작을 타격 궤적 중간에 멈춘 한 순간으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "맹렬히 휘둘러진 개머리판이 이현우의 광대뼈에 정통으로 꽂히며 얼굴이 옆으로 확 꺾인 타격의 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "타격을 입은 이현우가 두 눈이 풀린 채, 두 다리의 힘이 풀려 거친 흙바닥을 향해 상체가 기울어진 위태로운 자세.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "타격을 입은 이현우가 두 눈이 풀린 채 거친 흙바닥으로 힘없이 고꾸라지기 직전의 위태로운 자세.",
            "validator_reason": "고꾸라지는 연속 동작을 다리 힘이 풀려 상체가 기울어진 한 찰나로 고정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 21,
        "scene_heading": "라울의 집 (컨테이너) – D",
        "shots": [
          {
            "shot_index": 1,
            "description": "낡은 침상 위에 누운 앰버가 옅은 미소를 띤 채 평온하게 두 눈을 감고 있는 얼굴.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "활짝 열린 컨테이너 철제 문턱을 넘어 방 안으로 도약해 두 발이 허공에 떠 있는 땀범벅인 라울의 찰나.",
            "characters": [
              "라울"
            ],
            "based_on_beat": 1,
            "original_description": "컨테이너 철제 문이 안으로 활짝 열리며 땀범벅이 된 라울이 방 안으로 급히 뛰어 들어오는 공중의 찰나.",
            "validator_reason": "시간 연결어 '열리며'를 완료 상태인 '열린'으로 바꾸고, '뛰어 들어오는' 동작을 허공에 뜬 mid-action 순간으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "앰버가 동그랗게 커진 두 눈으로 이불 가장자리를 움켜쥔 채 상체를 벌떡 일으켜 세운 자세.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "라울이 입을 크게 벌린 채 손가락으로 열린 문밖을 가리키고 있는 다급한 구도.",
            "characters": [
              "라울"
            ],
            "based_on_beat": 1,
            "original_description": "라울이 입을 크게 벌리고 숨을 헐떡이며 손가락으로 열린 문밖을 가리키는 다급한 구도.",
            "validator_reason": "반복 동작인 '숨을 헐떡이며'를 제거하고 손가락을 가리키는 단일 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "라울이 눈썹을 치켜올리고 양손바닥을 하늘로 향한 채 앰버를 향해 고개를 갸우뚱하게 기울인 자세.",
            "characters": [
              "라울",
              "앰버"
            ],
            "based_on_beat": 2,
            "original_description": "라울이 눈썹을 치켜올리고 양손바닥을 하늘로 향한 채 앰버를 향해 고개를 갸우뚱하는 동작.",
            "validator_reason": "진행형 동사인 '갸우뚱하는 동작'을 '갸우뚱하게 기울인 자세'라는 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "입을 반쯤 벌린 채 굳어버린 앰버의 당황한 표정 클로즈업.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 2,
            "original_description": "앰버의 동공이 미세하게 떨리며 입을 반쯤 벌린 채 굳어버린 당황한 표정 클로즈업.",
            "validator_reason": "반복 동작인 '동공이 미세하게 떨리며'를 제거하고 굳어버린 고정 상태의 찰나로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 22,
        "scene_heading": "난민촌 – D",
        "shots": [
          {
            "shot_index": 1,
            "description": "복잡한 시장거리에 우뚝 선 거대한 덩치의 찰리가 진열된 온갖 잡동사니들을 향해 두 눈의 푸른빛을 빛내며 바라보는 외관.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "찰리의 커다랗고 투박한 금속 손가락이 가판대 위 노란 바나나 다발을 향해 조심스레 뻗어 나간 손끝.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "아시아계 상인 남성이 미간을 험악하게 구긴 채 찰리를 향해 주먹을 쥐고 입을 크게 벌려 고함치는 표정.",
            "characters": [
              "아시아계 상인 남성",
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "기겁한 찰리가 두 어깨를 잔뜩 움츠린 채 상체를 뒤로 확 젖히고 뒷발을 뒤로 뻗어 허공에 띄운 자세.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "기겁한 찰리가 두 어깨를 잔뜩 움츠린 채 상체를 뒤로 확 젖히며 발을 뒤로 빼는 자세.",
            "validator_reason": "'젖히며 빼는' 연속 동작을 상체를 젖히고 발을 뒤로 뻗은 도중의 mid-action 순간으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "찰리가 귀 쪽 금속 부품을 쫑긋 세운 채 인파 반대편 골목 쪽으로 고개를 돌린 호기심 어린 구도.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "수많은 인파 속에서 찰리의 거대한 뒷모습이 복잡한 시장 텐트 틈새로 상체를 반쯤 들이밀고 한 발을 내디딘 외관.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "수많은 인파 속에서 찰리의 거대한 뒷모습이 복잡한 시장 텐트 틈새로 스며들듯 멀어지는 외관.",
            "validator_reason": "'멀어지는'이라는 연속 이동을 텐트 틈새로 몸을 들이미는 중인 mid-action 순간으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "앰버와 라울이 숨을 헐떡이며 찰리가 서 있던 바나나 가판대 앞에 두 발로 다급히 멈춰 선 찰나.",
            "characters": [
              "앰버",
              "라울"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "앰버가 손가락을 뻗어 찰리가 사라진 인파 저편을 정확히 가리키며 눈을 부릅뜬 긴박한 표정.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "라울과 앰버가 손끝 방향을 향해 어깨를 구부린 채 뒷발로 지면을 밀어내 몸이 막 떠오른 mid-stride 뒷모습.",
            "characters": [
              "라울",
              "앰버"
            ],
            "based_on_beat": 3,
            "original_description": "라울과 앰버가 손끝 방향을 향해 어깨를 구부린 채 전력으로 박차고 뛰어가는 역동적인 뒷모습.",
            "validator_reason": "'뛰어가는' 이동 동작을 지면을 밀어내 몸이 막 뜬 상태의 mid-action 순간으로 고정하여 추진력을 보존함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 23,
        "scene_heading": "구치소 면회실 – D",
        "shots": [
          {
            "shot_index": 1,
            "description": "차가운 철제 탁자 앞에 앉은 이현우가 한쪽 눈이 퉁퉁 붓고 입술이 터진 피멍 든 얼굴로 고개를 푹 숙인 모습.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "세련된 양복 차림의 윤성찬이 옅은 미소를 띠며 윤성찬의 비서와 함께 면회실 철문 안으로 한 발을 크게 내딛은 mid-stride 찰나의 구도.",
            "characters": [
              "윤성찬",
              "윤성찬의 비서"
            ],
            "based_on_beat": 1,
            "original_description": "세련된 양복 차림의 윤성찬이 옅은 미소를 띠며 윤성찬의 비서와 함께 면회실 철문 안으로 성큼 들어서는 구도.",
            "validator_reason": "'성큼 들어서는'의 이동 동작을 뒷발을 떼고 한 발을 내딛은 mid-action 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "앞으로 모은 수갑 찬 두 손바닥을 바짝 밀착한 자세의 이현우가 눈물 맺힌 눈으로 윤성찬을 애절하게 올려다보는 시선.",
            "characters": [
              "이현우",
              "윤성찬"
            ],
            "based_on_beat": 1,
            "original_description": "앞으로 모은 수갑 찬 두 손을 싹싹 비비는 자세의 이현우가 눈물 맺힌 눈으로 윤성찬을 애절하게 올려다보는 시선.",
            "validator_reason": "'비비는'의 반복 동작을 두 손바닥을 밀착한 고정된 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "윤성찬이 옆에 선 윤성찬의 비서 쪽으로 턱을 치켜든 채 여유로운 표정으로 신호를 보내는 얼굴.",
            "characters": [
              "윤성찬",
              "윤성찬의 비서"
            ],
            "based_on_beat": 1,
            "original_description": "윤성찬이 옆에 선 윤성찬의 비서 쪽으로 턱을 치켜들며 신호를 보내는 여유로운 얼굴.",
            "validator_reason": "'치켜들며 신호를 보내는'의 연속 동작을 턱을 치켜든 채 정지된 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "윤성찬의 비서가 이현우 손목의 금속 수갑에 은빛 열쇠를 꽂아 넣고 돌리는 찰나의 손끝 클로즈업.",
            "characters": [
              "윤성찬의 비서",
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "윤성찬의 비서가 은빛 열쇠로 이현우 손목의 금속 수갑을 찰칵 풀어내는 손끝 클로즈업.",
            "validator_reason": "'풀어내는'의 연속된 변화 과정을 열쇠를 꽂고 돌리는 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "수갑에서 풀려난 두 손목을 다른 손으로 감싸 쥔 이현우가 어리둥절한 표정으로 윤성찬을 쳐다보는 얼굴.",
            "characters": [
              "이현우",
              "윤성찬"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "윤성찬이 탁자 위 이현우 앞으로 고릴라 로봇 찰리의 사진을 손가락으로 누른 채 밀고 있는 mid-action의 손끝.",
            "characters": [
              "윤성찬",
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "윤성찬이 자신의 안주머니에서 꺼낸 고릴라 로봇 찰리의 사진을 탁자 위 이현우 앞으로 스윽 밀어놓는 손끝.",
            "validator_reason": "'꺼낸'과 '밀어놓는'의 연속 동작 중, 사진을 탁자 위로 밀고 있는 도중의 한 찰나로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "이현우가 탁자 위 찰리의 사진을 내려다보며 미간을 살짝 찌푸린 당혹스러운 표정.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "윤성찬이 두 손을 탁자 위에 모은 채 이현우의 눈을 똑바로 응시하며 은밀하게 입술을 살짝 벌린 찰나.",
            "characters": [
              "윤성찬",
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "윤성찬이 두 손을 탁자 위에 모은 채 이현우의 눈을 똑바로 응시하며 은밀하게 입술을 달싹이는 찰나.",
            "validator_reason": "'달싹이는'의 입술 움직임을 살짝 벌려 멈춘 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "이현우의 눈동자가 한쪽으로 치우친 채 입을 반쯤 벌린 깊은 생각에 빠진 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "이현우의 눈동자가 좌우로 미세하게 흔들리며 입을 반쯤 벌린 깊은 생각에 빠진 얼굴.",
            "validator_reason": "'흔들리며'의 반복 동작을 눈동자가 한 방향에 머문 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "이현우가 상체를 탁자 쪽으로 쑥 내민 채 두 눈을 반짝이고 절박한 표정으로 앞을 바라보는 자세.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 상체를 탁자 쪽으로 쑥 내밀며 두 눈을 반짝이고 절박한 표정으로 앞을 바라보는 자세.",
            "validator_reason": "'내밀며'의 시간 진행을 상체를 이미 내민 결과 상태로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "윤성찬이 눈웃음을 치며 입꼬리를 길게 늘어뜨려 확신에 찬 여유로운 미소를 짓는 얼굴 클로즈업.",
            "characters": [
              "윤성찬"
            ],
            "based_on_beat": 2,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 24,
        "scene_heading": "현우의 컨테이너 – D",
        "shots": [
          {
            "shot_index": 1,
            "description": "난민촌의 흙먼지 날리는 입구 도로변에 멈춰 선 검은색 세단 뒷좌석 문이 바깥으로 확 열린 그 각도에서 멈춘 외관.",
            "characters": [],
            "based_on_beat": 1,
            "original_description": "난민촌의 흙먼지 날리는 입구 도로변에 멈춰 선 검은색 세단 뒷좌석 문이 바깥으로 확 열리는 외관.",
            "validator_reason": "'확 열리는'이라는 변화 진행을 '열린 그 각도에서 멈춘'으로 하나의 찰나로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "문이 열린 차 안에서 피멍 든 얼굴의 이현우가 한쪽 발을 거친 흙바닥으로 힘주어 내딛는 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "이현우가 7-31이 적힌 컨테이너 현관문을 거세게 밀어내며 한 발을 안으로 뻗어 몸을 막 들이민 급박한 뒷모습.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 7-31이 적힌 컨테이너 현관문을 거세게 밀치고 안으로 뛰어 들어가는 급박한 뒷모습.",
            "validator_reason": "'밀치고 뛰어 들어가는'이라는 연속 동작을 문을 밀어내며 몸을 들이민 하나의 mid-action 찰나로 통합함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "숨을 헐떡이는 페드로가 현관문 안쪽에서 이현우의 어깨를 확 움켜쥔 찰나의 손끝.",
            "characters": [
              "이현우",
              "페드로"
            ],
            "based_on_beat": 1,
            "original_description": "숨을 헐떡이며 현관문 뒤를 따라 들어온 페드로가 이현우의 어깨를 확 잡아채는 손끝.",
            "validator_reason": "'따라 들어온' 후 '잡아채는' 시간 연결을 제거하고 어깨를 움켜쥔 능동적 접촉의 순간으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "이현우가 페드로의 손을 뿌리친 자세 그대로, 방 안 한곳을 향해 고개를 강하게 틀어 멈춘 초조한 시선.",
            "characters": [
              "이현우",
              "페드로"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 페드로의 손을 뿌리친 채 방 안을 다급하게 두리번거리는 초조한 시선.",
            "validator_reason": "'두리번거리는'이라는 연속 동작을 고개를 한쪽으로 돌려 시선을 멈춘 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "페드로가 고개를 한쪽으로 강하게 틀고 양손바닥을 앞으로 뻗어 강하게 부정하는 심각한 자세.",
            "characters": [
              "페드로"
            ],
            "based_on_beat": 2,
            "original_description": "페드로가 고개를 좌우로 젓고 양손바닥을 앞으로 뻗어 강하게 부정하는 심각한 자세.",
            "validator_reason": "'고개를 좌우로 젓고'라는 연속 동작을 고개를 한쪽으로 튼 정지 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "이현우가 페드로의 멱살을 두 손으로 꽉 틀어쥐고 눈에 핏대를 세운 채 무섭게 노려보는 구도.",
            "characters": [
              "이현우",
              "페드로"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "멱살을 잡힌 페드로가 억울한 듯 입술을 삐죽이며 텅 빈 방 안 한구석을 손가락으로 가리키는 찰나.",
            "characters": [
              "페드로"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "이현우가 멱살을 쥔 손을 느슨하게 놓은 채, 두 눈동자가 크게 확장된 충격 받은 표정 클로즈업.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "이현우의 멱살 쥔 손에 힘이 탁 풀리며 두 눈동자가 크게 확장된 충격 받은 표정 클로즈업.",
            "validator_reason": "'풀리며'라는 시간 진행을 '느슨하게 놓은 채'라는 고정된 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "열린 현관문 밖으로 뒷발이 바닥을 강하게 밀어내며 상체가 튀어나간 이현우의 전력 질주 mid-action 뒷모습.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "이현우가 열린 현관문 밖으로 몸을 날리듯 전력 질주를 시작하는 역동적인 뒷모습.",
            "validator_reason": "'시작하는'이라는 시간적 표현을 뒷발로 바닥을 밀어내는 구체적인 추진의 mid-action 찰나로 대체함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 25,
        "scene_heading": "난민촌 + 피로연장 – 해질무렵",
        "shots": [
          {
            "shot_index": 1,
            "description": "앰버가 외투를 입은 아시아계 남성의 어깨를 뒤에서 덥석 움켜쥔 손끝 클로즈업.",
            "characters": [
              "앰버",
              "아시아계 남성"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "뒤돌아본 아시아계 남성의 낯선 얼굴에 앰버가 당황하여 입술을 벌린 찰나.",
            "characters": [
              "앰버",
              "아시아계 남성"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "빈 공터에 세워진 천막 안, 주크박스 주위에 수많은 인종의 난민들이 한쪽 팔다리를 뻗은 춤 동작으로 공중에 멈춘 왁자지껄한 전경.",
            "characters": [
              "수많은 인종의 난민들"
            ],
            "based_on_beat": 1,
            "original_description": "빈 공터에 세워진 천막 안, 주크박스 주위에 수많은 인종의 난민들이 모여 춤을 추는 왁자지껄한 전경.",
            "validator_reason": "춤을 추는 연속 동작을 팔다리가 허공에 고정된 춤 자세 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "앰버가 인파 너머의 찰리를 향해 두 눈을 크게 치켜뜬 찰나.",
            "characters": [
              "앰버",
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "찰리가 앰버의 한쪽 손을 자신의 거대한 금속 손으로 꽉 쥔 채 한쪽 눈을 찡긋 감은 표정.",
            "characters": [
              "찰리",
              "앰버"
            ],
            "based_on_beat": 1,
            "original_description": "찰리가 앰버의 한쪽 손을 자신의 거대한 금속 손으로 꽉 쥔 채 한쪽 눈을 찡긋거리는 표정.",
            "validator_reason": "찡긋거리는 반복적 표정 변화를 눈을 감은 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "찰리의 손에 이끌려 허공에 뜬 채, 치맛자락이 팽이처럼 바깥으로 펼쳐진 앰버의 역동적인 찰나.",
            "characters": [
              "찰리",
              "앰버"
            ],
            "based_on_beat": 1,
            "original_description": "찰리의 손에 이끌려 허공에서 팽이처럼 빙글 도는 앰버의 역동적인 찰나.",
            "validator_reason": "빙글 도는 연속 동작을 원심력에 의해 옷이 뻗어 나간 mid-action 정지 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "춤추는 두 사람을 보며 라울이 입꼬리를 한껏 올려 활짝 웃는 얼굴.",
            "characters": [
              "라울"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "찰리의 손에 잡힌 앰버가 황당한 듯 입을 크게 벌리고 환하게 웃는 구도.",
            "characters": [
              "찰리",
              "앰버"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "찰리가 두 발끝으로 흙바닥을 딛은 채 한쪽 발을 뒤로 뻗어 미끄러지는 궤적 위에 고정된 문워크 자세.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "찰리가 두 발끝으로 흙바닥을 미끄러지듯 밀어내며 뒤로 이동하는 문워크 자세.",
            "validator_reason": "이동하는 연속 동작을 발을 뒤로 뻗어 추진력을 나타낸 정지 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "라울이 찰리의 동작을 흉내 내며 두 발끝을 세워 바닥에 꾹 누른 자세로 중심을 잡은 유쾌한 모습.",
            "characters": [
              "라울",
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "라울이 찰리의 동작을 흉내 내며 두 발끝을 세워 바닥을 비비는 유쾌한 모습.",
            "validator_reason": "바닥을 비비는 연속 동작을 발끝을 바닥에 눌러 중심을 잡은 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "붉은색 경광등이 강한 섬광을 내뿜는 가운데, 제자리에 꼿꼿이 서서 얼어붙은 난민 무리의 구도.",
            "characters": [
              "난민 무리"
            ],
            "based_on_beat": 2,
            "original_description": "붉은색 경광등이 번쩍이며 불을 밝힌 가운데, 제자리에 꼿꼿이 서서 얼어붙은 난민 무리의 구도.",
            "validator_reason": "번쩍이는 광원의 상태 변화를 빛을 강하게 뿜는 고정된 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "천막 주변의 낡은 가로등 불빛이 모두 꺼져 칠흑 같은 어둠에 휩싸인 피로연장 전경.",
            "characters": [],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "어둠 속에서 앰버가 찰리를 향해 한쪽 손을 내민 채 미간을 찌푸린 얼굴.",
            "characters": [
              "앰버",
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "찰리가 멈춘 주크박스 쪽으로 시선을 고정한 채 두 어깨를 축 늘어뜨린 시무룩한 자태.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "찰리의 낡은 금속 가슴 장갑판 틈새에서 둥근 링 모양의 푸른빛이 눈부시게 뿜어져 나오는 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "가슴에서 빛을 내뿜는 찰리를 올려다보며 앰버가 두 눈을 크게 치켜뜬 얼굴.",
            "characters": [
              "앰버",
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "꺼졌던 피로연장 주변의 낡은 전구들이 일제히 눈부신 빛을 내며 켜진 화려한 전경.",
            "characters": [],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "가로등 전구 하나가 강한 섬광과 함께 산산조각 나 유리 파편이 허공에 흩뿌려진 순간.",
            "characters": [],
            "based_on_beat": 3,
            "original_description": "가로등 전구 하나가 강한 섬광과 함께 산산조각 나며 유리 파편이 튀는 타격의 순간.",
            "validator_reason": "조각이 나며 파편이 튀는 시간 진행을 파편이 허공에 정지한 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "찰리가 앰버를 향해 입가 부품을 위로 올린 채 한쪽 금속 손을 앞으로 쭉 내민 구도.",
            "characters": [
              "찰리",
              "앰버"
            ],
            "based_on_beat": 3,
            "original_description": "찰리가 앰버를 향해 입가 부품을 위로 올리며 한쪽 금속 손을 앞으로 쭉 내민 구도.",
            "validator_reason": "동시에 이루어지는 두 연속 동작을 모두 완료되어 고정된 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 20,
            "description": "앰버가 찰리의 거대한 손을 자신의 두 손으로 덥석 맞잡은 손끝 클로즈업.",
            "characters": [
              "앰버",
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 21,
            "description": "환하게 불이 켜진 피로연장 입구로 이현우와 페드로가 뒷발로 지면을 차내고 허공에 앞발을 뻗은 다급한 mid-stride 자세.",
            "characters": [
              "이현우",
              "페드로"
            ],
            "based_on_beat": 4,
            "original_description": "환하게 불이 켜진 피로연장 입구로 이현우와 페드로가 다급히 뛰어 들어오는 역동적인 찰나.",
            "validator_reason": "뛰어 들어오는 연속 동작을 다리가 허공에 뜬 추진력이 보존된 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 22,
            "description": "군용 트럭 한 대가 거친 흙먼지를 일으키며 피로연장 공터 한가운데 급정거한 외관.",
            "characters": [],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 23,
            "description": "트럭 짐칸 모서리에서 발을 떼고 흙바닥을 향해 다리를 뻗은 채 공중에 떠 있는 아시아계 민병대원들의 찰나.",
            "characters": [
              "아시아계 민병대원들"
            ],
            "based_on_beat": 4,
            "original_description": "트럭 짐칸에서 소총을 든 아시아계 민병대원들이 흙바닥으로 일제히 뛰어내리는 공중의 찰나.",
            "validator_reason": "뛰어내리는 이동 동작을 짐칸을 벗어나 허공에 뜬 mid-action 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 24,
            "description": "트럭 조수석에서 내린 박철진이 매서운 눈빛으로 난민들을 훑어보는 위압적인 전신.",
            "characters": [
              "박철진",
              "난민들"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 25,
            "description": "아시아계 민병대원이 휘두른 검은색 곤봉이 비명 지르는 아프리카계 난민 남성의 어깨에 맹렬히 내리꽂힌 타격의 순간.",
            "characters": [
              "아시아계 민병대원",
              "아프리카계 난민 남성"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 26,
            "description": "혼비백산한 인파 사이로 이현우가 앰버의 어깨를 꽉 쥔 채 천막 뒤편으로 상체를 웅크린 급박한 자세.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 27,
            "description": "어두운 난민촌 골목, 이현우가 앰버의 손을 잡고 지면을 강하게 차내 두 발이 허공에 뜬 전력 질주 mid-stride 뒷모습.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 5,
            "original_description": "어두운 난민촌 골목, 이현우가 앰버의 손을 잡고 앞으로 전력 질주하는 뒷모습.",
            "validator_reason": "전력 질주하는 연속 동작을 다리가 허공에 뜬 찰나의 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 28,
            "description": "이현우의 뒤를 바짝 쫓아 뒷발로 지면을 밀어내고 몸이 공중에 뜬 찰리, 라울, 페드로의 역동적인 구도.",
            "characters": [
              "이현우",
              "찰리",
              "라울",
              "페드로"
            ],
            "based_on_beat": 5,
            "original_description": "이현우의 뒤를 바짝 쫓아 달리는 찰리, 라울, 페드로의 몸이 공중에 뜬 역동적인 구도.",
            "validator_reason": "쫓아 달리는 이동 동작을 지면을 밀어낸 동력이 포함된 체공 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 29,
            "description": "골목 모퉁이 벽면에 이현우, 앰버, 라울, 페드로, 찰리가 등을 바짝 기댄 채 숨죽인 긴장된 자세.",
            "characters": [
              "이현우",
              "앰버",
              "라울",
              "페드로",
              "찰리"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 30,
            "description": "페드로가 손가락을 뻗어 찰리의 금속 몸통을 콕 가리킨 채 입술을 비죽 내민 찰나.",
            "characters": [
              "페드로",
              "찰리"
            ],
            "based_on_beat": 5,
            "original_description": "페드로가 손가락을 뻗어 찰리의 금속 몸통을 콕 가리키며 입술을 비죽이는 찰나.",
            "validator_reason": "가리키며 비죽이는 두 동작의 진행을 모두 고정된 결과 상태의 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 31,
            "description": "찰리가 금속 고개를 옆으로 깊게 갸우뚱한 채 안광이 꺼지듯 어두워진 의아한 얼굴.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 5,
            "original_description": "찰리가 금속 고개를 옆으로 깊게 갸우뚱하며 안광을 깜빡이는 의아한 얼굴.",
            "validator_reason": "갸우뚱하며 깜빡이는 연속 동작을 갸우뚱한 자세에서 안광의 밝기 변화가 고정된 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 32,
            "description": "총을 든 아시아계 민병대원들의 뒷모습 너머로, 이현우 일행이 반대편 쓰레기장 골목을 향해 한쪽 발을 허공에 뻗은 찰나.",
            "characters": [
              "아시아계 민병대원들",
              "이현우 일행"
            ],
            "based_on_beat": 5,
            "original_description": "총을 든 아시아계 민병대원들의 뒷모습 너머로, 이현우 일행이 반대편 쓰레기장 골목으로 발을 내딛는 찰나.",
            "validator_reason": "발을 내딛는 이동 동작을 발이 닿기 직전 공중에 뻗은 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 33,
            "description": "쓰레기 더미 구석에서 이현우가 둥근 철제 맨홀 뚜껑을 두 손으로 꽉 쥐고 옆으로 강하게 밀어내는 힘이 실린 자세.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 5,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 26,
        "scene_heading": "지하 하수도로 + 피로연장 (교차) – N",
        "shots": [
          {
            "shot_index": 1,
            "description": "어둡고 축축한 하수도 안, 이현우가 수직 철제 사다리를 두 손으로 움켜쥐고 매달린 구도.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "이현우가 자신의 낡은 겉옷으로 앰버의 코와 입을 둥글게 감싸 쥔 손끝 클로즈업.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "피로연장 한가운데, 박철진의 수하 1이 아시아계 취객 난민의 뒷덜미를 거칠게 움켜쥔 채 바닥으로 짓누르는 힘이 실린 구도.",
            "characters": [
              "수하 1",
              "아시아계 취객 난민"
            ],
            "based_on_beat": 1,
            "original_description": "피로연장 한가운데, 박철진의 수하 1이 아시아계 취객 난민의 뒷덜미를 거칠게 움켜쥐고 바닥으로 짓누르는 힘이 실린 구도.",
            "validator_reason": "움켜쥐고 짓누르는 연속적인 서술을 움켜쥔 채 짓누르는 단일 상태로 수정함",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "바닥에 무릎 꿇은 아시아계 취객 난민이 자신의 가슴팍을 두 손으로 다급히 가리키는 찰나.",
            "characters": [
              "아시아계 취객 난민"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "박철진의 커다란 손아귀가 아시아계 취객 난민의 턱을 빈틈없이 꽉 틀어쥔 타격감 있는 클로즈업.",
            "characters": [
              "박철진",
              "아시아계 취객 난민"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "턱을 잡힌 아시아계 취객 난민이 앞줄의 미연과 시선을 마주친 채 두 눈이 동그라진 얼굴.",
            "characters": [
              "아시아계 취객 난민",
              "미연"
            ],
            "based_on_beat": 1,
            "original_description": "턱을 잡힌 아시아계 취객 난민이 앞줄의 미연과 시선을 마주치며 두 눈이 동그라진 얼굴.",
            "validator_reason": "마주치며 눈이 동그라지는 서술을 시선을 마주친 채 놀란 고정 상태로 수정함",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "인파 속에 선 미연이 두 눈동자를 크게 확장한 채 안색이 하얗게 질린 당황한 표정.",
            "characters": [
              "미연"
            ],
            "based_on_beat": 2,
            "original_description": "인파 속에 선 미연이 두 눈동자를 크게 확장하며 안색이 하얗게 질린 당황한 표정.",
            "validator_reason": "확장하며 질리는 변화 과정을 확장한 채 질린 단일 시각적 상태로 수정함",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "박철진이 고개를 비스듬히 꺾은 채 미연을 향해 비릿한 미소를 머금고 매섭게 쏘아보는 시선.",
            "characters": [
              "박철진",
              "미연"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "박철진이 턱을 치켜든 채 무장한 민병대원들을 향해 입을 크게 벌려 고함치는 찰나.",
            "characters": [
              "박철진",
              "민병대원들"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "습기 찬 하수도 갈림길, 이현우가 페드로를 향해 다급한 표정으로 반대편 통로를 가리키는 손끝.",
            "characters": [
              "이현우",
              "페드로"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "페드로가 굳은 표정으로 고개를 끄덕인 채 라울의 어깨를 잡고 어두운 통로를 향해 한 발을 뻗어 내디딘 미드액션 뒷모습.",
            "characters": [
              "페드로",
              "라울"
            ],
            "based_on_beat": 3,
            "original_description": "페드로가 굳은 표정으로 고개를 끄덕이며 라울의 어깨를 잡고 어두운 통로로 발을 딛는 뒷모습.",
            "validator_reason": "고개를 끄덕이며 발을 딛는 연속 동작을 한 발을 내디딘 단일 미드액션 순간으로 수정함",
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "이현우가 기침하는 앰버를 자신의 등에 단단히 업은 채 좁은 하수도를 향해 한쪽 발로 바닥을 강하게 차내며 질주하는 미드액션 자세.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 3,
            "original_description": "이현우가 기침하는 앰버를 자신의 등에 단단히 업은 채 좁은 하수도를 향해 전력 질주하는 역동적인 찰나.",
            "validator_reason": "질주 동작의 추진력을 보존하기 위해 한 발로 바닥을 차고 나가는 순간의 미드액션 자세로 수정함",
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "앰버를 업은 이현우의 등 뒤로, 찰리의 거대한 금속 다리가 하수도 바닥을 박차며 진행 반대 방향으로 물보라가 튀고 있는 질주 미드액션 발밑 구도.",
            "characters": [
              "이현우",
              "앰버",
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "앰버를 업은 이현우의 등 뒤로, 찰리의 거대한 금속 다리가 하수도 물보라를 튀기며 맹렬히 내달리는 발밑 구도.",
            "validator_reason": "내달리는 이동 동작을 바닥을 박차며 물보라가 튀는 찰나의 미드액션 자세로 수정함",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 27,
        "scene_heading": "27. 난민촌 거리 일각 – N",
        "shots": [
          {
            "shot_index": 1,
            "description": "앰버의 상체가 열린 둥근 철제 맨홀 뚜껑 바깥으로 쑥 빠져나온 찰나.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "이현우가 맨홀 밖에서 몸을 웅크린 채 찰리의 거대한 금속 손을 꽉 쥔 손끝 클로즈업.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "어두운 난민촌 거리, 이현우와 앰버가 찰리의 양옆에 바짝 붙어 빠른 걸음으로 한쪽 발을 허공에 띄운 mid-stride 전신.",
            "characters": [
              "이현우",
              "앰버",
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "어두운 난민촌 거리, 이현우와 앰버가 찰리의 양옆에 바짝 붙어 빠른 걸음으로 걷는 전신.",
            "validator_reason": "걷는 이동 동작의 motion direction을 보존하기 위해 mid-stride 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "찰리가 지나가는 거리의 낡은 가로등 전구가 눈부신 빛을 내며 번쩍 켜지는 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "찰리의 거대한 금속 어깨 위로 작은 새 한 마리가 사뿐히 내려앉은 상태.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "이현우가 미간을 깊게 찌푸린 채 찰리를 향해 입을 크게 벌려 짜증 내는 얼굴.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "앰버가 이현우를 향해 눈을 부릅뜬 화난 표정.",
            "characters": [
              "앰버",
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "찰리의 거대한 금속 검지손가락 위에 작은 새가 얌전히 앉아있는 손끝 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "앰버가 상체를 살짝 숙인 채 입을 가리고 고통스럽게 기침하는 자세.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "어두운 도로 저편에서 다가오는 자동차의 헤드라이트 불빛이 눈부시게 쏘아지는 구도.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "헤드라이트 불빛을 받은 찰리의 손가락 위 작은 새가 날개를 펼치고 공중에 막 떠오른 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "헤드라이트 불빛을 받은 찰리의 손가락 위 작은 새가 공중으로 날아오르는 공중의 찰나.",
            "validator_reason": "날아오르는 과정을 한 찰나로 고정하기 위해 공중에 막 떠오른 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "찰리가 날아가는 작은 새를 향해 허공으로 두 팔을 뻗은 채, 도로 한가운데로 맹렬히 달리는 한쪽 발이 허공에 뜬 mid-stride 자세.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "찰리가 날아가는 작은 새를 향해 허공으로 두 팔을 뻗은 채 도로 한가운데로 맹렬히 달려나가는 역동적인 자세.",
            "validator_reason": "맹렬히 달려나가는 이동 동작을 보존하기 위해 mid-action 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "앰버가 찰리를 향해 다급하게 손을 뻗으며 입을 크게 벌린 당황한 표정.",
            "characters": [
              "앰버",
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "거대한 자동차가 도로 한가운데 선 찰리의 코앞에서 거칠게 정지하며 타이어 흙먼지를 일으키는 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "찰리가 눈부신 헤드라이트 불빛을 빤히 바라보며 눈을 동그랗게 뜬 어리둥절한 얼굴.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "이현우가 도로 쪽으로 튀어나가려는 앰버의 한쪽 팔을 거칠게 움켜쥔 채 뒤로 당기는 힘이 실린 순간.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 도로 쪽으로 튀어나가려는 앰버의 한쪽 팔을 거칠게 뒤로 낚아채는 힘이 실린 순간.",
            "validator_reason": "낚아채는 능동적 신체 접촉 동작을 한 찰나로 고정하기 위해 움켜쥐고 당기는 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "자동차 운전석 문이 열린 채, 검은 실루엣의 남성이 한쪽 발을 거친 흙바닥에 막 내딛은 찰나.",
            "characters": [
              "남성"
            ],
            "based_on_beat": 2,
            "original_description": "자동차 운전석 문이 열리며 검은 실루엣의 남성이 한쪽 발을 거친 흙바닥으로 내딛는 찰나.",
            "validator_reason": "문이 열리는 동작과 발을 내딛는 동작이 섞인 것을 문이 열린 결과 상태와 발을 딛은 정지 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "헤드라이트를 등진 남성의 짙은 실루엣이 찰리를 향해 성큼 한 발을 내딛은 위압적인 mid-stride 걷기 자세.",
            "characters": [
              "남성",
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "헤드라이트를 등진 남성의 짙은 실루엣이 찰리를 향해 성큼성큼 다가오는 위압적인 구도.",
            "validator_reason": "다가오는 연속 이동 동작을 한 찰나의 mid-action 걷기 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "찰리가 자신에게 다가오는 남성의 실루엣을 향해 고개를 푹 숙여 내려다보는 모습.",
            "characters": [
              "찰리",
              "남성"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 20,
            "description": "헤드라이트 불빛을 벗어난 신부가 눈을 동그랗게 뜨고 찰리의 거대한 덩치를 올려다보는 놀란 얼굴 클로즈업.",
            "characters": [
              "신부",
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 21,
            "description": "이현우와 앰버가 신부를 향해 눈을 크게 치켜뜨고 활짝 웃는 환한 표정.",
            "characters": [
              "이현우",
              "앰버",
              "신부"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 22,
            "description": "어두운 골목 구석에서 구도환이, 자동차 뒷문 안으로 상체를 숙여 반쯤 들어간 찰리의 뒷모습을 매섭게 주시하는 시선.",
            "characters": [
              "구도환",
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "어두운 골목 구석에서 구도환이 찰리가 자동차 뒷문으로 들어가는 뒷모습을 매섭게 주시하는 시선.",
            "validator_reason": "자동차 안으로 들어가는 연속 동작을 상체를 숙여 반쯤 들어간 정지 자세로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 28,
        "scene_heading": "28. 신부님 차 안 - N",
        "shots": [
          {
            "shot_index": 1,
            "description": "지붕에 낡은 십자가 장식이 달린 승합차가 어두운 흙길 위를 달리며 바퀴 뒤로 흙먼지를 일으키고 있는 외관.",
            "characters": [],
            "based_on_beat": 1,
            "original_description": "지붕에 낡은 십자가 장식이 달린 승합차가 어두운 흙길 위를 달리는 외관.",
            "validator_reason": "'달리는'이라는 이동 동작을 바퀴 뒤로 흙먼지가 일어나는 mid-action 상태로 보존하여 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "운전석의 신부가 백미러를 힐끗 쳐다본 채 입술을 반쯤 연 얼굴.",
            "characters": [
              "신부"
            ],
            "based_on_beat": 1,
            "original_description": "운전석의 신부가 백미러를 힐끗 쳐다보며 입술을 여는 얼굴.",
            "validator_reason": "'쳐다보며 여는'이라는 연속 동작을 쳐다본 채 입술을 연 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "승합차 뒷좌석 짐칸의 종이상자들 틈에 웅크려 앉은 이현우와 앰버, 찰리의 구도.",
            "characters": [
              "이현우",
              "앰버",
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "이현우가 앰버를 향해 눈을 부릅뜨고 매섭게 노려보는 표정.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "신부가 앞창문 밖을 향해 눈을 동그랗게 뜬 다급한 얼굴.",
            "characters": [
              "신부"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "이현우가 찰리의 거대한 금속 상체를 종이상자들 틈새 바닥으로 거칠게 짓누르는 힘이 실린 자세.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "운전석 옆 창문 밖에서 소총을 멘 아시아계 민병대원이 굳은 표정으로 서 있는 구도.",
            "characters": [
              "아시아계 민병대원"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "신부가 차창 밖의 아시아계 민병대원을 향해 눈웃음을 머금은 채 환하게 미소 짓고 있는 얼굴 클로즈업.",
            "characters": [
              "신부",
              "아시아계 민병대원"
            ],
            "based_on_beat": 1,
            "original_description": "신부가 차창 밖의 아시아계 민병대원을 향해 눈웃음을 치며 환하게 미소 짓는 얼굴 클로즈업.",
            "validator_reason": "'치며 미소 짓는'이라는 시간 연결어를 눈웃음을 머금은 채 미소 짓고 있는 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "승합차 지붕 위의 낡은 십자가 장식에서 눈부신 불빛이 막 뿜어져 나오는 순간.",
            "characters": [],
            "based_on_beat": 1,
            "original_description": "승합차 지붕 위의 낡은 십자가 장식에서 눈부신 불빛이 번쩍 켜지는 찰나.",
            "validator_reason": "'켜지는'이라는 변화 동사를 빛이 뿜어져 나오는 진행 중인 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "아시아계 민병대원이 통과 신호를 보내듯 한 손을 허공에 뻗어 크게 휘젓고 있는 중간 동작.",
            "characters": [
              "아시아계 민병대원"
            ],
            "based_on_beat": 1,
            "original_description": "아시아계 민병대원이 손을 휘저으며 승합차를 앞으로 통과시키는 동작.",
            "validator_reason": "'휘저으며 통과시키는'이라는 연속 동작을 손을 허공에 뻗어 휘젓는 mid-action 순간으로 고정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 29,
        "scene_heading": "29. 성당 지하 기도소 - N",
        "shots": [
          {
            "shot_index": 1,
            "description": "어두운 성당 지하실 계단, 신부가 한 손에 촛불을 높이 든 채 아래 계단으로 한쪽 발을 내딛은 mid-step 자세.",
            "characters": [
              "신부"
            ],
            "based_on_beat": 1,
            "original_description": "어두운 성당 지하실 계단, 신부가 한 손에 촛불을 높이 든 채 아래로 내려오는 구도.",
            "validator_reason": "'내려오는'이라는 연속 이동 동작을 한쪽 발을 내딛은 mid-step 순간으로 수정하여 한 찰나로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "찰리가 눈에 푸른빛을 낸 채 낡은 나무 십자가와 풍금이 놓인 지하실 안의 한 곳을 응시하는 호기심 어린 얼굴.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "찰리가 눈에 푸른빛을 낸 채 낡은 나무 십자가와 풍금이 놓인 지하실 안을 두리번거리는 호기심 어린 얼굴.",
            "validator_reason": "'두리번거리는'이라는 연속 동작을 한 곳을 응시하는 한 찰나의 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "앰버가 배를 양손으로 감싼 채 시무룩한 표정으로 서 있는 전신.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "이현우가 신부를 향해 미간을 찌푸린 채 절박한 표정으로 입술을 여는 찰나.",
            "characters": [
              "이현우",
              "신부"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "앰버가 이현우의 팔을 두 손으로 꽉 쥔 채 눈을 부릅뜬 다부진 얼굴.",
            "characters": [
              "앰버",
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "찰리가 두 사람 뒤에서 거대한 금속 손을 허공으로 번쩍 치켜든 유쾌한 자세.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "앰버와 이현우가 천장 쪽을 올려다본 채 입을 반쯤 벌린 놀란 표정.",
            "characters": [
              "앰버",
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "앰버와 이현우가 천장 쪽을 향해 동시에 시선을 던지며 입을 반쯤 벌린 놀란 표정.",
            "validator_reason": "'시선을 던지며'라는 시간 진행의 동작을 '올려다본 채'라는 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "신부가 검지손가락을 자신의 입술에 바짝 가져다 댄 채 매서운 눈빛을 보내는 동작.",
            "characters": [
              "신부"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "신부와 이현우가 어두운 나무 계단을 향해 한쪽 발을 허공에 띄운 채 상체를 웅크린 mid-step 뒷모습.",
            "characters": [
              "신부",
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "신부와 이현우가 어두운 나무 계단을 향해 발을 내딛으며 상체를 웅크린 뒷모습.",
            "validator_reason": "'발을 내딛으며'라는 진행 동작을 한쪽 발을 띄운 mid-step 순간으로 수정하여 한 찰나로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "1층 성당 나무 문에 달린 작은 창문을 신부가 한 손으로 밀어 살짝 열린 각도에서 멈춘 손끝.",
            "characters": [
              "신부"
            ],
            "based_on_beat": 2,
            "original_description": "1층 성당 나무 문에 달린 작은 창문을 신부가 한 손으로 쓱 밀어 여는 손끝.",
            "validator_reason": "'쓱 밀어 여는'이라는 변화 중인 동작을 살짝 열린 각도에서 포착한 한 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "신부가 열린 창문 틈으로 바깥을 내다보며 눈이 동그라진 당황한 얼굴 클로즈업.",
            "characters": [
              "신부"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "이현우가 문에 난 작은 창문 틈으로 눈을 바짝 들이댄 채 밖을 훔쳐보는 매서운 시선.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "굳게 닫힌 성당 문 밖, 구도환과 신부가 서로 마주 보고 선 대치 구도.",
            "characters": [
              "구도환",
              "신부"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "어두운 밤하늘 위로 거대한 헬리콥터가 눈부신 서치라이트 불빛을 아래로 쏘아 내리는 웅장한 찰나.",
            "characters": [],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "헬리콥터 서치라이트 불빛 주변으로 여러 대의 낡은 드론들이 허공에 떠 있는 공중 구도.",
            "characters": [],
            "based_on_beat": 2,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 30,
        "scene_heading": "30. 성당 지하실 - N",
        "shots": [
          {
            "shot_index": 1,
            "description": "찰리의 거대한 금속 손가락들이 낡은 풍금 건반 위를 꾹 누르는 손끝 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "앰버가 풍금 옆에 쪼그려 앉은 채 눈을 반짝이며 찰리를 올려다보는 환한 표정.",
            "characters": [
              "앰버",
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "찰리가 두 어깨를 아래로 축 늘어뜨린 채 눈가 푸른빛이 희미해진 시무룩한 자태.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "찰리가 텅 빈 구석에 놓인 낡은 라디오를 빤히 응시하는 집중한 구도.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "찰리의 낡은 금속 가슴 장갑판 틈새에서 눈부신 빛이 뿜어져 나오는 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "찰리의 빛을 받은 주변의 낡은 랜턴들이 일제히 밝은 불빛을 내며 켜진 환한 전경.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "바닥에 놓인 고장 난 라디오의 주파수 다이얼이 저절로 회전하는 중의 한 위치에 포착된 클로즈업.",
            "characters": [],
            "based_on_beat": 1,
            "original_description": "바닥에 놓인 고장 난 라디오의 주파수 다이얼이 저절로 빙글 돌아가는 클로즈업.",
            "validator_reason": "주파수 다이얼이 '돌아가는' 연속적인 변화를 회전 중인 한 위치에 멈춘 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "앰버가 라디오에서 나는 소리에 두 눈을 동그랗게 뜨고 입을 틀어막은 놀란 얼굴.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "찰리가 앰버를 내려다보며 고개를 아래로 기울인 찰나.",
            "characters": [
              "찰리",
              "앰버"
            ],
            "based_on_beat": 1,
            "original_description": "찰리가 앰버를 내려다보며 고개를 아래로 끄덕이는 찰나.",
            "validator_reason": "고개를 '끄덕이는' 연속 동작을 아래로 기울인 단일 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "어두운 나무 계단을 다급히 내려오느라 한 발은 계단에 닿고 다른 발은 허공에 뜬 구도환과 신부의 mid-action 발밑 구도.",
            "characters": [
              "구도환",
              "신부"
            ],
            "based_on_beat": 2,
            "original_description": "어두운 나무 계단을 다급히 내려오는 구도환과 신부의 발밑 구도.",
            "validator_reason": "이동 동작인 '내려오는'을 한 발이 허공에 뜬 mid-action 순간으로 수정하여 방향성을 보존함.",
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "이현우가 두 사람의 뒤에서 미간을 깊게 구긴 채 노려보는 불만스러운 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "구도환이 찰리를 향해 두 팔을 활짝 벌린 채 환하게 웃으며 달려드느라 한쪽 발이 지면에서 막 떨어진 역동적인 mid-action 자세.",
            "characters": [
              "구도환",
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "구도환이 찰리를 향해 두 팔을 활짝 벌린 채 환하게 웃으며 달려드는 역동적인 자세.",
            "validator_reason": "이동 동작인 '달려드는'을 한쪽 발이 지면에서 떨어진 mid-action 자세로 수정하여 방향성을 보존함.",
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "구도환이 찰리의 거대한 금속 몸통을 두 팔로 와락 끌어안은 구도.",
            "characters": [
              "구도환",
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "구도환의 품에 안긴 찰리가 안광을 반짝이며 고개를 아래로 살짝 숙인 찰나.",
            "characters": [
              "구도환",
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "구도환의 품에 안긴 찰리가 안광을 반짝이며 위아래로 고개를 끄덕이는 찰나.",
            "validator_reason": "'위아래로 끄덕이는' 반복 동작을 고개를 아래로 숙인 단일 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "이현우와 앰버가 입을 반쯤 벌린 채 구도환과 찰리 쪽을 향해 시선을 고정한 어리둥절한 표정.",
            "characters": [
              "이현우",
              "앰버",
              "구도환",
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "이현우와 앰버가 입을 반쯤 벌린 채 구도환과 찰리를 번갈아 쳐다보는 어리둥절한 표정.",
            "validator_reason": "순차적 행동인 '번갈아 쳐다보는'을 시선을 고정한 단일 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "이현우가 턱을 빳빳하게 치켜들고 구도환을 매섭게 쏘아보는 험악한 시선.",
            "characters": [
              "이현우",
              "구도환"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "이현우가 찰리의 거대한 금속 팔을 한 손으로 꽉 움켜쥔 채 자기 쪽으로 강하게 끌어당기느라 상체가 뒤로 젖혀진, 힘이 실린 mid-action 동작.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "이현우가 찰리의 거대한 금속 팔을 한 손으로 꽉 움켜쥔 채 자기 쪽으로 강하게 끌어당기는 힘이 실린 동작.",
            "validator_reason": "'끌어당기는' 능동적 신체 접촉 동작을 상체가 뒤로 젖혀진 자세를 더해 힘의 방향을 보존한 mid-action 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "구도환이 이현우를 향해 양손바닥을 앞으로 내민 채 부드럽게 미소 짓는 안심시키는 얼굴.",
            "characters": [
              "구도환",
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "앰버가 고개를 아래로 살짝 기울인 채 구도환을 향해 옅은 미소를 짓는 평온한 표정.",
            "characters": [
              "앰버",
              "구도환"
            ],
            "based_on_beat": 3,
            "original_description": "앰버가 고개를 끄덕이며 구도환을 향해 옅은 미소를 짓는 평온한 표정.",
            "validator_reason": "연속 동작인 '고개를 끄덕이며 미소를 짓는'을 고개를 기울인 채 미소 짓는 단일 정지 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 20,
            "description": "이현우가 미간에 깊은 주름을 잡은 채 구도환을 향해 삿대질하는 분노한 자세.",
            "characters": [
              "이현우",
              "구도환"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 21,
            "description": "신부와 앰버가 눈을 크게 뜬 채 구도환을 바라보는 얼어붙은 구도.",
            "characters": [
              "신부",
              "앰버",
              "구도환"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 22,
            "description": "구도환이 당황한 표정으로 양손을 허공에 들어 올린 채 고개를 한쪽으로 강하게 돌려 멈춘 다급한 자세.",
            "characters": [
              "구도환"
            ],
            "based_on_beat": 3,
            "original_description": "구도환이 당황한 표정으로 양손을 허공에 세차게 저으며 고개를 젓는 다급한 동작.",
            "validator_reason": "반복적인 움직임인 '저으며 고개를 젓는'을 양손을 들고 고개를 돌린 단일 정지 자세로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 31,
        "scene_heading": "31. 관리사무소. - N",
        "shots": [
          {
            "shot_index": 1,
            "description": "어둠 속 환하게 불이 켜진 낡은 3층짜리 관리사무소 건물 외관.",
            "characters": [],
            "based_on_beat": 0,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "얼굴이 퉁퉁 붓고 피멍이 든 미연이 의자에 앉아 고통스러운 표정으로 앞을 응시하는 얼굴.",
            "characters": [
              "미연"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "박철진이 미연 앞의 의자에 비스듬히 앉아 턱을 치켜든 채 비릿하게 미소 짓는 거만한 구도.",
            "characters": [
              "박철진",
              "미연"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "미연이 미간을 깊게 찌푸린 채 박철진을 노려보며 억울한 듯 입술을 벌린 찰나.",
            "characters": [
              "미연",
              "박철진"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "박철진이 상체를 미연 쪽으로 불쑥 내민 채 눈을 부릅뜨고 매섭게 쏘아보는 위압적인 시선.",
            "characters": [
              "박철진",
              "미연"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "미연이 동공이 미세하게 떨리는 찰나, 입술을 꽉 깨문 불안하고 심란한 표정 클로즈업.",
            "characters": [
              "미연"
            ],
            "based_on_beat": 1,
            "original_description": "미연이 동공을 미세하게 떨며 입술을 꽉 깨문 불안하고 심란한 표정 클로즈업.",
            "validator_reason": "'떨며'라는 연속 동작을 변화 중인 한 찰나의 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "박철진의 수하 1이 안으로 열린 문손잡이를 잡은 채 한 발을 방 안으로 들이민 역동적인 자세.",
            "characters": [
              "수하 1"
            ],
            "based_on_beat": 2,
            "original_description": "박철진의 수하 1이 방문을 안으로 벌컥 열어젖히며 다급하게 들어서는 역동적인 찰나.",
            "validator_reason": "'열어젖히며 들어서는'의 두 연속 동작을 문을 열고 진입하는 방향성이 보존된 mid-action 정지 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "박철진이 수하 1을 향해 고개를 확 꺾은 채 미간을 구기고 입을 크게 벌려 고함치는 분노의 표정.",
            "characters": [
              "박철진",
              "수하 1"
            ],
            "based_on_beat": 2,
            "original_description": "박철진이 고개를 확 돌려 박철진의 수하 1을 향해 미간을 구기며 입을 크게 벌려 고함치는 분노의 표정.",
            "validator_reason": "'고개를 돌려'라는 시간 진행 표현을 '고개를 꺾은 채'의 고정된 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "박철진의 수하 1이 몸을 움츠린 채 박철진의 귓가로 상체를 바짝 숙인 상태로 속삭이는 자세.",
            "characters": [
              "수하 1",
              "박철진"
            ],
            "based_on_beat": 2,
            "original_description": "박철진의 수하 1이 몸을 움츠린 채 박철진의 귓가로 상체를 바짝 숙여 속삭이는 자세.",
            "validator_reason": "'숙여 속삭이는'의 동작 연결을 '숙인 상태로'라는 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "박철진이 눈썹을 번쩍 치켜올린 채 놀란 얼굴로 수하 1을 쳐다보는 찰나.",
            "characters": [
              "박철진",
              "수하 1"
            ],
            "based_on_beat": 2,
            "original_description": "박철진이 눈썹을 번쩍 치켜올리며 놀란 얼굴로 박철진의 수하 1을 쳐다보는 찰나.",
            "validator_reason": "'치켜올리며'라는 동작 연결어를 '치켜올린 채'의 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "미연이 두 눈을 동그랗게 뜬 채 안색이 하얗게 질린 당황한 표정 클로즈업.",
            "characters": [
              "미연"
            ],
            "based_on_beat": 2,
            "original_description": "미연이 두 눈을 동그랗게 뜨고 안색이 하얗게 질린 당황한 표정 클로즈업.",
            "validator_reason": "'뜨고'라는 시간 순서 연결어를 '뜬 채'의 고정 상태로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 32,
        "scene_heading": "32. 성당. 지하실 - N",
        "shots": [
          {
            "shot_index": 1,
            "description": "낡은 십자가가 걸린 지하실 안, 팔짱을 낀 이현우가 벽에 등을 기댄 채 구도환을 매섭게 노려보는 구도.",
            "characters": [
              "이현우",
              "구도환"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "구도환이 탁자 앞에 앉아 앰버와 신부를 향해 진지한 표정으로 손짓하는 자세.",
            "characters": [
              "구도환",
              "앰버",
              "신부"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "앰버가 찰리의 거대한 금속 몸통을 올려다보며 두 손을 모으고 눈을 반짝이는 환한 얼굴.",
            "characters": [
              "앰버",
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "찰리가 입가 금속 부품을 올린 채 두 어깨를 한껏 치켜올린 유쾌한 자세.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "찰리가 입가 금속 부품을 올린 채 두 어깨를 위아래로 들썩이는 유쾌한 동작.",
            "validator_reason": "'위아래로 들썩이는'이라는 반복 동작을 어깨를 치켜올린 고정된 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "찰리가 한 손에 낡은 라디오를 쥔 채 두 눈에 푸른빛을 켠 상태로 고개를 갸우뚱 기울인 얼굴.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "찰리가 한 손에 낡은 라디오를 쥔 채 두 눈의 푸른빛을 깜빡이며 고개를 갸우뚱하는 얼굴.",
            "validator_reason": "'깜빡이며'라는 빛의 변화와 '갸우뚱하는' 연속 동작을 불빛이 켜진 채 고개를 기울인 단일 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "구도환이 미간을 찌푸린 채 씁쓸한 미소를 지으며 고개를 살짝 떨군 표정.",
            "characters": [
              "구도환"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "이현우가 뒷발로 벽을 차 상체가 확 떨어진 채 손바닥을 앞으로 뻗어 강하게 거부하는 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "이현우가 벽에서 상체를 확 떼어내며 손바닥을 앞으로 뻗어 강하게 거부하는 찰나.",
            "validator_reason": "'떼어내며 뻗어'라는 연속 동작을 상체가 벽에서 떨어져 손바닥을 뻗고 있는 mid-action 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "앰버가 이현우 곁을 향해 한 발을 내디딘 채 턱을 치켜들고 다부진 눈빛을 쏘아보는 구도.",
            "characters": [
              "앰버",
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "앰버가 이현우 곁으로 다가서며 턱을 치켜들고 다부진 눈빛을 쏘아보는 구도.",
            "validator_reason": "'다가서며'라는 이동 동작을 걷는 중의 한 발을 내디딘 mid-action 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "활짝 열린 지하실 나무 문턱을 넘어 한 발이 허공에 뜬 채 숨을 헐떡이며 다급하게 뛰어 들어오는 신부의 찰나.",
            "characters": [
              "신부"
            ],
            "based_on_beat": 4,
            "original_description": "지하실 나무 문이 벌컥 열리며 숨을 헐떡이는 신부가 다급하게 뛰어 들어오는 공중의 찰나.",
            "validator_reason": "'열리며 뛰어 들어오는' 연속 동작을 문이 열린 채 뛰어들어오다 발이 허공에 뜬 mid-action 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "신부가 한 손에 든 검은색 손전등의 빛을 벽 쪽으로 쏘며 반대편을 손가락으로 가리키는 자세.",
            "characters": [
              "신부"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "이현우가 신부의 양어깨를 두 손으로 단단히 움켜쥔 채 절박한 눈빛으로 호소하는 얼굴 클로즈업.",
            "characters": [
              "이현우",
              "신부"
            ],
            "based_on_beat": 4,
            "original_description": "이현우가 신부의 양어깨를 두 손으로 단단히 움켜쥐며 절박한 눈빛으로 호소하는 얼굴 클로즈업.",
            "validator_reason": "'움켜쥐며'라는 동작 진행을 두 손으로 어깨를 단단히 움켜쥔 결과 상태의 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "신부가 이현우의 눈을 마주 보며 결연한 표정으로 턱을 아래로 당긴 찰나.",
            "characters": [
              "신부",
              "이현우"
            ],
            "based_on_beat": 4,
            "original_description": "신부가 이현우의 눈을 마주 보며 결연한 표정으로 고개를 끄덕이는 찰나.",
            "validator_reason": "'끄덕이는'이라는 움직임 동작을 턱을 아래로 당겨 동의를 표하는 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "어두운 지하실 문 밖을 향해 한쪽 발로 바닥을 차고 맹렬히 뛰어오른 이현우의 역동적인 뒷모습.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 4,
            "original_description": "이현우가 몸을 돌려 어두운 지하실 문 밖을 향해 맹렬히 달려나가는 역동적인 뒷모습.",
            "validator_reason": "'몸을 돌려 달려나가는'이라는 연속 동작을 문 밖을 향해 바닥을 차고 나가는 mid-action 순간으로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 33,
        "scene_heading": "33. 헬기 + 성당 + 난민촌 (교차) - N",
        "shots": [
          {
            "shot_index": 1,
            "description": "어두운 밤하늘 위, 거대한 전투 헬기가 눈부신 서치라이트를 난민촌 아래로 강하게 쏘아 내리는 웅장한 전경.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "헬기 조수석에 앉은 박철진이 창문 밖 아래쪽을 향해 턱을 치켜들고 매섭게 내려다보는 시선.",
            "characters": [
              "박철진"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "낡은 승합차 운전석에서 쿠마가 땀범벅이 된 얼굴로 핸들을 꽉 쥔 채 앞을 쏘아보는 긴장된 표정.",
            "characters": [
              "쿠마"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "헬기 아래로 낡은 차량 행렬이 흙먼지를 일으키며 제방 도로를 질주하는 조감 구도.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "헬기 안의 박철진의 수하 1이 태블릿 화면을 쳐다본 채 입을 크게 벌려 다급하게 보고하는 얼굴.",
            "characters": [
              "수하 1"
            ],
            "based_on_beat": 1,
            "original_description": "헬기 안의 박철진의 수하 1이 태블릿 화면을 쳐다보며 입을 크게 벌려 다급하게 보고하는 얼굴.",
            "validator_reason": "시간 연결어 '~며'를 제거하고 화면을 보는 상태와 입을 벌린 보고 상태의 동시 고정 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "성당 안, 소총을 든 아시아계 민병대원들이 기둥 뒤에서 앞을 겨냥한 채 흩어지듯 각자의 방향으로 발을 내딛은 위압적인 전신.",
            "characters": [
              "아시아계 민병대원들"
            ],
            "based_on_beat": 2,
            "original_description": "성당 안, 소총을 든 아시아계 민병대원들이 기둥 뒤에서 앞을 겨냥하며 흩어지는 위압적인 전신.",
            "validator_reason": "'겨냥하며 흩어지는'의 시간 연결과 이동 동작을 발을 내딛은 mid-action 정지 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "아시아계 민병대원 하나가 바닥의 낡은 나무 지하실 문을 위로 젖혀 든 채 다른 한 손을 번쩍 치켜들고 있는 찰나.",
            "characters": [
              "아시아계 민병대원"
            ],
            "based_on_beat": 2,
            "original_description": "아시아계 민병대원 하나가 바닥의 낡은 나무 지하실 문을 젖혀 올리며 손을 번쩍 치켜든 찰나.",
            "validator_reason": "시간 진행을 뜻하는 '올리며'를 '젖혀 든 채'의 동시 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "철제 맨홀 뚜껑이 위로 확 들린 채 그 틈새로 이현우의 두 눈이 바깥을 살피는 구도.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "닫혀 있던 철제 맨홀 뚜껑이 위로 확 들리며 이현우의 두 눈이 바깥을 살피는 구도.",
            "validator_reason": "시간 연결어 '들리며'를 '들린 채'의 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "경비병들이 탄 트럭이 흙먼지를 일으키며 멀어진 배경 앞, 이현우가 두 손으로 맨홀 테두리를 짚고 흙바닥 틈새로 상체를 반쯤 뺀 역동적인 찰나.",
            "characters": [
              "이현우",
              "경비병들"
            ],
            "based_on_beat": 3,
            "original_description": "경비병들이 탄 트럭이 굉음을 내며 멀어지는 흙바닥 틈새로 이현우가 맨홀에서 상체를 훌쩍 빼내는 역동적인 찰나.",
            "validator_reason": "트럭이 멀어지는 동작과 상체를 빼내는 두 연속 동작을 배경과 상체를 반쯤 뺀 정지 자세(mid-action)로 압축함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "이현우가 환하게 불이 켜진 관리사무소의 외부 계단을 향해 상체를 웅크린 채 한쪽 뒷발로 땅을 강하게 밀어내며 전력 질주하는 뒷모습.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "이현우가 환하게 불이 켜진 관리사무소의 외부 계단을 향해 상체를 웅크린 채 전력 질주하는 뒷모습.",
            "validator_reason": "이동 동작 '전력 질주하는'을 뒷발로 밀어내는 mid-action 정지 자세로 구체화하여 추진력을 보존함.",
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "어두운 하늘을 뚫고 수십 대의 낡은 자폭 드론들이 인공제방 벽면을 향해 벌떼처럼 맹렬히 날아드는 공중 구도.",
            "characters": [],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "낡은 드론들이 금이 간 거대한 콘크리트 제방 벽면에 다닥다닥 달라붙어 있는 위태로운 상태의 클로즈업.",
            "characters": [],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "드론들이 일제히 폭발하며 거대한 붉은 불기둥과 콘크리트 파편이 사방으로 튀어 오르는 파괴적인 순간.",
            "characters": [],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "무너져 내린 제방 틈새로 검고 거친 바닷물이 폭포수처럼 쏟아져 들어오며 중장비들을 거세게 덮치는 재난 구도.",
            "characters": [],
            "based_on_beat": 4,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 34,
        "scene_heading": "34. 관리사무소 안 - N",
        "shots": [
          {
            "shot_index": 1,
            "description": "관리사무소 3층 복도, 이현우가 굳게 닫힌 철문 손잡이를 두 손으로 거칠게 잡아당기며 팔에 힘이 들어간 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "관리사무소 3층 복도, 이현우가 굳게 닫힌 철문 손잡이를 두 손으로 거칠게 흔들어 당기는 힘이 실린 찰나.",
            "validator_reason": "'흔들어 당기는'이라는 왕복 및 연속 동작을 한 방향으로 강하게 잡아당기는 단일 정지 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "이현우가 어깨 위로 번쩍 치켜든 붉은색 소화기 바닥이 낡은 철문 손잡이에 맹렬히 내리꽂히는 타격의 순간.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "찌그러진 손잡이가 바닥에 떨어진 가운데, 철문이 방 안쪽으로 활짝 열려 젖혀진 구도.",
            "characters": [],
            "based_on_beat": 1,
            "original_description": "찌그러진 손잡이가 바닥으로 튕겨 나가며 철문이 방 안쪽으로 활짝 열려 젖혀진 구도.",
            "validator_reason": "손잡이가 튕겨 나가는 진행형 동작과 문이 활짝 열린 완료 상태가 섞여 있어, 손잡이가 바닥에 떨어진 결과 상태로 통일함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "문 안쪽에 서 있던 미연이 눈물범벅인 얼굴로 이현우를 향해 두 팔을 뻗는 찰나.",
            "characters": [
              "미연",
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "이현우가 미연의 어깨를 두 팔로 단단히 감싸 안으며 미간을 찌푸린 애절한 얼굴.",
            "characters": [
              "이현우",
              "미연"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "이현우가 미연의 피멍 든 얼굴 상처를 바라보며 두 눈을 크게 뜬 충격 받은 표정.",
            "characters": [
              "이현우",
              "미연"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "복도 천장에 매달린 붉은색 경광등이 눈부신 섬광을 내뿜으며 가장 밝게 켜진 찰나.",
            "characters": [],
            "based_on_beat": 2,
            "original_description": "복도 천장에 매달린 붉은색 경광등이 눈부신 섬광을 내뿜으며 요란하게 번쩍이는 찰나.",
            "validator_reason": "'번쩍이는'이라는 빛의 점멸 변화 상태를 섬광이 가장 밝게 켜진 단일 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "이현우가 미연의 손목을 꽉 움켜쥔 채 열린 방 밖을 향해 몸을 절반쯤 돌려 옷자락이 펄럭이는 역동적인 뒷모습.",
            "characters": [
              "이현우",
              "미연"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 미연의 손목을 꽉 움켜쥔 채 열린 방 밖을 향해 몸을 휙 돌리는 역동적인 뒷모습.",
            "validator_reason": "'돌리는'이라는 회전 동작을 몸을 절반쯤 돌려 겉옷이 펄럭이는 mid-action 정지 자세로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 35,
        "scene_heading": "35. 난민촌- N",
        "shots": [
          {
            "shot_index": 1,
            "description": "어두운 밤, 낡은 난민촌 거리 위로 수많은 아시아계 난민들이 입을 크게 벌리고 양손으로 머리를 감싸 쥔 채 겁에 질려 얼어붙은 구도.",
            "characters": [
              "아시아계 난민들"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "난민촌 거리에 거대하게 밀려든 검은 바닷물이, 다급히 등을 돌린 채 한 발을 공중에 띄운 질주 자세인 아시아계 난민들의 뒤를 집어삼키기 직전의 맹렬한 찰나.",
            "characters": [
              "아시아계 난민들"
            ],
            "based_on_beat": 2,
            "original_description": "난민촌 거리에 거대하게 밀려든 검은 바닷물이 다급히 등을 돌린 채 내달리는 아시아계 난민들의 뒤를 집어삼키기 직전의 맹렬한 찰나.",
            "validator_reason": "연속 이동 동작인 '내달리는'을 동적 정지 규칙(mid-action freeze)에 따라 '한 발을 공중에 띄운 질주 자세인'으로 수정하여 한 순간으로 고정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 36,
        "scene_heading": "36. 맨홀 하수도 속 - N",
        "shots": [
          {
            "shot_index": 1,
            "description": "어둡고 축축한 맨홀 하수도 안, 찰리가 두 다리에 맹렬히 힘을 주고 바닥에 우뚝 멈춰 선 역동적인 구도.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "앰버, 구도환, 신부가 우뚝 선 찰리의 거대한 금속 뒷모습을 향해 두 눈을 동그랗게 뜬 놀란 얼굴.",
            "characters": [
              "앰버",
              "구도환",
              "신부",
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "어두운 하수도 사방에서 거칠게 쏟아져 들어온 거대한 바닷물 줄기가 구도환의 상체를 맹렬히 강타하는 타격의 순간.",
            "characters": [
              "구도환"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "거센 바닷물에 휩쓸린 찰리, 앰버, 구도환, 신부의 몸이 하수도 통로를 따라 허공에 붕 뜬 채 뒤엉킨 역동적인 찰나.",
            "characters": [
              "찰리",
              "앰버",
              "구도환",
              "신부"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "하수도 밖 검은 바닷물 위로 튕겨 나온 앰버가 턱을 하늘로 치켜들고 고통스럽게 입을 벌린 위태로운 얼굴.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "거친 바닷물 속에서 찰리의 굵은 금속 손이 앰버의 얇은 손을 빈틈없이 꽉 틀어쥔 손끝 클로즈업.",
            "characters": [
              "찰리",
              "앰버"
            ],
            "based_on_beat": 2,
            "original_description": "거친 바닷물 속에서 찰리의 굵은 금속 손이 허우적거리는 앰버의 얇은 손을 빈틈없이 꽉 틀어쥔 손끝 클로즈업.",
            "validator_reason": "연속/반복 동작인 '허우적거리는' 표현을 제거하고 꽉 틀어쥔 고정 상태만 남김.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 37,
        "scene_heading": "37. 관리사무소 안- N",
        "shots": [
          {
            "shot_index": 1,
            "description": "관리사무소 건물 복도, 이현우와 미연이 유리 창문 밖을 내다보며 입을 반쯤 벌린 채 얼어붙은 구도.",
            "characters": [
              "이현우",
              "미연"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "유리 창문 너머로 칠흑같이 검은 거대한 해일이 관리사무소 건물을 향해 무서운 기세로 솟구쳐 오른 위압적인 전경.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "이현우가 옆에 선 미연을 향해 동공을 크게 확장한 채 입을 꾹 다문 굳은 표정.",
            "characters": [
              "이현우",
              "미연"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 옆에 선 미연을 향해 동공을 크게 확장하며 입을 꾹 다문 굳은 표정.",
            "validator_reason": "'확장하며'라는 동작 진행 표현을 '확장한 채'의 고정된 시각적 결과 상태로 수정하여 단일 찰나로 묘사함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "미연이 이현우의 상체를 두 팔로 꽉 끌어안은 채 자신의 가슴 쪽으로 단단히 밀착시킨 찰나.",
            "characters": [
              "미연",
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "미연이 이현우의 상체를 두 팔로 꽉 끌어안으며 자신의 가슴 쪽으로 단단히 밀착시킨 찰나.",
            "validator_reason": "'끌어안으며'라는 동작 진행을 '끌어안은 채'의 결과 상태로 변경하여 밀착시킨 고정 자세와 시점을 일치시킴.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "거대한 해일의 엄청난 수압에 관리사무소 복도의 유리 창문이 산산조각 나며 사방으로 파편이 튀는 파괴적인 순간.",
            "characters": [],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "허공으로 튀어 오르는 날카로운 유리 파편과 거친 바닷물이 서로를 껴안은 미연과 이현우를 완전히 덮치기 직전의 찰나.",
            "characters": [
              "미연",
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 38,
        "scene_heading": "38. 바다 위 - 동틀무렵",
        "shots": [
          {
            "shot_index": 1,
            "description": "동틀 무렵의 바다 위, 물에 떠 있는 낡은 철제 컨테이너 판자 위에 누운 이현우가 번쩍 눈을 뜬 얼굴 클로즈업.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "바다 저편에 떠 있는 다른 컨테이너 판자 위에 미연이 피를 흘린 채 미동 없이 쓰러져 있는 구도.",
            "characters": [
              "미연"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "이현우가 미연이 쓰러진 컨테이너 판자 위로 상체를 맹렬히 끌어올리는 역동적인 찰나.",
            "characters": [
              "이현우",
              "미연"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "이현우가 복부에서 붉은 피를 쏟아내는 미연의 손을 두 손으로 꽉 움켜쥔 손끝 클로즈업.",
            "characters": [
              "이현우",
              "미연"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "미연이 이현우를 향해 옅은 미소를 지은 채 눈을 반쯤 감은 평온한 얼굴.",
            "characters": [
              "미연",
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "미연이 이현우를 향해 옅은 미소를 지으며 눈꺼풀을 천천히 내리깐 평온한 얼굴.",
            "validator_reason": "'천천히 내리깐'이라는 변화 중인 상태를 '눈을 반쯤 감은' 고정된 찰나의 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "눈을 감은 미연의 상체를 꽉 끌어안은 이현우가 하늘을 향해 목에 핏대를 세우며 포효하는 광기 어린 표정.",
            "characters": [
              "이현우",
              "미연"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "어두운 컨테이너 내부, 이리저리 널브러진 낡은 상자들 틈에 찰리와 앰버가 웅크려 앉아 잔뜩 겁에 질린 구도.",
            "characters": [
              "찰리",
              "앰버"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "거친 바다 위, 찰리가 낡은 컨테이너 문을 바깥으로 강하게 밀어 여는 힘이 실린 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "컨테이너 위로 올라선 찰리가 아래쪽의 앰버를 향해 굵은 금속 손을 뻗은 채 단단히 맞잡고 있는 손끝 클로즈업.",
            "characters": [
              "찰리",
              "앰버"
            ],
            "based_on_beat": 4,
            "original_description": "컨테이너 위로 올라선 찰리가 아래쪽의 앰버를 향해 굵은 금속 손을 뻗어 단단히 맞잡은 손끝 클로즈업.",
            "validator_reason": "'뻗어 맞잡은'이라는 순차적 동작의 뉘앙스를 '뻗은 채 맞잡고 있는' 고정 상태로 명확히 함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "컨테이너 위에 선 앰버가 두 팔을 허공으로 번쩍 치켜든 채 환하게 웃고 있는 얼굴.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 5,
            "original_description": "컨테이너 위에 선 앰버가 두 팔을 허공으로 번쩍 치켜들며 환하게 웃는 얼굴.",
            "validator_reason": "'치켜들며'라는 진행 동작을 '치켜든 채'라는 고정된 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "미연을 안고 웅크린 이현우의 굽은 등짝을 향해 앰버가 널빤지로 바닷물을 세차게 젓는 힘이 실린 동작.",
            "characters": [
              "이현우",
              "앰버",
              "미연"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "이현우 옆에 선 채 피투성이인 미연의 얼굴을 바라보며 두 눈이 크게 확장된 앰버의 충격받은 표정 클로즈업.",
            "characters": [
              "앰버",
              "이현우",
              "미연"
            ],
            "based_on_beat": 5,
            "original_description": "이현우 옆에 다가간 앰버가 피투성이인 미연의 얼굴을 발견하고 두 눈이 크게 확장된 충격받은 표정 클로즈업.",
            "validator_reason": "'다가간', '발견하고' 등 시간 진행에 따른 순차적 행동을 제거하고 얼굴을 바라보며 충격받은 단일 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "앰버가 바닥에 주저앉은 채 두 주먹을 꽉 쥐고 오열하는 절규의 얼굴.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "찰리가 두 어깨를 아래로 푹 떨군 채 눈가의 푸른빛을 잃고 앰버와 이현우를 안타깝게 내려다보는 시무룩한 자태.",
            "characters": [
              "찰리",
              "앰버",
              "이현우"
            ],
            "based_on_beat": 6,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 39,
        "scene_heading": "39. 수몰된 난민촌 몽타주 - D",
        "shots": [
          {
            "shot_index": 1,
            "description": "거친 바닷물 아래로 완전히 수몰되어 지붕과 쓰레기 더미만 곳곳에 떠 있는 난민촌의 참혹한 아침 전경.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "물에 잠긴 난민촌 바다 위, 페드로와 구도환이 낡은 널빤지 조각에 간신히 매달려 탈진한 채 눈을 감은 위태로운 구도.",
            "characters": [
              "페드로",
              "구도환"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "물에 반쯤 잠긴 낡은 담벼락 위에서 아시아계 난민 남성이 수면 아래 난민의 팔을 움켜쥐고 위로 힘껏 끌어당기는 역동적인 찰나.",
            "characters": [
              "아시아계 난민 남성",
              "수면 아래 난민"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "하늘 위 경찰 헬리콥터가 공중에서 눈부신 서치라이트 불빛을 수몰된 난민촌 곳곳으로 맹렬히 쏘아 내리는 웅장한 외관.",
            "characters": [],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "서치라이트 불빛을 피해 젖은 도심 골목 사방으로 몸을 기울이고 한 발을 허공에 뗀 채 내달리는 아시아계 난민 무리의 다급한 뒷모습.",
            "characters": [
              "아시아계 난민 무리"
            ],
            "based_on_beat": 2,
            "original_description": "서치라이트 불빛을 피해 아시아계 난민 무리가 젖은 도심 골목 사방으로 다급하게 흩어지며 내달리는 뒷모습.",
            "validator_reason": "흩어지며 내달리는 이동 동작을 한 발을 뗀 mid-stride 상태로 고정하여 추진력을 보존함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "검은 고무보트를 탄 무장한 아시아계 민병대원이 긴 나무 막대기로 바다에 떠 있는 엎어진 시체의 어깨를 꾹 누르는 찰나.",
            "characters": [
              "아시아계 민병대원",
              "시체"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "나무 막대기에 밀린 창백한 시체의 얼굴이 수면 위로 반쯤 뒤집혀 돌아가는 중인 클로즈업.",
            "characters": [
              "시체"
            ],
            "based_on_beat": 3,
            "original_description": "나무 막대기에 밀린 창백한 시체의 얼굴이 수면 위로 휙 뒤집히는 클로즈업.",
            "validator_reason": "뒤집히는 변화 상태를 수면 위로 반쯤 돌아가는 중인 한 순간으로 고정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 40,
        "scene_heading": "40. 난민촌 외곽 –D",
        "shots": [
          {
            "shot_index": 1,
            "description": "물기가 마르지 않은 텅 빈 도심 외곽 도로 위, 이현우, 앰버, 찰리가 도심 쪽을 향해 몸을 기울이고 한 발이 지면에서 막 떨어진 mid-stride 자세.",
            "characters": [
              "이현우",
              "앰버",
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "물기가 마르지 않은 텅 빈 도심 외곽 도로 위를 이현우, 앰버, 찰리가 도심 쪽을 향해 전력으로 내달리는 역동적인 찰나.",
            "validator_reason": "내달리는 연속 이동 동작을 추진력과 방향이 보존된 mid-action 정지 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "제자리에 우뚝 선 앰버가 눈물범벅이 된 얼굴로 난민촌 쪽을 바라보는 애절한 시선.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "이현우가 미간에 굵은 주름을 잡은 채 앰버의 얇은 팔목을 거칠게 쥐고, 앞을 향해 체중을 실어 당긴 상태로 힘이 들어간 자세.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 3,
            "original_description": "이현우가 미간에 굵은 주름을 잡은 채 앰버의 얇은 팔목을 거칠게 움켜쥐고 앞을 향해 맹렬히 잡아당기는 힘이 실린 찰나.",
            "validator_reason": "잡아당기는 동작을 힘의 방향과 능동적 신체 역학이 드러나는 고정된 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "이현우의 힘에 이끌려 앞으로 확 쏠린 앰버의 눈가에서 투명한 눈물이 허공으로 흩날리는 순간.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "경찰이 없는 텅 빈 거리 건너편에 불이 꺼진 낡은 무인 점포 입구가 서늘하게 서 있는 풍경.",
            "characters": [],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "이현우가 앰버의 팔을 꽉 쥔 채 찰리와 함께 무인 점포 쪽으로 상체를 숙이고 지면을 박차는 mid-action 상태의 뒷모습.",
            "characters": [
              "이현우",
              "앰버",
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "이현우가 앰버의 팔을 꽉 잡고 찰리와 함께 무인 점포 쪽으로 다급히 몸을 피하는 날렵한 뒷모습.",
            "validator_reason": "다급히 몸을 피하는 이동 동작을 방향성과 다급한 기색이 보존된 mid-action 정지 자세로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 41,
        "scene_heading": "무인점포 안 – D",
        "shots": [
          {
            "shot_index": 1,
            "description": "이현우가 유리문을 꽉 쥔 채 무인점포 안으로 앞발을 깊게 내딛는 역동적인 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "이현우가 신발을 든 손을 뒤에 선 앰버를 향해 뻗고 있는 손끝.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 낡은 진열대 위에서 신발을 집어 들어 뒤에 선 앰버를 향해 뻗은 손끝.",
            "validator_reason": "'집어 들어 뻗은'의 순차 동작을 신발을 들고 뻗은 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "이현우가 더플백과 백팩을 양손에 꽉 쥔 채 어깨 위로 번쩍 들어 올리는 힘이 실린 자세.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "이현우가 진열대의 통조림 캔들을 가방 안으로 다급하게 쓸어 담는 손끝 클로즈업.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "이현우가 의약품 코너 진열대에서 작은 약병을 두 손가락으로 빈틈없이 꽉 움켜쥔 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "찰리가 두 눈에 푸른빛을 낸 채 진열대 위 귀여운 동물 인형을 향해 굵은 금속 손가락을 조심스레 뻗은 구도.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "앰버가 찰리를 향해 양손을 가슴 앞에 모은 채 눈을 동그랗게 뜨고 미소 짓는 얼굴.",
            "characters": [
              "앰버",
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "현금인출기 앞에 선 이현우가 찰리 쪽으로 고개를 돌려 턱을 치켜든 굳은 표정.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "현금인출기 앞에 선 이현우가 찰리 쪽으로 고개를 확 돌리며 턱을 치켜든 굳은 표정.",
            "validator_reason": "'돌리며 치켜든'의 연속 동작을 고개를 돌린 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "찰리의 입가 금속 부품이 위로 올라간 상태에서, 두 주먹을 현금인출기를 향해 불쑥 내민 펀치 자세.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "찰리의 입가 금속 부품이 위로 올라가며, 두 주먹을 현금인출기를 향해 불쑥 내민 펀치 자세.",
            "validator_reason": "'올라가며 내민'의 동시 진행 동작을 금속 부품이 올라간 결과 상태와 펀치 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "앰버가 양손 바닥을 앞으로 쫙 펴 내민 채 미간을 찌푸린 다급한 얼굴.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "찰리의 거대한 금속 주먹이 현금인출기 전면 패널을 맹렬히 뚫고 들어간 파괴적인 타격의 순간.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "부서진 현금인출기 구멍 사이로 지폐와 동전들이 바닥을 향해 우수수 쏟아져 내리는 찰나.",
            "characters": [],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "이현우가 입을 반쯤 벌린 채 허공에서 쏟아지는 지폐들을 벌려진 가방 안으로 거칠게 받아내는 손끝.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "찰리가 두 어깨 중 한쪽이 위로 올라간 채 푸른 안광을 반짝이는 유쾌한 자태.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "찰리가 두 어깨를 위아래로 들썩이며 푸른 안광을 반짝이는 유쾌한 자태.",
            "validator_reason": "'위아래로 들썩이며'의 반복 동작을 어깨가 올라간 순간의 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "이현우가 낡은 모포를 찰리의 거대한 금속 몸통을 향해 맹렬히 집어 던진 공중의 찰나.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "찰리가 덮어쓴 모포 자락을 두 손으로 움켜쥔 채 눈가의 푸른빛이 흐려진 시무룩한 표정.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "점포의 유리문이 안으로 활짝 열려 젖혀진 채 바깥 풍경이 고스란히 보이는 찰나.",
            "characters": [],
            "based_on_beat": 3,
            "original_description": "점포의 유리문이 둔탁한 소리와 함께 안으로 활짝 열려 젖혀지며 바깥 풍경이 밀려드는 찰나.",
            "validator_reason": "'열려 젖혀지며 밀려드는'의 인과적 연속 변화를 문이 젖혀져 풍경이 보이는 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "이현우와 앰버가 두 눈을 동그랗게 뜬 채 진열대 아래로 상체를 확 웅크린 날렵한 자세.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "이현우가 우두커니 선 찰리의 굵은 금속 팔을 양손으로 꽉 움켜쥐고 진열대 뒤로 강하게 잡아당기는 힘이 실린 구도.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 20,
            "description": "진열대 너머 유리문 앞, 꽁지머리를 한 라울이 우뚝 멈춰 선 뒷모습.",
            "characters": [
              "라울"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 21,
            "description": "라울이 진열대 쪽으로 고개를 튼 채 입을 크게 벌리고 환하게 웃는 얼굴.",
            "characters": [
              "라울"
            ],
            "based_on_beat": 3,
            "original_description": "라울이 진열대 쪽으로 고개를 확 돌리며 입을 크게 벌리고 환하게 웃는 얼굴.",
            "validator_reason": "'고개를 확 돌리며 웃는'의 연속 동작을 고개를 돌린 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 22,
            "description": "앰버가 달려들어 라울의 품에 와락 안기며 부딪히는 역동적인 찰나.",
            "characters": [
              "앰버",
              "라울"
            ],
            "based_on_beat": 3,
            "original_description": "앰버가 진열대 뒤에서 튀어나와 라울의 품에 와락 안기는 역동적인 찰나.",
            "validator_reason": "'튀어나와 안기는'의 순차 동작을 품에 안기는 능동적 접촉의 mid-impact 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 23,
            "description": "찰리가 진열대 모퉁이 위로 둥근 금속 머리를 쓱 내민 채 두 눈의 푸른빛이 흔들리는 구도.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "찰리가 진열대 모퉁이 위로 둥근 금속 머리를 쓱 내민 채 두 눈의 푸른빛을 깜빡이는 구도.",
            "validator_reason": "'깜빡이는'의 반복 변화를 빛이 포착된 한 순간의 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 24,
            "description": "라울이 양손으로 앰버의 어깨를 밀어내듯 짚은 채 눈썹을 위로 치켜올리며 의아한 표정으로 쳐다보는 시선.",
            "characters": [
              "라울",
              "앰버"
            ],
            "based_on_beat": 3,
            "original_description": "라울이 앰버를 살짝 떼어내고 눈썹을 위로 치켜올리며 의아한 표정으로 쳐다보는 시선.",
            "validator_reason": "'떼어내고 쳐다보는'의 순차 동작을 어깨를 짚고 쳐다보는 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 25,
            "description": "앰버가 눈에 눈물이 맺힌 채 입술을 꽉 깨물고 고개를 푹 숙인 심란한 얼굴 클로즈업.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 26,
            "description": "라울의 얼굴에 웃음기가 사라진 채 두 눈동자가 크게 확장된 충격받은 표정.",
            "characters": [
              "라울"
            ],
            "based_on_beat": 3,
            "original_description": "라울의 얼굴에서 웃음기가 사라지며 두 눈동자가 크게 확장된 충격받은 표정.",
            "validator_reason": "'사라지며 확장된'의 상태 변화 과정을 웃음기가 사라진 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 27,
            "description": "이현우가 라울을 향해 턱을 살짝 내린 채 단호한 표정으로 가방 끈을 꽉 움켜쥔 찰나.",
            "characters": [
              "이현우",
              "라울"
            ],
            "based_on_beat": 4,
            "original_description": "이현우가 라울을 향해 고개를 끄덕이며 단호한 표정으로 가방 끈을 꽉 움켜쥔 찰나.",
            "validator_reason": "'고개를 끄덕이며'의 동작 진행을 턱을 내린 고정 상태로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 42,
        "scene_heading": "난민촌 입구 – N",
        "shots": [
          {
            "shot_index": 1,
            "description": "어두운 흙바닥에 놓인 검은 보디백 지퍼를 박철진이 아래로 맹렬히 잡아당기는 손끝 클로즈업.",
            "characters": [
              "박철진"
            ],
            "based_on_beat": 1,
            "original_description": "어두운 흙바닥에 놓인 검은 보디백 지퍼를 박철진이 아래로 맹렬히 잡아당겨 여는 손끝 클로즈업.",
            "validator_reason": "연속 동작(잡아당겨 여는)을 잡아당기는 한 순간의 동작으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "박철진이 보디백 안의 창백한 구도환의 시체를 향해 턱을 치켜들고 무심하게 내려다보는 시선.",
            "characters": [
              "박철진",
              "구도환"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "박철진의 수하 1이 박철진의 곁에 선 채 허리를 살짝 굽히고 입술을 벌린 굳은 표정.",
            "characters": [
              "수하 1",
              "박철진"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "진흙탕 앞에 멈춰 선 검은 세단의 활짝 열린 뒷문 밖으로 윤성찬의 뾰족한 지팡이 끝이 바닥에 푹 꽂힌 찰나.",
            "characters": [
              "윤성찬"
            ],
            "based_on_beat": 1,
            "original_description": "진흙탕 앞에 멈춰 선 검은 세단 뒷문이 열리며 윤성찬의 뾰족한 지팡이 끝이 바닥에 푹 꽂히는 찰나.",
            "validator_reason": "두 가지 동작(문이 열리며 꽂히는)을 문이 열린 결과 상태와 지팡이가 꽂힌 단일 순간으로 통합함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "윤성찬이 지팡이 끝에 묻은 진흙을 미간을 찌푸린 채 혐오스럽게 내려다보는 시선.",
            "characters": [
              "윤성찬"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "윤성찬이 하얀 손수건으로 자신의 코끝을 빈틈없이 꽉 틀어막은 클로즈업.",
            "characters": [
              "윤성찬"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "박철진이 윤성찬을 향해 비릿하게 입꼬리를 올린 채 거만하게 턱을 치켜든 위압적인 구도.",
            "characters": [
              "박철진",
              "윤성찬"
            ],
            "based_on_beat": 1,
            "original_description": "박철진이 윤성찬을 향해 비릿하게 입꼬리를 올리며 거만하게 턱을 치켜든 위압적인 구도.",
            "validator_reason": "시간 연결어(~하며)를 동시 고정 상태(~한 채)로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "윤성찬이 박철진을 향해 눈을 부릅뜨고 매섭게 쏘아붙이는 분노한 얼굴.",
            "characters": [
              "윤성찬",
              "박철진"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "박철진이 두 팔을 양옆으로 살짝 벌린 채 여유롭게 허리를 굽힌 가식적인 자세.",
            "characters": [
              "박철진"
            ],
            "based_on_beat": 2,
            "original_description": "박철진이 두 팔을 양옆으로 살짝 벌린 채 여유롭게 굽실거리는 가식적인 자세.",
            "validator_reason": "반복 동작(굽실거리는)을 정지된 한 순간의 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "박철진이 열린 자동차 문을 한 손으로 꽉 틀어쥔 채 차에 타려는 윤성찬을 막아선 찰나.",
            "characters": [
              "박철진",
              "윤성찬"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "박철진이 윤성찬의 귓가로 상체를 바짝 숙인 채 비열하게 웃는 얼굴 클로즈업.",
            "characters": [
              "박철진",
              "윤성찬"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "윤성찬이 두 눈을 번쩍 치켜뜬 채 이마에 핏대를 세운 격노한 표정.",
            "characters": [
              "윤성찬"
            ],
            "based_on_beat": 2,
            "original_description": "윤성찬이 두 눈을 번쩍 치켜뜨며 이마에 핏대를 세운 격노한 표정.",
            "validator_reason": "시간 연결어(~뜨며)를 고정된 상태(~뜬 채)로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "박철진이 닫힌 자동차 창문을 손등으로 치는 순간 눈웃음 짓는 찰나.",
            "characters": [
              "박철진"
            ],
            "based_on_beat": 2,
            "original_description": "박철진이 닫힌 자동차 창문을 손등으로 툭툭 치며 눈웃음 짓는 찰나.",
            "validator_reason": "반복 동작(툭툭 치며)을 한 번 치는 타격의 단일 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "멀어지는 세단의 붉은 후미등 불빛 아래, 박철진의 입꼬리가 굳은 채 매서운 눈빛을 뿜어내는 얼굴.",
            "characters": [
              "박철진"
            ],
            "based_on_beat": 2,
            "original_description": "멀어지는 세단의 붉은 후미등 불빛 아래, 박철진의 입꼬리가 굳어지며 눈빛이 매섭게 돌변하는 얼굴.",
            "validator_reason": "진행형 상태 변화(굳어지며 돌변하는)를 변화가 완료된 한 찰나의 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "박철진의 수하 1이 박철진을 향해 고개를 옆으로 기울인 채 의아한 표정을 짓는 구도.",
            "characters": [
              "수하 1",
              "박철진"
            ],
            "based_on_beat": 2,
            "original_description": "박철진의 수하 1이 박철진을 향해 고개를 갸우뚱하며 의아한 표정을 짓는 구도.",
            "validator_reason": "시간 연결 및 동작(갸우뚱하며)을 고정된 정지 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "박철진이 멀어지는 차량 쪽을 향해 두 주먹을 꽉 쥔 채 눈을 부릅뜬 야욕 가득한 시선.",
            "characters": [
              "박철진"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "무전기를 든 아시아계 민병대원이 박철진을 향해 입을 크게 벌린 채 다급하게 외치는 찰나.",
            "characters": [
              "아시아계 민병대원",
              "박철진"
            ],
            "based_on_beat": 3,
            "original_description": "무전기를 든 아시아계 민병대원이 박철진을 향해 입을 크게 벌려 다급하게 외치는 찰나.",
            "validator_reason": "연속된 동작(벌려 외치는)을 고정된 결과 상태(~벌린 채)로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "박철진이 뻣뻣하게 선 채 동공이 크게 확장되고 안색이 하얗게 질린 당황한 표정 클로즈업.",
            "characters": [
              "박철진"
            ],
            "based_on_beat": 3,
            "original_description": "박철진이 뻣뻣하게 선 채 동공을 크게 확장하며 안색이 하얗게 질린 당황한 표정 클로즈업.",
            "validator_reason": "진행 중인 변화(확장하며)를 고정된 상태 묘사로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 43,
        "scene_heading": "국방장관 집무실 + 박철진의 사무실 안 (교차)",
        "shots": [
          {
            "shot_index": 1,
            "description": "화려한 집무실 안, 국방장관이 한 손에 전화기를 든 채 거만하게 턱을 괸 삐딱한 구도.",
            "characters": [
              "국방장관"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "어두운 사무실 안, 박철진이 수화기를 귀에 바짝 댄 채 이마에 식은땀이 맺힌 얼어붙은 얼굴.",
            "characters": [
              "박철진"
            ],
            "based_on_beat": 1,
            "original_description": "어두운 사무실 안, 박철진이 수화기를 귀에 바짝 댄 채 이마에 식은땀을 흘리며 얼어붙은 얼굴.",
            "validator_reason": "'땀을 흘리며'라는 연속 진행 상태를 '땀이 맺힌' 고정 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "국방장관이 수화기에 입을 바짝 댄 채 눈을 부릅뜨고 매섭게 쏘아붙이는 찰나의 위압적인 표정.",
            "characters": [
              "국방장관"
            ],
            "based_on_beat": 1,
            "original_description": "국방장관이 수화기에 입을 바짝 대고 눈을 부릅뜨며 매섭게 쏘아붙이는 위압적인 표정.",
            "validator_reason": "'대고', '~뜨며'라는 시간 순차 및 연속 동작 연결어를 '~댄 채'의 고정 상태와 단일 찰나 표현으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "박철진이 꽉 쥔 수화기가 허공에서 미세하게 흔들리는 찰나가 포착된 손끝 클로즈업.",
            "characters": [
              "박철진"
            ],
            "based_on_beat": 1,
            "original_description": "박철진이 꽉 쥔 수화기가 허공에서 미세하게 파르르 떨리는 손끝 클로즈업.",
            "validator_reason": "'파르르 떨리는'이라는 되풀이되는 움직임을 변화가 진행 중인 한 순간으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "박철진이 텅 빈 사무실에서 수화기를 든 채 허리를 90도로 푹 숙인 굴욕적인 자세.",
            "characters": [
              "박철진"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "국방장관이 입꼬리를 비스듬히 올린 채 여유롭고 탐욕스러운 미소를 띤 얼굴.",
            "characters": [
              "국방장관"
            ],
            "based_on_beat": 2,
            "original_description": "국방장관이 입꼬리를 비스듬히 올리며 여유롭고 탐욕스러운 미소를 짓는 찰나.",
            "validator_reason": "'올리며'라는 연속 동작을 '올린 채'라는 고정된 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "박철진이 전화기를 든 채 빈 허공을 향해 손날을 쫙 펴서 이마에 갖다 댄 군대식 경례의 역동적인 자세.",
            "characters": [
              "박철진"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "박철진이 탁자 위 전화기 본체에 수화기를 거칠게 쾅 내리찍는 타격의 순간.",
            "characters": [
              "박철진"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "사무실 한쪽에 선 박철진의 수하 1이 박철진을 향해 고개를 살짝 내민 채 눈치를 보는 표정.",
            "characters": [
              "박철진",
              "수하 1"
            ],
            "based_on_beat": 3,
            "original_description": "사무실 한쪽에 서 있던 박철진의 수하 1이 박철진을 향해 고개를 살짝 내밀고 눈치를 보는 표정.",
            "validator_reason": "'서 있던', '내밀고' 등 시간의 진행을 암시하는 연결어를 '선', '내민 채'라는 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "박철진이 두 팔을 양옆으로 활짝 벌린 채 얼굴에 핏대를 세우고 광기 어린 미소를 지은 구도.",
            "characters": [
              "박철진"
            ],
            "based_on_beat": 3,
            "original_description": "박철진이 두 팔을 양옆으로 활짝 벌리며 얼굴에 핏대를 세우고 광기 어린 미소를 짓는 구도.",
            "validator_reason": "'벌리며'라는 연속 동작을 '벌린 채'라는 고정 자세로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 44,
        "scene_heading": "폐공장 옆 창고 – N",
        "shots": [
          {
            "shot_index": 1,
            "description": "이현우가 낡은 폐공장 옆 창고의 녹슨 철문을 옆으로 거칠게 밀고 있는, 힘이 실린 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 낡은 폐공장 옆 창고의 녹슨 철문을 옆으로 거칠게 밀어 여는 힘이 실린 찰나.",
            "validator_reason": "'밀어 여는'이라는 연속 동작을 '밀고 있는' 한 순간의 진행 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "라울이 셔터 손잡이를 위로 당긴 채 서 있고, 찰리의 거대한 금속 양손이 셔터 하단을 맹렬히 밀어 올리는 중인 역동적인 구도.",
            "characters": [
              "라울",
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "라울이 셔터 손잡이를 위로 당기고, 찰리의 거대한 금속 양손이 셔터 하단을 맹렬히 밀어 올리는 역동적인 구도.",
            "validator_reason": "'당기고'라는 시간 연결어를 '당긴 채'라는 고정 상태로 수정하여 동시적인 한 찰나로 맞춤.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "셔터가 반쯤 열린 어두운 창고 안, 낡지만 매끈한 소형 캠핑카의 전면 외관.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "앰버가 캠핑카를 올려다보며 입을 동그랗게 벌리고 두 눈을 반짝이는 감탄한 얼굴 클로즈업.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "이현우가 캠핑카의 뒷문 손잡이를 꽉 쥔 채 바깥으로 당기는 중인 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 캠핑카의 뒷문 손잡이를 꽉 쥐고 바깥으로 활짝 당겨 여는 찰나.",
            "validator_reason": "'쥐고'와 '당겨 여는'이라는 연속 동작을 '쥔 채 당기는 중인' 한 찰나의 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "열린 캠핑카 문 안쪽에 푹신한 침대와 정돈된 내부가 희미한 빛 아래 아늑하게 드러난 구도.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 45,
        "scene_heading": "45. 도심. 도로 - N (비)",
        "shots": [
          {
            "shot_index": 1,
            "description": "비 내리는 어두운 외곽 도로 위를 헤드라이트가 꺼진 낡은 캠핑카가 바퀴로 빗물을 튀기며 나아가는 mid-action 외관.",
            "characters": [],
            "based_on_beat": 1,
            "original_description": "비 내리는 어두운 외곽 도로 위를 헤드라이트가 꺼진 낡은 캠핑카가 질주하는 외관.",
            "validator_reason": "이동 동작(질주하는)을 시각적 추진 단서(바퀴로 빗물을 튀기는)가 포함된 mid-action 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "어두운 캠핑카 운전석, 이현우가 두 손으로 운전대를 꽉 쥔 채 입술을 굳게 다물고 앞을 쏘아보는 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "조수석에 앉은 라울이 고개를 푹 숙인 채 무거운 표정을 짓는 구도.",
            "characters": [
              "라울"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "뒷좌석의 작은 전등 불빛 아래, 앰버가 무릎을 모아 앉은 채 눈물 고인 눈으로 창밖을 바라보는 시선.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "앰버 옆에 앉은 찰리가 두 눈의 켜진 푸른빛이 흔들리는 순간 앞을 조용히 응시하는 거대한 자태.",
            "characters": [
              "앰버",
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "앰버 옆에 앉은 찰리가 두 눈의 푸른빛을 깜빡이며 앞을 조용히 응시하는 거대한 자태.",
            "validator_reason": "깜빡이며(되풀이 진행)를 켜진 빛이 흔들리는 고정 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "앰버가 앞좌석의 이현우를 향해 상체를 살짝 기울인 채 미간을 찌푸린 다급한 얼굴.",
            "characters": [
              "앰버",
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "앰버가 앞좌석의 이현우를 향해 상체를 살짝 기울이며 미간을 찌푸린 다급한 얼굴.",
            "validator_reason": "기울이며(진행 동작)를 기울인 채(결과 상태)로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "이현우가 고개를 반쯤 돌린 채 단호한 표정으로 룸미러에 시선을 고정한 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 룸미러에 시선을 고정한 채 단호한 표정으로 고개를 돌리는 찰나.",
            "validator_reason": "고개를 돌리는(연속 동작)을 고개를 반쯤 돌린 채(정지 상태)로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "앰버가 이현우를 향해 두 눈을 부릅뜨고 턱을 치켜든 항의하는 표정.",
            "characters": [
              "앰버",
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "찰리가 미간을 찌푸리듯 눈가 금속 부품을 내린 채 위를 올려다보는 구도.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "캠핑카 천장 틈새로 굵은 빗방울이 차 안으로 막 떨어져 내리는 공중의 한 순간 클로즈업.",
            "characters": [],
            "based_on_beat": 2,
            "original_description": "캠핑카 천장 틈새로 굵은 빗방울이 차 안으로 뚝뚝 떨어지는 클로즈업.",
            "validator_reason": "뚝뚝 떨어지는(되풀이 동작)을 떨어져 내리는 공중의 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "라울이 천장에서 떨어지는 비를 맞으며 두 눈을 동그랗게 뜬 놀란 얼굴.",
            "characters": [
              "라울"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "라울이 젖은 옷가지를 두 손으로 움켜쥔 채 천장 틈새를 맹렬히 틀어막는 힘이 실린 자세.",
            "characters": [
              "라울"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "앰버가 젖은 옷가지를 양손으로 꽉 쥔 채 창틀 틈새에 바짝 밀어 넣고 힘을 주고 있는 손끝 클로즈업.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 2,
            "original_description": "앰버가 젖은 옷가지를 양손으로 꽉 쥔 채 창틀 틈새에 바짝 밀어 넣는 손끝 클로즈업.",
            "validator_reason": "밀어 넣는(진행 동작)을 밀어 넣고 힘을 주고 있는(고정 자세)로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "라울과 앰버가 쏟아지는 빗물 아래서 양팔을 허공으로 뻗은 채 얼굴을 찡그린 당황한 구도.",
            "characters": [
              "라울",
              "앰버"
            ],
            "based_on_beat": 2,
            "original_description": "라울과 앰버가 쏟아지는 빗물 아래서 양팔을 허공으로 뻗으며 얼굴을 찡그린 당황한 구도.",
            "validator_reason": "뻗으며(진행 동작)를 뻗은 채(결과 자세)로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 46,
        "scene_heading": "46. 버려진 도서관 밖 - N (비)",
        "shots": [
          {
            "shot_index": 1,
            "description": "비 내리는 어둠 속, 마른 넝쿨과 굵은 금이 간 벽면의 '미추홀도서관, 인천' 간판 앞으로 낡은 캠핑카가 멈춰 선 외관.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "거미줄과 뽀얀 먼지로 덮인 낡은 도서관 열람실 문이 안으로 열리는 중의 한 각도에서 멈춘 찰나.",
            "characters": [],
            "based_on_beat": 1,
            "original_description": "거미줄과 뽀얀 먼지로 덮인 낡은 도서관 열람실 문이 안으로 삐걱대며 열리는 찰나.",
            "validator_reason": "연속적인 열림 동작을 열리는 중인 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "이현우, 앰버, 라울, 찰리가 먼지 낀 열람실 안으로 조심스레 한쪽 발을 공중에 든 채 내딛는 mid-action 구도.",
            "characters": [
              "이현우",
              "앰버",
              "라울",
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "이현우, 앰버, 라울, 찰리가 먼지 낀 열람실 안으로 조심스레 발을 내딛는 구도.",
            "validator_reason": "이동 동작을 방향성이 보존된 mid-action 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "라울이 먼지 쌓인 낡은 책 한 권을 양손으로 쥔 채 콧등을 찡그리는 얼굴.",
            "characters": [
              "라울"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "이현우가 미간을 찌푸린 채 라울을 향해 손가락으로 엑스 자를 교차해 만든 단호한 동작.",
            "characters": [
              "이현우",
              "라울"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 미간을 찌푸린 채 라울을 향해 손가락으로 엑스 자를 그리는 단호한 동작.",
            "validator_reason": "연속적인 손동작을 교차된 채 고정된 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "이현우가 바닥에 주저앉아 낡은 더플백 지퍼를 아래로 맹렬히 잡아당기는 순간의 손끝 클로즈업.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 바닥에 주저앉아 낡은 더플백 지퍼를 아래로 맹렬히 잡아당겨 여는 손끝 클로즈업.",
            "validator_reason": "연속적인 열기 동작을 힘주어 잡아당기는 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "이현우가 가방에서 금속 통조림을 꺼내어 든 채 앞을 응시하는 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "찰리가 이현우 곁에서 상체를 굽힌 채 푸른 안광을 빛내며 호기심 어린 표정으로 내려다보는 구도.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "이현우가 찰리를 외면한 채 통조림 뚜껑의 고리에 손가락을 걸고 거칠게 힘을 주는 손끝 클로즈업.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 찰리를 외면한 채 통조림 뚜껑을 거칠게 따는 손끝 클로즈업.",
            "validator_reason": "따는 연속 동작을 고리에 힘을 주는 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "찰리가 앰버 옆을 향해 엉덩이를 반쯤 내린 채 멈춰 선 불안정한 자세.",
            "characters": [
              "찰리",
              "앰버"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "이현우가 찰리를 향해 미간에 깊은 주름을 잡고 노골적으로 노려보는 매서운 시선.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "찰리가 두 어깨를 아래로 축 늘어뜨린 채 낡은 서가 쪽으로 몸을 향하고 한 발을 내딛는 mid-action 뒷모습.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "찰리가 두 어깨를 아래로 축 늘어뜨린 채 낡은 서가 쪽으로 발걸음을 돌린 시무룩한 뒷모습.",
            "validator_reason": "발걸음을 돌리는 이동 동작을 방향성이 보존된 mid-action 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "앰버가 양손에 통조림을 쥔 채 턱을 치켜들고 이현우를 매섭게 쏘아보는 얼굴.",
            "characters": [
              "앰버",
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "이현우가 통조림 안의 음식을 숟가락으로 거칠게 떠먹으며 입을 크게 벌린 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "찰리가 환하게 웃는 듯 눈가 금속 부품을 올린 채 낡은 책을 양손으로 들고 일행 쪽을 향해 한 발을 땅에서 뗀 mid-stride 전신.",
            "characters": [
              "찰리",
              "일행"
            ],
            "based_on_beat": 2,
            "original_description": "찰리가 환하게 웃는 듯 눈가 금속 부품을 올린 채 낡은 책을 양손으로 들고 일행 쪽으로 걸어오는 전신.",
            "validator_reason": "걸어오는 이동 동작을 추진력이 드러나는 mid-stride 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "찰리가 책을 쫙 펼쳐 든 채 다른 손으로 자신을 가리키는 손짓의 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "이현우가 찰리의 손에 들린 책을 향해 손을 강하게 뻗어 표지를 꽉 쥔 힘이 실린 손끝 클로즈업.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 찰리의 손에 들린 책을 거칠게 낚아채는 힘이 실린 손끝 클로즈업.",
            "validator_reason": "낚아채는 연속 동작을 능동 접촉 순간의 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "이현우가 낡은 책을 쥔 손을 허공을 향해 맹렬히 뻗으며 막 놓으려는 팔의 역동적인 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 낡은 책을 허공을 향해 맹렬히 집어 던지는 팔의 역동적인 찰나.",
            "validator_reason": "집어 던지는 연속 동작을 던지기 직전의 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "허공을 날아온 낡은 책이 먼지 쌓인 바닥에 부딪혀 사방으로 흙먼지가 튀어 오르는 타격의 한 순간.",
            "characters": [],
            "based_on_beat": 2,
            "original_description": "허공을 날아간 낡은 책이 먼지 쌓인 바닥에 툭 떨어지며 흙먼지를 일으키는 타격의 순간.",
            "validator_reason": "떨어지며 먼지를 일으키는 인과적 연속 동작을 타격이 일어난 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 20,
            "description": "찰리가 눈가 금속 부품을 아래로 찌그러뜨린 채 입을 반쯤 벌린 충격받은 표정.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "찰리가 눈가 금속 부품을 아래로 찌그러뜨리며 입을 반쯤 벌린 충격받은 표정.",
            "validator_reason": "찌그러뜨리는 연속적인 상태 변화를 고정된 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 21,
            "description": "앰버가 눈물 고인 눈으로 이현우를 향해 두 주먹을 불끈 쥐고 소리치는 격앙된 얼굴 클로즈업.",
            "characters": [
              "앰버",
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 22,
            "description": "이현우가 눈에 핏대를 세운 채 앰버를 향해 턱을 내밀며 분노로 얼굴이 일그러진 구도.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 23,
            "description": "라울이 이현우와 앰버 사이에서 눈동자를 한쪽으로 치우친 채 입을 꾹 다문 당황한 표정.",
            "characters": [
              "라울",
              "이현우",
              "앰버"
            ],
            "based_on_beat": 2,
            "original_description": "라울이 이현우와 앰버 사이에서 눈동자를 좌우로 굴리며 입을 꾹 다문 당황한 표정.",
            "validator_reason": "눈동자를 굴리는 반복 동작을 한 방향을 향한 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 24,
            "description": "이현우가 바닥에서 몸을 일으켜 열람실 밖을 향해 몸을 반쯤 튼 역동적인 뒷모습.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 바닥에서 상체를 벌떡 일으켜 세우며 열람실 밖을 향해 휙 돌아서는 역동적인 뒷모습.",
            "validator_reason": "일어나며 돌아서는 순차 동작을 몸을 튼 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 25,
            "description": "어두운 열람실 구석, 박스와 책더미 위에서 이현우, 앰버, 라울이 몸을 둥글게 웅크린 채 눈을 감고 잠든 평온한 구도.",
            "characters": [
              "이현우",
              "앰버",
              "라울"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 26,
            "description": "먼지 쌓인 서가 사이에서 찰리가 두 눈의 푸른빛을 책 페이지 위에 눈부시게 비추는 열중한 모습.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 27,
            "description": "찰리의 거대한 금속 손가락이 고물 컴퓨터의 낡은 키보드 자판 하나를 강하게 누르고 있는 타격감 있는 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "찰리의 거대한 금속 손가락이 고물 컴퓨터의 낡은 키보드 위를 빠르게 두드리는 타격감 있는 찰나.",
            "validator_reason": "빠르게 두드리는 반복 동작을 자판을 누른 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 28,
            "description": "낡은 모니터 화면 위로 빼곡한 언어 데이터와 글자 배열이 스크롤되는 도중에 포착된 눈부신 클로즈업.",
            "characters": [],
            "based_on_beat": 3,
            "original_description": "낡은 모니터 화면 위로 빼곡한 언어 데이터와 글자 배열이 눈부시게 흘러가는 클로즈업.",
            "validator_reason": "글자가 흘러가는 변화를 진행 중인 한 순간으로 멈춰서 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 29,
            "description": "찰리가 입가 금속 부품을 연 채 소리 없이 단어를 벙긋거리는 모양으로 멈춘 집중한 표정.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "찰리가 입가 금속 부품을 움직이며 소리 없이 단어들을 벙긋거리는 집중한 표정.",
            "validator_reason": "움직이며 벙긋거리는 반복 동작을 고정된 표정으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 30,
            "description": "찰리가 턱을 당기고 두 어깨를 위로 가볍게 들어 올린 만족스러운 자태.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "찰리가 고개를 끄덕이며 두 어깨를 위아래로 가볍게 들썩이는 만족스러운 자태.",
            "validator_reason": "끄덕이며 들썩이는 연속 동작을 고정된 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 31,
            "description": "찰리의 시선이 바닥에 흩어진 알록달록한 크레파스 무더기를 향해 푹 꺾인 구도.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 32,
            "description": "찰리의 굵은 금속 두 손가락이 바닥의 빨간색 크레파스를 조심스레 꼬집듯 쥐고 있는 손끝 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "찰리의 굵은 금속 두 손가락이 바닥의 빨간색 크레파스를 조심스레 집어 드는 손끝 클로즈업.",
            "validator_reason": "집어 드는 연속 동작을 쥐고 있는 고정 상태로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 47,
        "scene_heading": "47. 낡은 도서관 - D",
        "shots": [
          {
            "shot_index": 1,
            "description": "낡은 도서관 열람실 바닥, 부스스한 머리의 앰버가 두 손등으로 두 눈을 비비는 찰나.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "파란색 크레파스로 칠해진 커다란 벽화를 향해 앰버가 고개를 확 돌린 채 눈을 동그랗게 뜬 찰나.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 1,
            "original_description": "파란색 크레파스로 칠해진 커다란 벽화를 향해 앰버가 고개를 확 돌리며 눈을 동그랗게 뜬 찰나.",
            "validator_reason": "'고개를 돌리며 눈을 뜬'이라는 순차적 동작 연결을 '고개를 확 돌린 채 눈을 동그랗게 뜬' 단일 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "야자수와 해양 생물들이 그려진 파란색 바다 그림이 도서관 벽면을 가득 채운 상태의 클로즈업.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "앰버가 바다 그림이 그려진 벽면을 따라 조심스럽게 한쪽 발을 공중에 막 들어 올린 mid-stride 순간의 역동적인 구도.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 1,
            "original_description": "앰버가 바다 그림이 그려진 벽면을 따라 조심스럽게 한쪽 발을 내딛는 역동적인 구도.",
            "validator_reason": "'발을 내딛는' 이동 동작을 추진력이 보존된 mid-stride 정지 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "찰리가 벽면 한쪽에 웅크려 앉아 파란색 크레파스로 선을 긋는 도중의 뒷모습.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "앰버가 찰리를 향해 두 눈을 반짝인 채 입을 살짝 벌린 경이로운 표정.",
            "characters": [
              "앰버",
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "앰버가 찰리를 향해 두 눈을 반짝이며 입을 살짝 벌린 경이로운 표정.",
            "validator_reason": "'눈을 반짝이며 입을 벌린' 두 상태의 연결을 '반짝인 채 입을 벌린' 동시 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "앰버가 손가락을 뻗은 채 벽화 속에 그려진 인물의 얼굴을 정확히 가리키고 있는 찰나.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 2,
            "original_description": "앰버가 손가락을 뻗어 벽화 속에 그려진 인물의 얼굴을 정확히 가리키는 찰나.",
            "validator_reason": "'뻗어 가리키는' 순차적 동작 연결을 '뻗은 채 가리키고 있는' 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "라울이 벽화의 글씨 쪽을 가리킨 채 두 눈을 크게 치켜뜬 놀란 얼굴.",
            "characters": [
              "라울"
            ],
            "based_on_beat": 2,
            "original_description": "라울이 벽화의 글씨 쪽을 가리키며 두 눈을 크게 치켜뜬 놀란 얼굴.",
            "validator_reason": "'가리키며 치켜뜬' 시간 연결어를 '가리킨 채 치켜뜬' 동시 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "앰버가 벽화의 글씨 쪽으로 시선을 고정한 채 환하게 미소 짓는 표정.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "찰리의 입가 금속 부품이 위로 살짝 올라간 채 두 어깨가 들썩인 위치에서 멈춘 유쾌한 자태.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "찰리의 입가 금속 부품이 위로 살짝 올라가며 두 어깨를 들썩이는 유쾌한 자태.",
            "validator_reason": "'올라가며 들썩이는' 연속/동시 진행 동작을 한 순간의 고정된 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "이현우가 벽화 앞의 찰리를 향해 미간을 찌푸린 채 무표정하게 응시하는 굳은 얼굴.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "주머니 속에 손을 넣은 채 열람실 바깥을 향해 성큼 내디딘 앞발에 무게가 실린 mid-stride 순간의 이현우 뒷모습.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "주머니 속에 손을 넣은 채 열람실 바깥을 향해 성큼 발을 내딛는 이현우의 뒷모습.",
            "validator_reason": "'발을 내딛는' 이동 동작을 운동 방향이 보존된 mid-stride 정지 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "라울이 앰버의 귀 쪽으로 상체를 바짝 기울인 채 눈치를 살피며 입을 반쯤 벌려 속삭이는 자세.",
            "characters": [
              "라울",
              "앰버"
            ],
            "based_on_beat": 3,
            "original_description": "라울이 앰버의 귀 쪽으로 상체를 바짝 기울인 채 눈치를 보며 속삭이는 자세.",
            "validator_reason": "'눈치를 보며 속삭이는' 두 가지 행동 연결을 하나의 고정된 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "도서관 외진 구석, 이현우가 벗어 든 자신의 신발 안쪽에서 빳빳한 연락처 카드를 쑥 뽑아내는 손끝 클로즈업.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "이현우가 일회용 핸드폰을 귓가에 바짝 댄 채 미간을 깊게 찌푸린 초조한 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "이현우가 깊은 한숨을 내쉰 채 고개를 뒤로 휙 돌린 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 5,
            "original_description": "이현우가 깊은 한숨을 내쉬며 고개를 뒤로 휙 돌리는 찰나.",
            "validator_reason": "'내쉬며 돌리는' 두 동작을 '내쉰 채 고개를 뒤로 휙 돌린' 결과 상태로 합쳐 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "이현우의 등 뒤에 거대한 찰리가 우두커니 선 채 앞을 응시하는 구도.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "당황한 이현우가 찰리를 외면한 채 복도 쪽으로 몸을 기울여 한쪽 발을 막 떼어낸 mid-stride 순간의 날렵한 뒷모습.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 5,
            "original_description": "당황한 이현우가 찰리를 외면한 채 복도 쪽으로 다급히 발걸음을 옮기는 날렵한 뒷모습.",
            "validator_reason": "'발걸음을 옮기는' 이동 동작을 다급한 방향성과 추진력이 드러나는 mid-stride 정지 순간으로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 48,
        "scene_heading": "48. 도로 – D 자막: 경기도 화성",
        "shots": [
          {
            "shot_index": 1,
            "description": "황량한 들판과 메마른 나무들을 배경으로 낡은 캠핑카가 거친 아스팔트 도로 위를 질주하는 추진 방향이 보존된 mid-action 외관.",
            "characters": [],
            "based_on_beat": 1,
            "original_description": "황량한 들판과 메마른 나무들을 배경으로 낡은 캠핑카가 거친 아스팔트 도로 위를 질주하는 외관.",
            "validator_reason": "'질주하는'이라는 이동 동작에 동적 동사 freeze 규칙을 적용하여 motion 방향이 보존된 mid-action 상태로 구체화함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "캠핑카 뒷좌석에서 찰리가 바닥에 놓인 낡은 라디오에 귀 쪽 금속 부품을 바짝 가져다 댄 집중한 구도.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "라울이 캠핑카 차창 밖의 메마른 나무들을 턱을 괸 채 멍하니 내다보는 얼굴.",
            "characters": [
              "라울"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "조수석의 앰버가 지도를 쥔 채 앞창문 밖을 향해 손가락을 뻗고 눈을 크게 뜬 다급한 찰나.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 1,
            "original_description": "조수석의 앰버가 지도를 쥔 채 앞창문 밖을 향해 손가락질하며 눈을 크게 뜬 다급한 찰나.",
            "validator_reason": "'손가락질하며'라는 진행 동작을 '손가락을 뻗고'라는 고정 자세로 수정하여 동시 진행을 단일 순간으로 만듦.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "캠핑카가 검문소를 앞두고 산길 쪽으로 차체가 급격히 꺾인 채 타이어에서 흙먼지가 뿜어져 나오는 mid-action 역동적인 순간.",
            "characters": [],
            "based_on_beat": 1,
            "original_description": "캠핑카가 검문소를 앞두고 산길 쪽으로 핸들이 급격히 꺾이며 타이어 흙먼지를 일으키는 역동적인 순간.",
            "validator_reason": "'꺾이며 일으키는'이라는 연속 동작을 꺾인 상태와 흙먼지의 뿜어짐이 동시 포착된 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "산길에 멈춰 선 캠핑카 밖에서 앰버가 차체 아래쪽으로 상체를 깊숙이 숙여 바퀴 쪽을 살피는 자세.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "이현우가 차 밑에 자리 잡은 채 타이어 바퀴의 나사를 렌치로 맹렬히 조이고 있는 손끝 클로즈업.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 차 밑으로 들어가 타이어 바퀴의 나사를 렌치로 맹렬히 조이는 손끝 클로즈업.",
            "validator_reason": "'들어가'라는 사전 동작을 '자리 잡은 채'라는 결과 상태로 수정하여 연속성을 제거함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "이현우가 캠핑카 운전석에 앉아 핸들을 향해 거칠게 내리친 주먹이 표면에 강하게 맞닿은 mid-impact 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 캠핑카 운전석에 앉아 핸들을 주먹으로 거칠게 내리치는 타격의 찰나.",
            "validator_reason": "능동적 신체 접촉 규칙에 따라 '내리치는' 동작을 힘의 방향과 접촉 지점이 드러난 mid-impact 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "캠핑카 밖에서 이현우, 앰버, 라울이 난감한 표정으로 앞을 바라보며 우두커니 선 구도.",
            "characters": [
              "이현우",
              "앰버",
              "라울"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "찰리의 입가 금속 부품에 푸른빛이 켜진 채 스피커 음성이 흘러나오는 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "찰리의 입가 금속 부품에서 푸른빛이 깜빡이며 스피커 음성이 흘러나오는 찰나.",
            "validator_reason": "'깜빡이며'라는 변화/반복 상태를 불빛이 켜진 한 위상의 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "앰버가 두 눈을 동그랗게 뜨고 입을 크게 벌린 채 찰리를 빤히 바라보는 놀란 표정 클로즈업.",
            "characters": [
              "앰버",
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "찰리가 유쾌한 자세로 두 손바닥을 세차게 맞부딪쳐 충돌시킨 mid-impact 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "찰리가 두 손바닥을 세차게 부딪치며 짝 소리를 내는 유쾌한 자세.",
            "validator_reason": "'부딪치며 소리를 내는' 연속 동작을 두 손이 강하게 충돌한 단일 순간(mid-impact)으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "이현우가 턱을 치켜든 채 무심한 표정으로 찰리를 흘겨보는 시선.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "이현우가 라울을 향해 손가락으로 운전석 쪽을 정확히 가리키는 굳은 표정.",
            "characters": [
              "이현우",
              "라울"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "이현우가 운전하는 캠핑카가 흙먼지를 내며 산길 아래 도로변을 향해 차체를 덜컹 기울인 채 나아가는 mid-action 후면 외관.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 4,
            "original_description": "이현우가 운전하는 캠핑카가 흙먼지를 내며 산길 아래 도로변을 향해 덜컹거리는 후면 외관.",
            "validator_reason": "'덜컹거리는'이라는 반복 동작을 차체가 한쪽으로 기울어진 한 순간의 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "앰버, 라울, 찰리가 흙먼지 날리는 산길을 따라 나란히 걷고 있는 mid-stride 전신 구도, 한쪽 발이 막 땅에서 떨어진 상태.",
            "characters": [
              "앰버",
              "라울",
              "찰리"
            ],
            "based_on_beat": 5,
            "original_description": "앰버, 라울, 찰리가 흙먼지 날리는 산길을 따라 나란히 걷는 전신 구도.",
            "validator_reason": "'걷는'이라는 이동 동사에 동적 동사 freeze 규칙을 적용하여 한쪽 발이 떨어진 mid-stride 찰나로 구체화함.",
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "찰리가 앰버를 향해 두 어깨를 아래로 축 늘어뜨린 채 눈가의 푸른빛이 희미해진 시무룩한 얼굴.",
            "characters": [
              "찰리",
              "앰버"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "앰버가 찰리를 향해 자신의 새끼손가락을 불쑥 내민 채 환하게 미소 짓고 있는 찰나.",
            "characters": [
              "앰버",
              "찰리"
            ],
            "based_on_beat": 5,
            "original_description": "앰버가 찰리를 향해 자신의 새끼손가락을 불쑥 내밀며 환하게 미소 짓는 찰나.",
            "validator_reason": "'내밀며'라는 진행형 동작을 '내민 채'라는 결과 상태 고정으로 수정하여 동시 진행을 제거함.",
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "찰리의 굵고 둥근 금속 손바닥 위로 앰버의 작은 두 손이 단단히 포개어져 맞잡힌 손끝 클로즈업.",
            "characters": [
              "찰리",
              "앰버"
            ],
            "based_on_beat": 5,
            "original_description": "찰리의 굵고 둥근 금속 손바닥 위로 앰버의 작은 두 손이 포개어지며 단단히 맞잡은 손끝 클로즈업.",
            "validator_reason": "'포개어지며 맞잡은'의 시간 진행을 '포개어져 맞잡힌'이라는 동시 고정 상태로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 49,
        "scene_heading": "49. 휴게소 - D",
        "shots": [
          {
            "shot_index": 1,
            "description": "마트 안, 조일광이 낡은 TV 화면을 응시하는 얼굴.",
            "characters": [
              "조일광"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "조일광이 마트 유리창 밖 저 멀리 덜컹거리며 다가오는 캠핑카를 향해 시선을 고정한 채 내다보는 모습.",
            "characters": [
              "조일광"
            ],
            "based_on_beat": 1,
            "original_description": "조일광이 고개를 돌려 마트 유리창 밖 저 멀리 덜컹거리며 들어오는 캠핑카를 내다보는 시선.",
            "validator_reason": "'고개를 돌려'와 같은 시간 순차 동작을 배제하고 캠핑카를 향해 시선을 고정한 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "조일광이 입꼬리를 씩 올리며 비열한 미소를 짓는 찰나.",
            "characters": [
              "조일광"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "조일광의 굵은 손이 탁자 아래 놓인 산탄총의 총열을 꽉 움켜쥔 손끝 클로즈업.",
            "characters": [
              "조일광"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "주유소 밖, 이현우가 캠핑카 주유구에 주유기를 꽂은 채 불안한 눈빛으로 한쪽을 응시하는 구도.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "주유소 밖, 이현우가 캠핑카 주유구에 주유기를 꽂은 채 불안한 눈빛으로 주변을 두리번거리는 구도.",
            "validator_reason": "'두리번거리는'이라는 연속 동작을 한쪽을 응시하는 고정 시선으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "찰리의 시야 인터페이스 속, 다친 이현우의 허벅지 위로 'CRP 9mg/dL, 위험'이라는 붉은 글씨가 선명하게 떠오른 주관 시점 찰나.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "찰리가 이현우를 등진 채 마트 입구를 향해 육중한 금속 다리 한쪽을 치켜들고 내달리는 도중의 역동적인 뒷모습.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "찰리가 이현우를 등진 채 마트 입구를 향해 육중한 금속 다리로 맹렬히 내달리는 역동적인 뒷모습.",
            "validator_reason": "'맹렬히 내달리는' 이동 동작의 역동성과 추진력을 보존하기 위해 mid-stride 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "이현우가 멀어지는 찰리를 향해 한쪽 팔을 허공에 뻗으며 입을 크게 벌려 소리치는 당황한 얼굴.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "마트 약품 코너 앞, 찰리가 진열대의 약통들 사이로 거대한 금속 손을 뻗어 한 약통을 움켜쥔 뒷모습.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "마트 약품 코너 앞, 찰리가 진열대의 약통들을 거대한 금속 손으로 뒤적이는 뒷모습.",
            "validator_reason": "'뒤적이는'이라는 반복적 연속 동작을 약통을 움켜쥔 고정 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "찰리가 하얀 약통을 쥔 채 앰버를 향해 눈가 금속 부품을 구부려 웃음 모양을 띤 얼굴.",
            "characters": [
              "찰리",
              "앰버"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "앰버가 찰리를 향해 두 눈을 반짝이며 활짝 미소 짓는 표정.",
            "characters": [
              "앰버",
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "앰버, 라울, 찰리의 등 뒤로 조일광이 산탄총을 맹렬히 겨눈 채 한 발짝 내디딘 위압적인 구도.",
            "characters": [
              "앰버",
              "라울",
              "찰리",
              "조일광"
            ],
            "based_on_beat": 3,
            "original_description": "앰버, 라울, 찰리의 등 뒤로 조일광이 산탄총을 맹렬히 겨누며 다가선 위압적인 구도.",
            "validator_reason": "'겨누며 다가선'이라는 이동성 시간 흐름을 한 발 내디딘 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "총구를 마주한 라울과 앰버가 안색이 하얗게 질린 채 두 손을 번쩍 치켜든 찰나.",
            "characters": [
              "라울",
              "앰버"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "마트 구석의 둥근 반사경 위로, 조일광의 등 뒤에서 한쪽 발을 딛고 살금살금 접근 중인 이현우의 날카로운 실루엣이 비친 클로즈업.",
            "characters": [
              "조일광",
              "이현우"
            ],
            "based_on_beat": 4,
            "original_description": "마트 구석의 둥근 반사경 위로, 조일광의 등 뒤로 살금살금 다가오는 이현우의 날카로운 실루엣이 비친 클로즈업.",
            "validator_reason": "'살금살금 다가오는' 연속 동작을 발을 딛고 있는 mid-stride 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "반사경을 본 조일광이 두 눈을 부릅뜨며 이현우 쪽으로 상체를 확 돌린 역동적인 찰나.",
            "characters": [
              "조일광",
              "이현우"
            ],
            "based_on_beat": 4,
            "original_description": "반사경을 본 조일광이 두 눈을 부릅뜨며 이현우 쪽으로 상체를 확 돌리는 역동적인 찰나.",
            "validator_reason": "'돌리는' 진행 동작을 상체를 확 돌린 결과 상태로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "이현우가 조일광의 산탄총 총열을 두 손으로 꽉 틀어쥐고 위를 향해 거세게 밀어 올려 힘이 실린 역동적인 자세.",
            "characters": [
              "이현우",
              "조일광"
            ],
            "based_on_beat": 4,
            "original_description": "이현우가 조일광의 산탄총 총열을 두 손으로 꽉 틀어쥐고 위를 향해 맹렬히 쳐올리는 힘이 실린 자세.",
            "validator_reason": "'쳐올리는' 연속 동작을 총열을 밀어 올린 자세를 유지하는 active contact 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "위로 꺾인 산탄총 총구에서 시뻘건 불꽃이 번쩍 뿜어져 나오는 격발의 순간.",
            "characters": [
              "조일광"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "총탄을 맞은 마트 천장에 구멍이 뚫리며 콘크리트 파편이 아래로 쏟아져 내리는 찰나.",
            "characters": [],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "조일광의 억센 두 팔이 이현우의 가슴팍에 닿아 거세게 밀어내고, 그 힘에 의해 이현우의 상체가 뒤로 크게 젖혀진 타격의 찰나.",
            "characters": [
              "조일광",
              "이현우"
            ],
            "based_on_beat": 5,
            "original_description": "조일광의 억센 두 팔이 이현우의 가슴팍을 맹렬히 밀쳐내는 타격의 찰나.",
            "validator_reason": "'밀쳐내는' 연속적 타격을 active contact 룰에 따라 자세 불균형을 동반한 충돌 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 20,
            "description": "바닥에 엉덩방아를 찧은 이현우가 고통스럽게 미간을 찌푸린 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 21,
            "description": "조일광이 넘어진 이현우를 향해 산탄총의 펌프를 반쯤 뒤로 당겨 쥔 힘이 실린 구도.",
            "characters": [
              "조일광",
              "이현우"
            ],
            "based_on_beat": 5,
            "original_description": "조일광이 넘어진 이현우를 향해 산탄총의 펌프를 철컥 당기는 힘이 실린 구도.",
            "validator_reason": "'당기는' 연속 동작을 펌프를 당긴 채 고정된 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 22,
            "description": "찰리가 거대한 금속 몸통으로 바닥을 박차고 날아올라 조일광의 상체와 강하게 부딪히기 직전의 역동적인 공중 구도.",
            "characters": [
              "찰리",
              "조일광"
            ],
            "based_on_beat": 5,
            "original_description": "찰리가 거대한 금속 몸통으로 조일광의 상체를 맹렬히 덮치는 역동적인 공중 구도.",
            "validator_reason": "'덮치는' 연속 동작을 바닥을 박찬 단서와 충돌 직전의 찰나로 고정하여 허공 부유를 방지함.",
            "character_ids": []
          },
          {
            "shot_index": 23,
            "description": "조일광의 산탄총에서 뿜어진 총탄이 찰리의 금속 어깨 장갑판을 찢으며 강한 불꽃 스파크를 일으키는 타격의 순간.",
            "characters": [
              "조일광",
              "찰리"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 24,
            "description": "찰리가 한 손으로 조일광의 멱살을 쥐어 마트 진열대 쪽으로 거칠게 뻗어 던지고, 그 힘에 조일광의 몸이 허공에 붕 뜬 역동적인 찰나.",
            "characters": [
              "찰리",
              "조일광"
            ],
            "based_on_beat": 5,
            "original_description": "찰리가 조일광의 멱살을 쥔 채 마트 진열대 쪽으로 거칠게 내던지는 팔의 역동적인 찰나.",
            "validator_reason": "'내던지는' 연속 동작을 멱살을 쥔 채 뻗은 팔과 공중에 뜬 불균형이 묘사된 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 25,
            "description": "조일광의 상체가 낡은 진열대에 세차게 부딪히며 과자 상자와 캔들이 사방으로 튀어 오르는 파괴적인 순간.",
            "characters": [
              "조일광"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 26,
            "description": "이현우, 앰버, 라울, 찰리가 주유소 밖 낡은 캠핑카 문턱을 밟고 안으로 다급하게 상체를 들이민 자세의 외관.",
            "characters": [
              "이현우",
              "앰버",
              "라울",
              "찰리"
            ],
            "based_on_beat": 6,
            "original_description": "이현우, 앰버, 라울, 찰리가 주유소 밖 낡은 캠핑카 문 안으로 다급하게 상체를 들이미는 외관.",
            "validator_reason": "'들이미는' 연속 동작을 상체를 들이민 채 고정된 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 27,
            "description": "어깨에서 튀는 불꽃 스파크를 손으로 감싸 쥔 찰리를 앰버가 걱정스레 올려다보는 구도.",
            "characters": [
              "찰리",
              "앰버"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 28,
            "description": "조일광이 분노로 일그러진 얼굴로 산탄총을 치켜든 채, 주유소 밖을 향해 한쪽 발을 내디뎌 절뚝이는 전신.",
            "characters": [
              "조일광"
            ],
            "based_on_beat": 6,
            "original_description": "다리를 절뚝이는 조일광이 분노로 일그러진 얼굴로 산탄총을 치켜든 채 주유소 밖으로 걸어 나오는 전신.",
            "validator_reason": "'걸어 나오는' 이동 동작을 한쪽 발을 내디딘 mid-stride 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 29,
            "description": "캠핑카 운전석의 이현우가 상체를 웅크린 채 아이들을 향해 손바닥을 내밀어 소리치는 찰나.",
            "characters": [
              "이현우",
              "앰버",
              "라울"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 30,
            "description": "조일광의 산탄총에서 뿜어진 총알이 캠핑카의 옆 유리창을 산산조각 내며 파편이 사방으로 날리는 파괴적인 순간.",
            "characters": [
              "조일광"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 31,
            "description": "이현우가 캠핑카의 가속 페달을 바닥 끝까지 맹렬히 밟은 발끝 클로즈업.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 6,
            "original_description": "이현우가 캠핑카의 가속 페달을 맹렬히 짓밟는 발끝 클로즈업.",
            "validator_reason": "'짓밟는' 연속 동작을 페달을 끝까지 밟아 고정한 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 32,
            "description": "낡은 캠핑카가 뒷바퀴에서 거친 타이어 연기를 길게 뿜어내며 주유소 도로를 벗어나 주행 중인 역동적인 후면 외관.",
            "characters": [],
            "based_on_beat": 6,
            "original_description": "낡은 캠핑카가 거친 타이어 연기를 뿜어내며 주유소 도로를 벗어나 맹렬히 달리는 후면 외관.",
            "validator_reason": "'달리는' 이동 동작을 연기를 뿜어내며 주행 중인 mid-action 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 33,
            "description": "달리는 캠핑카 안, 이현우가 룸미러를 향해 시선을 던진 채 다급하게 입을 벌리고 있는 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 7,
            "original_description": "달리는 캠핑카 안, 이현우가 룸미러를 향해 시선을 던지며 다급하게 입술을 여는 찰나.",
            "validator_reason": "'입술을 여는' 연속 동작을 입을 벌린 고정 표정으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 34,
            "description": "조수석의 찰리가 굵은 금속 손가락으로 룸미러 쪽을 가리키는 손끝.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 7,
            "character_ids": []
          },
          {
            "shot_index": 35,
            "description": "룸미러 거울 안으로 날카로운 사냥용 드론 한 대가 캠핑카를 바짝 뒤쫓는 무서운 형상.",
            "characters": [],
            "based_on_beat": 7,
            "character_ids": []
          },
          {
            "shot_index": 36,
            "description": "맹렬한 속도로 날아온 사냥용 드론의 총구에서 하얀 섬광이 눈부시게 번쩍이는 격발의 순간.",
            "characters": [],
            "based_on_beat": 7,
            "character_ids": []
          },
          {
            "shot_index": 37,
            "description": "이현우가 캠핑카의 핸문을 두 손으로 꽉 쥔 채 한쪽으로 거칠게 돌려 고정한 역동적인 자세.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 8,
            "original_description": "이현우가 캠핑카의 핸들을 두 손으로 꽉 쥔 채 한쪽으로 거칠게 꺾는 역동적인 자세.",
            "validator_reason": "'꺾는' 연속 동작을 핸들을 돌린 채 힘을 주고 있는 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 38,
            "description": "캠핑카 내부, 급격한 회전에 의한 원심력으로 라울과 앰버의 상체가 한쪽으로 깊게 쏠려 있는 위태로운 찰나.",
            "characters": [
              "라울",
              "앰버"
            ],
            "based_on_beat": 8,
            "original_description": "캠핑카 내부, 급격한 꺾임에 라울과 앰버의 상체가 한쪽으로 맹렬히 쏠리는 위태로운 찰나.",
            "validator_reason": "'쏠리는' 진행 중인 움직임을 깊게 쏠려 있는 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 39,
            "description": "주유소 안, 조일광이 얼굴에 고글을 쓴 채 입꼬리를 귀에 걸며 기괴하게 웃는 구도.",
            "characters": [
              "조일광"
            ],
            "based_on_beat": 8,
            "character_ids": []
          },
          {
            "shot_index": 40,
            "description": "캠핑카 안, 찰리의 거대한 금속 주먹이 조수석 유리창을 맹렬히 쳐서 산산조각 내는 타격의 순간.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 8,
            "character_ids": []
          },
          {
            "shot_index": 41,
            "description": "찰리가 깨진 창문 바깥으로 거대한 금속 상체를 반쯤 빼낸 위태로운 구도.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 8,
            "character_ids": []
          },
          {
            "shot_index": 42,
            "description": "찰리의 낡은 가슴 장갑판 중앙에서 푸른 에너지원이 눈부신 소용돌이를 일으키며 번쩍이는 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 8,
            "character_ids": []
          },
          {
            "shot_index": 43,
            "description": "강렬한 푸른빛을 맞은 사냥용 드론이 거대한 화염과 함께 공중에서 폭발하는 파괴적인 순간.",
            "characters": [],
            "based_on_beat": 8,
            "character_ids": []
          },
          {
            "shot_index": 44,
            "description": "이현우가 계기판의 붉은 눈금 끝까지 솟구친 RPM 바늘을 보며 두 눈을 동그랗게 뜬 충격받은 표정.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 9,
            "character_ids": []
          },
          {
            "shot_index": 45,
            "description": "통제를 잃은 캠핑카가 흙먼지를 뒤로 길게 흩날리며 도로 밖 거대한 쓰레기 둔덕을 향해 질주 중인 외관.",
            "characters": [],
            "based_on_beat": 9,
            "original_description": "통제를 잃은 캠핑카가 흙먼지 날리는 도로 밖 거대한 쓰레기 둔덕을 향해 맹렬히 돌진하는 외관.",
            "validator_reason": "'돌진하는' 이동 동작을 흙먼지 방향성을 보존한 질주 중인 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 46,
            "description": "캠핑카의 앞범퍼가 쓰레기 둔덕에 거세게 부딪히며 차체 뒷부분이 허공으로 확 치솟는 전복의 찰나.",
            "characters": [],
            "based_on_beat": 9,
            "character_ids": []
          },
          {
            "shot_index": 47,
            "description": "거꾸로 뒤집힌 채 찌그러진 캠핑카의 잔해에서 뽀얀 먼지와 짙은 연기가 뿜어져 나오는 처참한 전경.",
            "characters": [],
            "based_on_beat": 9,
            "character_ids": []
          },
          {
            "shot_index": 48,
            "description": "뒤집힌 캠핑카 내부, 의식을 잃은 라울과 앰버, 찰리의 몸이 거꾸로 널브러져 있는 참혹한 구도.",
            "characters": [
              "라울",
              "앰버",
              "찰리"
            ],
            "based_on_beat": 10,
            "character_ids": []
          },
          {
            "shot_index": 49,
            "description": "이현우가 피투성이가 된 얼굴로 반쯤 감긴 눈꺼풀을 힘겹게 치켜뜬 클로즈업.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 10,
            "original_description": "이현우가 피투성이가 된 얼굴로 반쯤 감긴 눈꺼풀을 힘겹게 들어 올리는 클로즈업.",
            "validator_reason": "'들어 올리는' 연속 동작을 눈꺼풀을 치켜뜬 결과 상태로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 50,
            "description": "깜빡이는 캠핑카 전구 불빛 아래, 깨진 유리창 밖으로 태진과 은영이 몸을 굽혀 안을 빤히 들여다보는 시선.",
            "characters": [
              "태진",
              "은영"
            ],
            "based_on_beat": 10,
            "character_ids": []
          },
          {
            "shot_index": 51,
            "description": "이현우의 시야 속, 창밖의 태진의 얼굴 위로 죽은 미연의 얼굴이 겹쳐 보이는 주관 시점 찰나.",
            "characters": [
              "이현우",
              "태진",
              "미연"
            ],
            "based_on_beat": 10,
            "character_ids": []
          },
          {
            "shot_index": 52,
            "description": "환각을 본 이현우가 희미한 미소를 띠며 두 눈을 완전히 감고 있는 평온한 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 10,
            "original_description": "환각을 본 이현우가 희미한 미소를 띠며 눈을 완전히 감아버리는 평온한 얼굴.",
            "validator_reason": "'감아버리는' 진행 동작을 눈을 완전히 감은 고정 상태로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 50,
        "scene_heading": "카센터 창고 안 - D",
        "shots": [
          {
            "shot_index": 1,
            "description": "록밴드 포스터가 가득 붙은 어두운 카센터 창고 안, 붕대가 감긴 다리로 침상에 걸터앉은 이현우가 두 눈을 번쩍 뜬 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "거대한 스피커 앞, 단발머리의 태진이 낡은 캠핑카의 후드를 짚고 선 뒷모습.",
            "characters": [
              "태진"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "이현우가 눈을 부릅뜨고 태진의 뒷모습을 매섭게 노려보는 시선.",
            "characters": [
              "이현우",
              "태진"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "이현우의 손이 바닥에 놓인 커다란 펜치를 향해 다급히 뻗어 나간 도중의 손끝.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "고개를 돌린 채 펜치 쪽을 향한 이현우를 보며 한쪽 입꼬리를 올린 태진의 비웃는 얼굴.",
            "characters": [
              "태진",
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "태진이 고개를 돌려 펜치 쪽을 향한 이현우를 보며 한쪽 입꼬리를 올린 비웃는 얼굴.",
            "validator_reason": "'고개를 돌려 보며'라는 연속 동작을 '고개를 돌린 채 보며'라는 하나의 고정된 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "은영이 카센터의 커다란 철문을 안으로 강하게 밀어 여는 찰나.",
            "characters": [
              "은영"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "은영이 손에 든 검은색 용액 병을 태진을 향해 무심하게 뻗은 구도.",
            "characters": [
              "은영",
              "태진"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "태진이 캠핑카의 엔진 투입구 안으로 검은색 용액을 콸콸 쏟아 붓는 힘이 실린 자세.",
            "characters": [
              "태진"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "캠핑카의 심하게 부서진 엔진룸 내부를 태진이 턱을 괸 채 미간을 찌푸리고 내려다보는 구도.",
            "characters": [
              "태진"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "이현우가 펜치를 쥔 채 당황한 표정으로 은영과 태진이 있는 쪽을 바라보는 어리둥절한 얼굴.",
            "characters": [
              "이현우",
              "은영",
              "태진"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 펜치를 쥔 채 당황한 표정으로 은영과 태진을 번갈아 쳐다보는 어리둥절한 얼굴.",
            "validator_reason": "'번갈아 쳐다보는'이라는 시간 흐름에 따른 시선 이동(연속 동작)을 한 방향을 바라보는 고정 상태로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 51,
        "scene_heading": "식당, 카센터 - D",
        "shots": [
          {
            "shot_index": 1,
            "description": "숟가락에 뜬 국밥을 입안 가득 문 채 식사를 하고 있는 앰버와 라울.",
            "characters": [
              "앰버",
              "라울"
            ],
            "based_on_beat": 1,
            "original_description": "컨테이너 간이식당 안, 앰버와 라울이 국밥을 숟가락으로 크게 떠 입에 가득 문 찰나.",
            "validator_reason": "'크게 떠서 무는' 연속 동작을 숟가락을 쥔 채 입안 가득 물고 있는 하나의 고정된 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "두 눈의 푸른빛이 켜진 채 국밥을 먹는 아이들 옆에 우두커니 선 찰리의 전신.",
            "characters": [
              "찰리",
              "아이들"
            ],
            "based_on_beat": 1,
            "original_description": "찰리가 두 눈의 푸른빛을 깜빡이며 국밥을 먹는 아이들 옆에 우두커니 선 전신.",
            "validator_reason": "'깜빡이며'라는 변화 중인 상태를 '푸른빛이 켜진' 정지 상태로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "굳은 표정의 이현우가 식당 문 안으로 한쪽 발을 깊게 들이민 구도.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "이현우를 향해 두 팔을 뻗은 채 앞으로 달려나가는 mid-stride 자세로, 뒷발이 바닥을 차고 몸이 공중에 막 떠오른 찰나.",
            "characters": [
              "앰버",
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "입안 가득 밥을 문 앰버가 이현우를 향해 두 팔을 뻗고 달려오는 공중의 찰나.",
            "validator_reason": "'달려오는'이라는 연속 동작을 몸이 허공에 뜬 추진력이 보존된 mid-stride 정지 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "앰버가 이현우의 허리를 두 팔로 와락 껴안은 구도.",
            "characters": [
              "앰버",
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "두 어깨를 치켜올린 채 입가 금속 부품을 위로 향해 활짝 미소 짓는 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "찰리가 두 어깨를 위아래로 으쓱거리며 입가 금속 부품을 올려 활짝 미소 짓는 찰나.",
            "validator_reason": "'으쓱거리며'라는 되풀이되는 연속 동작을 어깨를 치켜올린 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "미간을 깊게 찌푸린 채 고개를 돌려 찰리의 시선을 차갑게 외면한 이현우의 얼굴.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 미간을 깊게 찌푸린 채 찰리의 시선을 차갑게 외면하며 고개를 돌린 얼굴.",
            "validator_reason": "'외면하며 고개를 돌린'이라는 시간 진행 및 연속 동작을 '고개를 돌려 외면한' 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "눈가 푸른빛이 희미해진 채 상체를 아래로 푹 떨군 찰리의 시무룩한 자태.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "찰리의 눈가 푸른빛이 희미해지며 상체를 아래로 푹 떨군 시무룩한 자태.",
            "validator_reason": "'희미해지며'라는 변화 중인 상태를 '희미해진' 완료 상태로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "은영이 앰버와 라울을 향해 턱을 치켜든 채 진지한 표정으로 쳐다보는 얼굴.",
            "characters": [
              "은영",
              "앰버",
              "라울"
            ],
            "based_on_beat": 1,
            "original_description": "은영이 앰버와 라울을 향해 턱을 치켜들며 진지한 표정으로 쳐다보는 얼굴.",
            "validator_reason": "'치켜들며'라는 동시 진행 동작을 '치켜든' 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "앰버와 라울이 입을 반쯤 벌리고 두 눈을 동그랗게 뜬 놀란 표정.",
            "characters": [
              "앰버",
              "라울"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "찰리가 귀 쪽 금속 부품을 쫑긋 세운 채 이현우와 앰버 쪽에 시선을 고정한 구도.",
            "characters": [
              "찰리",
              "이현우",
              "앰버"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "이현우가 앰버를 향해 눈을 부릅뜨고 입을 크게 벌린 격앙된 얼굴.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "앰버가 이현우를 향해 턱을 치켜들고 다부진 눈빛을 쏘아보는 표정.",
            "characters": [
              "앰버",
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "찰리가 눈가 금속 부품을 아래로 찌그러뜨린 채 어두운 안광으로 허공을 응시하는 침울한 얼굴 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "찰리가 눈가 금속 부품을 아래로 찌그러뜨리며 어두운 안광으로 허공을 응시하는 침울한 얼굴 클로즈업.",
            "validator_reason": "'찌그러뜨리며'라는 동시 진행 동작을 '찌그러뜨린 채'라는 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "아침 햇살 아래 카센터 앞 공터에 세워진 낡은 캠핑카의 평온한 외관.",
            "characters": [],
            "based_on_beat": 0,
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "앰버가 이현우의 어깨를 양손으로 꽉 쥔 채 거칠게 한쪽으로 밀어붙여 몸이 쏠린 찰나.",
            "characters": [
              "앰버",
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "앰버가 이현우의 어깨를 양손으로 꽉 쥔 채 거칠게 흔드는 찰나.",
            "validator_reason": "'흔드는'이라는 반복 및 연속 동작을 능동적 신체 접촉의 힘이 보존된 한 방향의 밀어붙인 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "앰버가 낡은 종이 편지를 이현우의 가슴 팍으로 불쑥 내민 손끝.",
            "characters": [
              "앰버",
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "이현우가 미간을 찌푸린 채 앰버가 내민 편지를 빤히 내려다보는 시선.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "이현우가 종이 편지를 쥔 채 두 눈을 크게 치켜뜨고 상체를 벌떡 일으킨 역동적인 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "이현우가 종이 편지를 쥔 채 두 눈을 크게 치켜뜨며 상체를 벌떡 일으킨 역동적인 찰나.",
            "validator_reason": "'치켜뜨며 일으킨'의 두 동작 연속 진행을 '치켜뜨고 일으킨' 결과 상태의 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 20,
            "description": "앰버가 두 주먹을 꽉 쥔 채 이현우를 향해 화를 내는 굳은 얼굴.",
            "characters": [
              "앰버",
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 21,
            "description": "이현우가 캠핑카 운전석에 앉아 가속 페달을 끝까지 맹렬히 밟아 누른 발끝.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "이현우가 캠핑카 운전석에 앉아 가속 페달을 맹렬히 짓밟는 발끝.",
            "validator_reason": "'짓밟는'이라는 연속 동작을 가속 페달을 누르고 있는 결과 상태로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 22,
            "description": "은영이 캠핑카 창문 밖에서 묵직한 검은색 가방을 이현우 쪽으로 불쑥 내민 찰나.",
            "characters": [
              "은영",
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 23,
            "description": "거친 흙먼지가 바퀴 뒤로 뿜어져 나오는 가운데 카센터 공터 밖을 향해 맹렬히 뻗어나가는 캠핑카의 후면 외관.",
            "characters": [],
            "based_on_beat": 3,
            "original_description": "캠핑카가 거친 흙먼지를 일으키며 카센터 공터를 맹렬히 벗어나는 후면 외관.",
            "validator_reason": "'일으키며 벗어나는'의 연속 이동 상태를 방향성과 추진력이 드러나는 고정된 정지 순간으로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 52,
        "scene_heading": "지방도로 – D",
        "shots": [
          {
            "shot_index": 1,
            "description": "한적한 지방 아스팔트 도로 위, 커다란 밀짚모자와 알록달록한 비닐 우비를 뒤집어쓴 찰리가 우뚝 선 전신.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "찰리가 푹 눌러쓴 밀짚모자 아래로 입가 금속 부품을 굳게 다문 비장한 얼굴 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "찰리의 커다란 노란색 장화가 도로 위 흙바닥에 힘차게 닿은 채 흙먼지가 공중에 피어오른 순간.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "찰리의 커다란 노란색 장화가 도로 위 흙바닥을 힘차게 내디디며 흙먼지를 일으키는 찰나.",
            "validator_reason": "두 가지 동작이 연결된 '~며' 표현을 발이 바닥에 닿은 고정된 자세와 흙먼지가 뜬 결과 상태로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 53,
        "scene_heading": "수도권 도심 민병대 사무실",
        "shots": [
          {
            "shot_index": 1,
            "description": "어두운 민병대 사무실, 커다란 한반도 지도가 쫙 펼쳐진 책상 위로 상체를 숙인 박철진의 구도.",
            "characters": [
              "박철진"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "박철진이 한 손에 쥔 날카로운 다트를 지도 위 허공을 향해 맹렬히 치켜든 찰나.",
            "characters": [
              "박철진"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "박철진이 미간에 굵은 주름을 잡고 분노에 차서 입을 크게 벌린 표정.",
            "characters": [
              "박철진"
            ],
            "based_on_beat": 1,
            "original_description": "박철진이 미간에 굵은 주름을 잡고 분노에 차서 입을 크게 벌린 표.",
            "validator_reason": "오타로 잘린 문장 끝맺음을 '표정'으로 수정하여 정지된 상태를 명확히 함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "박철진의 수하 1이 박철진 옆에서 굳은 표정으로 고개를 살짝 숙인 뻣뻣한 자세.",
            "characters": [
              "박철진",
              "박철진의 수하 1"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "박철진이 다트 끝을 탁자 위 지도를 향해 세차게 내리찍는 타격의 순간.",
            "characters": [
              "박철진"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "박철진의 수하 1을 향해 턱을 비스듬히 치켜든 박철진이 눈꼬리를 좁히며 입술을 여는 찰나.",
            "characters": [
              "박철진",
              "박철진의 수하 1"
            ],
            "based_on_beat": 1,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 54,
        "scene_heading": "국방장관실 - D",
        "shots": [
          {
            "shot_index": 1,
            "description": "화려한 국방장관실, 푹신한 가죽 소파에 기대앉은 국방장관이 한 손으로 턱을 괸 삐딱한 구도.",
            "characters": [
              "국방장관"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "맞은편에 앉은 윤성찬이 두 손을 무릎에 가지런히 모은 채 입꼬리를 씩 올린 미소 띤 얼굴.",
            "characters": [
              "윤성찬"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "국방장관이 미간을 살짝 찌푸린 채 상체를 윤성찬 쪽으로 쑥 들이민 찰나.",
            "characters": [
              "국방장관",
              "윤성찬"
            ],
            "based_on_beat": 1,
            "original_description": "국방장관이 미간을 살짝 찌푸리며 상체를 윤성찬 쪽으로 쑥 들이민 찰나.",
            "validator_reason": "'~며'와 같은 진행형 시간 연결어를 지우고 동시 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "윤성찬이 여유로운 눈웃음을 지은 채 앞을 똑바로 응시하는 확신에 찬 얼굴 클로즈업.",
            "characters": [
              "윤성찬"
            ],
            "based_on_beat": 1,
            "original_description": "윤성찬이 여유로운 눈웃음을 치며 앞을 똑바로 응시하는 확신에 찬 얼굴 클로즈업.",
            "validator_reason": "'~며'와 같은 진행형 시간 연결어를 지우고 동시 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "국방장관이 두 눈을 동그랗게 뜬 채 입을 살짝 벌린 당황한 구도.",
            "characters": [
              "국방장관"
            ],
            "based_on_beat": 1,
            "original_description": "국방장관이 두 눈을 동그랗게 뜨고 입을 살짝 벌린 당황한 구도.",
            "validator_reason": "'~고' 시간 연결어를 지우고 동시 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "윤성찬이 턱을 살짝 치켜든 채 비릿하고 거만한 미소를 띤 찰나.",
            "characters": [
              "윤성찬"
            ],
            "based_on_beat": 1,
            "original_description": "윤성찬이 턱을 살짝 치켜든 채 비릿하고 거만한 미소를 띠는 찰나.",
            "validator_reason": "'띠는'이라는 진행형 표현을 '띤'이라는 완료 상태로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 55,
        "scene_heading": "캠핑차 안 + 지방도로 -D",
        "shots": [
          {
            "shot_index": 1,
            "description": "낡은 캠핑카 뒷좌석에서 앰버와 라울이 젖은 머리카락을 한 채 창밖을 내다보는 찰나.",
            "characters": [
              "앰버",
              "라울"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "운전석의 이현우가 젖은 머리로 앞창문 밖을 응시하며 미간을 찌푸린 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "앰버가 울상을 지은 채 허공을 응시하는 클로즈업.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "라울이 입술을 뾰로통하게 내민 채 앰버를 쳐다보는 얼굴.",
            "characters": [
              "라울",
              "앰버"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "라울이 손가락을 뻗어 창밖의 숲 쪽을 가리키는 찰나.",
            "characters": [
              "라울"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "이현우가 운전대를 두 손으로 꽉 쥔 채 옆으로 거칠게 꺾은 상태로 멈춘 mid-action 구도.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "이현우가 운전대를 두 손으로 꽉 쥔 채 옆으로 거칠게 꺾는 역동적인 구도.",
            "validator_reason": "운전대를 '꺾는' 연속 동작을 꺾은 채 고정된 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "캠핑카가 울창한 산길을 거칠게 질주하며 바퀴 뒤로 흙먼지를 흩뿌리는 채 멈춰 있는 mid-action 외관.",
            "characters": [],
            "based_on_beat": 4,
            "original_description": "캠핑카가 울창한 산길을 거칠게 질주하는 외관.",
            "validator_reason": "'질주하는' 이동 동작을 흙먼지가 날리는 mid-action 상태로 멈춰서 표현함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "캠핑카의 앞바퀴가 질퍽한 늪지대 진흙 속에 푹 빠진 상태에서, 흙탕물이 공중으로 튀어 올라 멈춰 있는 타격의 순간.",
            "characters": [],
            "based_on_beat": 4,
            "original_description": "캠핑카의 앞바퀴가 질퍽한 늪지대 진흙 속으로 푹 빠지며 흙탕물이 튀어 오르는 타격의 순간.",
            "validator_reason": "바퀴가 '빠지며' 일어나는 시간적 진행을 바퀴가 빠진 결과 상태와 튀어오른 물이 허공에 멈춘 순간으로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 56,
        "scene_heading": "익산 어느 늪지대 - D",
        "shots": [
          {
            "shot_index": 1,
            "description": "이현우와 라울이 캠핑카 뒷범퍼에 두 손을 바짝 대고 맹렬히 미는 힘이 실린 뒷모습.",
            "characters": [
              "이현우",
              "라울"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "이현우가 허공을 향해 두 주먹을 번쩍 치켜들고 입을 크게 벌려 포효하는 분노의 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "라울이 이현우를 향해 미간을 찌푸린 채 턱을 치켜든 굳은 표정.",
            "characters": [
              "라울",
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "이현우와 앰버가 늪지대 주변의 덤불 사이를 걷는 중 한쪽 발을 막 들어 올린 mid-stride 전신.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 2,
            "original_description": "이현우와 앰버가 늪지대 주변의 덤불 사이로 발을 내딛는 전신.",
            "validator_reason": "'발을 내딛는' 이동 동작을 추진력이 보존된 mid-stride 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "앰버가 진흙 바닥에 찍힌 거대한 곰 발바닥 모양의 발자국을 향해 손가락을 뻗은 찰나.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "앰버가 발자국을 보며 두 눈을 반짝이고 환하게 미소 짓는 얼굴.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "이현우가 앰버를 향해 미간에 굵은 주름을 잡고 노려보는 매서운 표정.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "황폐한 늪지대 앞에 세워진, 부식된 방사능 마크와 출입 금지 글씨가 적힌 낡은 팻말 클로즈업.",
            "characters": [],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "햇살 비치는 숲속, 찰리가 꽃 위에 앉은 나비를 향해 두 눈의 푸른빛을 빛내는 호기심 어린 구도.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "찰리의 커다란 금속 손가락이 꽃 위의 나비를 향해 조심스레 뻗어 나간 손끝.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "허공에 떠 있는 나비를 향해 고개가 꺾인 채 시선을 고정한 찰리의 모습.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 4,
            "original_description": "나비가 허공으로 날아오르고 찰리가 고개를 들어 나비를 쫓는 찰나.",
            "validator_reason": "'날아오르고'와 '고개를 들어 쫓는' 연속 동작을 나비를 향해 시선이 고정된 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "찰리의 거대한 금속 몸통 위로 두꺼운 밧줄 그물망이 맹렬히 덮쳐오는 공중의 순간.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "다른 장소의 이현우와 앰버가 숲 저편을 향해 고개를 완전히 돌린 채 시선이 고정된 찰나.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 5,
            "original_description": "다른 장소의 이현우와 앰버가 동시에 숲 저편으로 고개를 휙 돌리는 찰나.",
            "validator_reason": "'고개를 휙 돌리는' 진행 동작을 고개가 이미 돌아간 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "이현우와 앰버가 울창한 나무 사이를 달리는 중, 한쪽 발이 들려 있고 옷자락이 뒤로 흩날리는 역동적인 mid-stride 전신.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 5,
            "original_description": "이현우와 앰버가 울창한 나무 사이를 맹렬히 내달리는 역동적인 전신.",
            "validator_reason": "'내달리는' 이동 동작을 motion direction이 보존된 mid-stride 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "이현우와 앰버가 텅 빈 숲속 공터에 멈춰 선 채, 당황한 표정으로 한쪽을 향해 시선이 돌아가 있는 구도.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 6,
            "original_description": "이현우와 앰버가 텅 빈 숲속 공터에 멈춰 서서 당황한 표정으로 주변을 두리번거리는 구도.",
            "validator_reason": "'두리번거리는' 반복 진행 동작을 한 곳에 시선이 고정된 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "날카로운 화살촉이 앰버의 얼굴 옆 나무 기둥에 깊숙이 꽂히며 나뭇조각이 튀는 타격의 순간.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "앰버가 꽂힌 화살을 보며 두 눈을 동그랗게 뜨고 얼어붙은 표정.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "발밑 땅바닥이 아래로 푹 꺼진 구덩이를 향해 이현우와 앰버의 상체가 기울어져 허공에 뜬 mid-action 찰나.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 6,
            "original_description": "이현우와 앰버의 발밑 땅바닥이 아래로 푹 꺼지며 두 사람의 상체가 허공으로 확 떨어지는 찰나.",
            "validator_reason": "'꺼지며 떨어지는' 인과적 연속 동작을 구덩이 아래로 상체가 기울어진 하나의 mid-action 찰나로 통합함.",
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "라울이 캠핑카 옆에서 숲 쪽을 향해 두 눈을 크게 확장한 놀란 얼굴.",
            "characters": [
              "라울"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 20,
            "description": "구덩이 아래에서 올려다본 하늘을 배경으로, 형형색색의 하회탈 가죽 마스크를 쓴 아시아계 무장 괴한 여럿이 창과 활을 든 채 내려다보는 위압적인 구도.",
            "characters": [
              "아시아계 무장 괴한"
            ],
            "based_on_beat": 7,
            "character_ids": []
          },
          {
            "shot_index": 21,
            "description": "하회탈 마스크를 쓴 아시아계 무장 괴한 하나가 긴 대롱을 입에 물고 양볼을 팽팽하게 부풀린 격발의 순간.",
            "characters": [
              "아시아계 무장 괴한"
            ],
            "based_on_beat": 7,
            "original_description": "하회탈 마스크를 쓴 아시아계 무장 괴한 하나가 긴 대롱을 입에 물고 아래를 향해 마취 화살을 훅 부는 격발의 순간.",
            "validator_reason": "'훅 부는' 진행 동작을 양볼이 부풀어 오른 격발의 고정 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 22,
            "description": "목에 마취 화살이 꽂힌 이현우의 두 눈이 반쯤 감긴 채 상체가 바닥을 향해 기울어진 위태로운 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 7,
            "original_description": "목에 마취 화살이 꽂힌 이현우의 두 눈이 반쯤 감기며 상체가 바닥을 향해 푹 꺾이는 위태로운 찰나.",
            "validator_reason": "'감기며 꺾이는' 연속 상태 변화를 눈이 감긴 채 상체가 기울어진 고정 상태로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 57,
        "scene_heading": "익산 마을 - D",
        "shots": [
          {
            "shot_index": 1,
            "description": "트럭 짐칸의 낡은 철창 케이지 안, 바닥에 쓰러진 이현우가 눈꺼풀을 힘겹게 들어 올리는 중의 한 순간이 포착된 클로즈업.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "트럭 짐칸의 낡은 철창 케이지 안, 바닥에 쓰러진 이현우가 눈꺼풀을 힘겹게 들어 올리는 클로즈업.",
            "validator_reason": "상태 변화인 '들어 올리는'의 진행 중인 위상을 멈춰 단일 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "앰버가 철창 안에서 이현우를 향해 두 손을 뻗은 채 걱정스레 내려다보는 구도.",
            "characters": [
              "앰버",
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "앰버가 철창 안에서 이현우를 향해 두 손을 뻗어 걱정스레 내려다보는 구도.",
            "validator_reason": "시간 순서상 나열된 '뻗어 내려다보는'을 결과 상태가 유지된 자세인 '뻗은 채'로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "이현우가 상체를 일으키는 도중의 mid-action 자세로 앰버를 향해 다급한 표정으로 입을 벌린 찰나.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 상체를 일으켜 세우며 앰버를 향해 다급한 표정으로 입을 벌린 찰나.",
            "validator_reason": "두 가지 연속된 동작('일으켜 세우며', '벌린')을 상체를 일으키는 도중의 고정된 mid-action 자세로 병합함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "철창 밖으로 창과 몽둥이를 치켜든 하회탈 마스크의 아시아계 군중이 입을 크게 벌려 함성을 지르는 역동적인 전경.",
            "characters": [
              "하회탈 마스크의 아시아계 군중"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "하회탈 마스크를 쓴 물을 나눠주는 사제복 남자가 투명한 물병을 군중 쪽으로 불쑥 내민 채 고정된 상태의 손끝.",
            "characters": [
              "사제복 남자"
            ],
            "based_on_beat": 2,
            "original_description": "하회탈 마스크를 쓴 물을 나눠주는 사제복 남자가 투명한 물병을 군중 쪽으로 불쑥 내미는 손끝.",
            "validator_reason": "진행 동작인 '내미는'을 동작 완료 상태인 '내민 채 고정된' 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "얼굴 피부가 녹아내려 짓무른 아시아계 난민들이 물병을 향해 두 팔을 맹렬히 뻗으며 서로 뒤엉킨 찰나.",
            "characters": [
              "아시아계 난민들"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "철창 너머 멀리 마을 한가운데 우뚝 솟은 거대한 금속 물탱크 탑의 위압적인 외관.",
            "characters": [],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "예수 동상이 세워진 낡은 성당 건물 앞에 트럭이 거칠게 멈춰 선 외관.",
            "characters": [],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "하회탈 마스크를 쓴 아시아계 무장 병사들이 철창 안에서 결박된 이현우의 양팔을 바깥으로 거칠게 당겨 팽팽하게 힘이 실린 mid-action 찰나.",
            "characters": [
              "아시아계 무장 병사들",
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "하회탈 마스크를 쓴 아시아계 무장 병사들이 철창 안에서 결박된 이현우의 양팔을 바깥으로 거칠게 끄집어내는 힘이 실린 찰나.",
            "validator_reason": "연속 동작 '끄집어내는'을 능동적 접촉과 신체 역학의 힘이 실린 mid-action 순간으로 동결하여 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "두 팔을 벌린 거대한 예수 동상 얼굴 위에 기괴한 하회탈 마스크가 씌워진 상태의 클로즈업.",
            "characters": [],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "밧줄에 결박된 이현우와 앰버가 하회탈 마스크의 아시아계 병사들에게 등 떠밀린 힘에 의해 성당 문 안쪽으로 몸이 비틀어지게 쏠린 mid-action 뒷모습.",
            "characters": [
              "이현우",
              "앰버",
              "아시아계 병사들"
            ],
            "based_on_beat": 3,
            "original_description": "밧줄에 결박된 이현우와 앰버가 하회탈 마스크의 아시아계 병사들에게 등 떠밀려 성당 문 안으로 비틀대며 끌려 들어가는 뒷모습.",
            "validator_reason": "시간 진행을 포함하는 '끌려 들어가는' 연속 동작을 등 떠밀린 추진력이 보존된 자세의 mid-action 순간으로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 58,
        "scene_heading": "어느 성당 안- D",
        "shots": [
          {
            "shot_index": 1,
            "description": "파괴된 성당 내부, 형형색색의 하회탈 마스크를 쓴 아시아계 궁사들이 2층 발코니에서 아래를 향해 일제히 활시위를 팽팽하게 당긴 위압적인 구도.",
            "characters": [
              "아시아계 궁사들"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "부서진 성당 지붕 틈과 스테인드글라스 너머로 눈부신 빛줄기가 어두운 단상을 향해 길게 뻗어 내리는 성스러운 전경.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "하회탈 마스크의 아시아계 병사가 맹렬히 내리친 두꺼운 몽둥이가 이현우의 오금에 닿은 타격의 순간.",
            "characters": [
              "아시아계 병사",
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "하회탈 마스크의 아시아계 병사가 두꺼운 몽둥이로 이현우의 오금을 맹렬히 내리치는 타격의 순간.",
            "validator_reason": "'내리치는'이라는 동작을 몽둥이가 목표에 닿은 능동적 mid-impact 순간으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "타격을 입은 이현우와 앰버가 낡은 성당 바닥에 두 무릎을 꿇은 채 고통스럽게 미간을 찌푸린 얼굴.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "성당 안을 가득 메운 아시아계 난민 군중이 바닥을 향해 일제히 머리를 푹 숙인 굴복의 구도.",
            "characters": [
              "아시아계 난민 군중"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "황금빛 하회탈 마스크를 쓴 장백산이 화려한 단상 위 거대한 의자에 육중한 몸을 깊숙이 기대앉은 위압적인 전신.",
            "characters": [
              "장백산"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "선지자가 단상의 장백산 귓가로 상체를 바짝 기울인 채 은밀하게 속삭이는 자세.",
            "characters": [
              "선지자",
              "장백산"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "무릎 꿇은 이현우가 턱을 빳빳하게 치켜든 채 장백산을 향해 눈을 부릅뜨고 쏘아붙이는 반항적인 얼굴.",
            "characters": [
              "이현우",
              "장백산"
            ],
            "based_on_beat": 2,
            "original_description": "무릎 꿇은 이현우가 턱을 빳빳하게 치켜들고 장백산을 향해 눈을 부릅뜨며 쏘아붙이는 반항적인 얼굴.",
            "validator_reason": "'치켜들고', '쏘아붙이는' 등의 연속 동작을 단일 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "하회탈 마스크의 아시아계 병사가 끝에서 불꽃이 튀는 전기 몽둥이를 이현우의 등판에 맹렬히 찔러 넣은 타격의 찰나.",
            "characters": [
              "아시아계 병사",
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "하회탈 마스크의 아시아계 병사가 끝에서 불꽃이 튀는 전기 몽둥이를 이현우의 등판에 맹렬히 찔러 넣는 타격의 찰나.",
            "validator_reason": "'찔러 넣는'이라는 연속 동작을 몽둥이가 등에 닿은 능동적 mid-impact 순간으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "전기 충격을 받은 이현우가 입을 크게 벌린 채 바닥을 향해 상체가 푹 꺾인 위태로운 순간.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "전기 충격을 받은 이현우가 입을 크게 벌린 채 바닥을 향해 상체가 푹 꺾이는 위태로운 순간.",
            "validator_reason": "'꺾이는'이라는 변화/진행 표현을 고정된 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "앰버가 쓰러진 이현우를 향해 상체를 다급하게 숙인 채 두 눈을 동그랗게 뜬 놀란 표정.",
            "characters": [
              "앰버",
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "앰버가 쓰러진 이현우를 향해 상체를 다급하게 숙이며 두 눈을 동그랗게 뜬 놀란 표정.",
            "validator_reason": "'숙이며'와 '뜬'이 결합된 연속 동작을 단일 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "선지자가 앰버를 향해 앙상한 손가락을 뻗은 채 미간을 찌푸리고 고함치는 찰나.",
            "characters": [
              "선지자",
              "앰버"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "단상에 앉은 장백산이 허공을 향해 한쪽 손바닥을 번쩍 치켜든 멈춤의 동작.",
            "characters": [
              "장백산"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "장백산이 굵은 검지손가락으로 단상 옆 어두운 입구 쪽을 정확히 가리키고 있는 손끝 클로즈업.",
            "characters": [
              "장백산"
            ],
            "based_on_beat": 3,
            "original_description": "장백산이 굵은 검지손가락을 뻗어 단상 옆 어두운 입구 쪽을 정확히 가리키는 손끝 클로즈업.",
            "validator_reason": "'뻗어'와 '가리키는'의 시간차 동작을 하나의 고정된 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "하회탈 마스크의 아시아계 병사들이 거대한 찰리가 갇힌 강철 케이지에 두 손을 짚고 성당 안쪽을 향해 힘껏 밀고 있는 mid-action 구도.",
            "characters": [
              "아시아계 병사들",
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "하회탈 마스크의 아시아계 병사들이 거대한 찰리가 갇힌 강철 케이지를 성당 안으로 거칠게 밀어붙이는 외관.",
            "validator_reason": "'밀어붙이는' 이동/추진 동작을 힘의 방향과 자세가 보존된 mid-action 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "철창 안의 찰리를 향해 두 눈을 크게 치켜뜬 채 반가워하는 앰버의 환한 얼굴 클로즈업.",
            "characters": [
              "앰버",
              "찰리"
            ],
            "based_on_beat": 4,
            "original_description": "앰버가 철창 안의 찰리를 발견하고 두 눈을 크게 치켜뜨며 반가워하는 환한 얼굴 클로즈업.",
            "validator_reason": "'발견하고'와 '치켜뜨며'의 순차적 반응을 단일 고정 표정으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "앰버가 선지자를 향해 두 주먹을 꽉 쥔 채 턱을 치켜들고 항의하는 다부진 표정.",
            "characters": [
              "앰버",
              "선지자"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "성당 안의 아시아계 난민 군중이 앰버를 향해 고개를 젖힌 채 입을 크게 벌리고 폭소하는 역동적인 구도.",
            "characters": [
              "아시아계 난민 군중",
              "앰버"
            ],
            "based_on_beat": 4,
            "original_description": "성당 안의 아시아계 난민 군중이 앰버를 향해 고개를 젖히고 입을 크게 벌려 폭소하는 역동적인 구도.",
            "validator_reason": "'젖히고', '벌려' 등 순차적 동작의 연결을 동시적 상태인 '~한 채'로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "철창 안의 찰리가 두 눈의 푸른빛을 빛낸 채 금속 고개를 옆으로 깊게 갸우뚱한 의아한 자태.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 4,
            "original_description": "철창 안의 찰리가 두 눈의 푸른빛을 빛낸 채 금속 고개를 옆으로 깊게 갸우뚱하는 의아한 자태.",
            "validator_reason": "'갸우뚱하는'이라는 움직임 표현을 '갸우뚱한' 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 20,
            "description": "선지자가 입꼬리를 한쪽으로 비스듬히 올린 채 비열하게 조소하는 찰나.",
            "characters": [
              "선지자"
            ],
            "based_on_beat": 4,
            "original_description": "선지자가 입꼬리를 한쪽으로 비스듬히 올리며 비열하게 조소하는 찰나.",
            "validator_reason": "'올리며'라는 움직임을 결과 상태인 '올린 채'로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 21,
            "description": "상체를 일으킨 이현우가 선지자를 향해 눈에 핏대를 세운 분노의 얼굴.",
            "characters": [
              "이현우",
              "선지자"
            ],
            "based_on_beat": 5,
            "original_description": "바닥의 이현우가 상체를 벌떡 일으키며 선지자를 향해 눈에 핏대를 세운 분노의 얼굴.",
            "validator_reason": "'일으키며'라는 동작 진행과 '세운' 결과 상태가 섞여 있어, 일으킨 자세로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 22,
            "description": "이현우가 옆에 선 하회탈 마스크 병사의 어깨를 두 손으로 빈틈없이 꽉 움켜쥔 타격감 있는 클로즈업.",
            "characters": [
              "이현우",
              "하회탈 마스크 병사"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 23,
            "description": "이현우의 두 손에 잡혀 허공으로 들어올려진 아시아계 병사가 바닥을 향해 꺾여 있는 공중의 찰나.",
            "characters": [
              "이현우",
              "아시아계 병사"
            ],
            "based_on_beat": 5,
            "original_description": "이현우의 힘에 제압당한 아시아계 병사가 허공에서 바닥을 향해 맹렬히 내동댕이쳐지는 공중의 찰나.",
            "validator_reason": "'내동댕이쳐지는'이라는 수동적 변화 동작을 힘의 출처(이현우)가 보이는 mid-action 공중 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 24,
            "description": "바닥에 엎어진 병사의 목을 이현우가 뒤에서 두 팔로 꽉 틀어막은 거친 제압의 자세.",
            "characters": [
              "이현우",
              "병사"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 25,
            "description": "성당 안의 아시아계 군중이 이현우 쪽을 향해 일제히 두 눈을 크게 확장한 당황한 구도.",
            "characters": [
              "아시아계 군중",
              "이현우"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 26,
            "description": "황금빛 하회탈 마스크를 쓴 장백산이 이현우를 향해 굵은 검지손가락을 꼿꼿이 뻗은 위압적인 자세.",
            "characters": [
              "장백산",
              "이현우"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 27,
            "description": "허공을 날아온 날카로운 화살촉이 이현우 품에 안긴 아시아계 병사의 가슴팍에 정통으로 꽂힌 타격의 순간.",
            "characters": [
              "이현우",
              "아시아계 병사"
            ],
            "based_on_beat": 6,
            "original_description": "허공을 가른 날카로운 화살촉이 이현우 품에 안긴 아시아계 병사의 가슴팍에 정통으로 꽂히는 타격의 순간.",
            "validator_reason": "'꽂히는'이라는 진행 동작을 꽂힌 직후의 타격 순간으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 28,
            "description": "2층 발코니의 하회탈 마스크 궁사들이 활시위를 이현우와 앰버의 이마를 향해 정확히 겨눈 날 선 구도.",
            "characters": [
              "하회탈 마스크 궁사들",
              "이현우",
              "앰버"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 29,
            "description": "단상의 장백산이 두 주먹을 꽉 쥔 채 앞으로 몸을 내밀고 고함치는 찰나.",
            "characters": [
              "장백산"
            ],
            "based_on_beat": 7,
            "original_description": "단상의 장백산이 두 주먹을 꽉 쥔 채 앞으로 몸을 내밀며 고함치는 찰나.",
            "validator_reason": "'내밀며'라는 동작 진행을 고정된 자세인 '내민 채'로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 30,
            "description": "몽둥이를 든 하회탈 마스크 병사들이 이현우와 앰버의 양팔을 바닥으로 맹렬히 짓누르고 있는 제압의 구도.",
            "characters": [
              "하회탈 마스크 병사들",
              "이현우",
              "앰버"
            ],
            "based_on_beat": 7,
            "original_description": "몽둥이를 든 하회탈 마스크 병사들이 이현우와 앰버의 양팔을 바닥으로 맹렬히 짓누르는 제압의 구도.",
            "validator_reason": "능동적 접촉 원칙에 따라 '짓누르는' 행위를 '짓누르고 있는' 고정 상태로 명확히 함.",
            "character_ids": []
          },
          {
            "shot_index": 31,
            "description": "찰리가 갇힌 강철 케이지의 낡은 철문이 닫힌 채, 누군가의 손이 굵은 자물쇠를 채우고 있는 손끝 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 7,
            "original_description": "찰리가 갇힌 강철 케이지의 낡은 철문이 거칠게 닫히며 굵은 자물쇠가 채워지는 손끝 클로즈업.",
            "validator_reason": "'닫히며'와 '채워지는'의 연속된 시간 진행을 문이 닫힌 상태에서 자물쇠를 조작하는 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 32,
            "description": "바닥에 짓눌린 앰버가 멀어지고 있는 찰리를 향해 고개를 꺾은 채 눈물범벅인 얼굴로 소리치는 애절한 표정.",
            "characters": [
              "앰버",
              "찰리"
            ],
            "based_on_beat": 7,
            "original_description": "바닥에 짓눌린 앰버가 멀어지는 찰리를 향해 고개를 꺾은 채 눈물범벅인 얼굴로 소리치는 애절한 표정.",
            "validator_reason": "'멀어지는'이라는 변화 상태를 이동 중인 한 순간으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 33,
            "description": "숲을 빠져나온 라울이 어두운 마을 한가운데 환하게 불을 밝힌 거대한 물탱크 탑을 응시하는 뒷모습.",
            "characters": [
              "라울"
            ],
            "based_on_beat": 7,
            "character_ids": []
          },
          {
            "shot_index": 34,
            "description": "라울이 미간에 굵은 주름을 잡은 채 입술을 꽉 깨물고 두 눈을 동그랗게 뜬 불안한 얼굴 클로즈업.",
            "characters": [
              "라울"
            ],
            "based_on_beat": 7,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 59,
        "scene_heading": "59. 지하감옥 - D",
        "shots": [
          {
            "shot_index": 1,
            "description": "어두운 지하감옥 안, 앰버가 상체를 웅크린 채 고통스럽게 기침하는 찰나.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "이현우가 감옥 쇠창살을 두 손으로 꽉 쥔 채 밖을 향해 입을 크게 벌려 고함치는 분노의 표정.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "감옥 구석 바닥에서 수빈이 상체를 절반쯤 일으켜 세운 자세.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 1,
            "original_description": "감옥 구석 바닥에 앉아있던 수빈이 상체를 천천히 일으켜 세우는 도중의 자세.",
            "validator_reason": "앉아있던 것과 일으켜 세우는 도중의 시간 경과를 한 순간의 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "수빈이 바닥에 널브러진 마른 건초 더미를 한 손으로 꽉 움켜쥔 손끝 클로즈업.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "수빈이 흙바닥에 고인 웅덩이 물속으로 건초 더미를 푹 담그는 찰나.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "수빈이 젖은 건초 더미를 쥔 채 이현우와 앰버 쪽을 향해 한 발을 내딛은 mid-stride 자세의 전신.",
            "characters": [
              "수빈",
              "이현우",
              "앰버"
            ],
            "based_on_beat": 1,
            "original_description": "수빈이 젖은 건초 더미를 쥔 채 이현우와 앰버 쪽으로 성큼 다가서는 전신.",
            "validator_reason": "다가서는 이동 동작을 mid-action freeze 규칙에 따라 한 발을 내딛은 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "이현우가 수빈을 경계하며 앰버의 어깨를 두 팔로 꽉 감싸 안은 방어적인 구도.",
            "characters": [
              "이현우",
              "수빈",
              "앰버"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 수빈을 경계하며 앰버의 어깨를 두 팔로 와락 감싸 안는 방어적인 구도.",
            "validator_reason": "감싸 안는 진행형 동작을 이미 감싸 안은 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "수빈이 젖은 건초 더미를 앰버의 코앞에 바짝 가져다 댄 손끝.",
            "characters": [
              "수빈",
              "앰버"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "앰버가 두 눈을 감은 채 평온한 표정으로 안정적인 숨을 들이쉬는 얼굴.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "이현우가 눈을 크게 치켜뜨고 상처 난 수빈의 꼬질꼬질한 얼굴을 빤히 쳐다보는 시선.",
            "characters": [
              "이현우",
              "수빈"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "이현우가 굳게 닫힌 감옥 쇠창살에 자신의 어깨를 맹렬히 내다 꽂아 닿은 충돌의 순간.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 굳게 닫힌 감옥 쇠창살에 자신의 어깨를 맹렬히 내다 꽂는 타격의 순간.",
            "validator_reason": "동작의 능동성을 보존하기 위해 부딪히는 순간인 mid-impact 모먼트로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "쇠창살에서 튕겨져 나온 이현우가 미간을 깊게 찌푸리며 분노한 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "수빈이 무심한 표정으로 흙 묻은 감자 하나를 이현우 쪽으로 불쑥 내민 손끝.",
            "characters": [
              "수빈",
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "이현우가 수빈이 내민 감자에 치아를 깊게 박아 넣은 찰나.",
            "characters": [
              "이현우",
              "수빈"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 수빈이 내민 감자를 자신의 입으로 크게 베어 무는 찰나.",
            "validator_reason": "베어 무는 연속 동작을 치아가 박힌 한 순간으로 멈춤.",
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "이현우가 한 입 베어 문 감자를 앰버를 향해 조심스레 뻗어 멈춘 구도.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 한 입 베어 문 감자를 앰버를 향해 조심스레 내미는 구도.",
            "validator_reason": "내미는 동작을 이미 뻗은 채 고정된 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "이현우의 회상 속, 낡은 사제복을 입은 물을 나눠주는 사제복 남자가 아시아계 난민 군중을 향해 투명한 물병을 불쑥 내미는 손끝.",
            "characters": [
              "사제복 남자",
              "아시아계 난민 군중"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "지하감옥 바닥, 앰버가 이현우의 무릎에 머리를 기댄 채 평온하게 잠든 구도.",
            "characters": [
              "앰버",
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "이현우가 허공을 응시하며 눈을 가늘게 뜬 채 깊은 생각에 잠긴 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "이현우가 수빈을 향해 한쪽 입꼬리를 올린 채 어이없다는 듯 피식 비웃는 표정.",
            "characters": [
              "이현우",
              "수빈"
            ],
            "based_on_beat": 4,
            "original_description": "이현우가 수빈을 향해 한쪽 입꼬리를 올리며 어이없다는 듯 피식 비웃는 찰나.",
            "validator_reason": "올리며 비웃는 연속 동작을 이미 입꼬리가 올라간 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 20,
            "description": "수빈이 이현우의 코앞까지 성큼성큼 다가선 위압적인 자세.",
            "characters": [
              "수빈",
              "이현우"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 21,
            "description": "수빈이 두 손으로 자신의 티셔츠 밑단을 꽉 쥔 채 가슴 위까지 확 들어 올린 고정된 자세.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 4,
            "original_description": "수빈이 두 손으로 자신의 티셔츠 밑단을 꽉 쥔 채 가슴 위까지 확 들어 올리는 역동적인 찰나.",
            "validator_reason": "들어 올리는 역동적인 동작을 이미 들어 올린 찰나의 결과 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 22,
            "description": "이현우가 두 눈을 질끈 감은 채 고개를 옆으로 돌린 당황한 표정.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 4,
            "original_description": "이현우가 두 눈을 질끈 감은 채 고개를 옆으로 휙 돌려버리는 당황한 표정.",
            "validator_reason": "고개를 돌려버리는 연속된 움직임을 고개를 돌린 결과 상태로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 23,
            "description": "이현우가 고개를 살짝 돌린 채 수빈의 복부 쪽으로 시선을 고정하고 눈동자가 크게 확장된 얼굴.",
            "characters": [
              "이현우",
              "수빈"
            ],
            "based_on_beat": 4,
            "original_description": "이현우가 고개를 살짝 돌려 수빈의 복부 쪽으로 시선을 던지며 눈동자가 크게 확장된 얼굴.",
            "validator_reason": "돌리며 시선을 던지는 시간 연결 동작을 돌린 채 시선을 고정한 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 24,
            "description": "벌겋게 짓무르고 피부가 흉측하게 벗겨진 수빈의 피폭된 복부 상처 클로즈업.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 25,
            "description": "수빈의 회상 속, 멀리 낡은 폐발전소가 보이는 황량한 들판 위를 정한수와 수빈이 나란히 걷는 도중 한쪽 다리를 내딛은 mid-stride 자세의 전경.",
            "characters": [
              "정한수",
              "수빈"
            ],
            "based_on_beat": 5,
            "original_description": "수빈의 회상 속, 멀리 낡은 폐발전소가 보이는 황량한 들판 위를 정한수와 수빈이 나란히 걷는 전경.",
            "validator_reason": "걷는 이동 동작에 방향성을 보존하여 mid-stride 모먼트로 재작성함.",
            "character_ids": []
          },
          {
            "shot_index": 26,
            "description": "수빈의 회상 속, 메마른 흙바닥 틈새에 피어난 작은 노란 꽃 한 송이를 수빈이 호기심 어린 눈으로 빤히 내려다보는 시선.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 27,
            "description": "수빈의 회상 속, 어두운 동굴 안에서 정한수와 수빈이 눈부신 손전등 불빛을 앞을 향해 길게 뻗은 구도.",
            "characters": [
              "정한수",
              "수빈"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 28,
            "description": "수빈의 회상 속, 에메랄드빛으로 영롱하게 빛나는 맑은 동굴 샘물의 고요한 수면 클로즈업.",
            "characters": [],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 29,
            "description": "수빈의 회상 속, 수빈이 한 손에 쥔 방사능 측정기의 액정 화면에 '0'이라는 숫자가 선명하게 떠오른 클로즈업.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 30,
            "description": "수빈의 회상 속, 수빈이 정한수를 향해 두 눈을 크게 치켜뜨고 활짝 웃는 환한 얼굴.",
            "characters": [
              "수빈",
              "정한수"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 31,
            "description": "수빈의 회상 속, 마을 수로를 따라 에메랄드빛 맑은 물이 거세게 콸콸 쏟아져 내리는 역동적인 찰나.",
            "characters": [],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 32,
            "description": "수빈의 회상 속, 아시아계 난민 무리가 쏟아지는 물을 두 손으로 받치고 입을 벌려 환호하는 고정된 구도.",
            "characters": [
              "아시아계 난민 무리"
            ],
            "based_on_beat": 5,
            "original_description": "수빈의 회상 속, 아시아계 난민 무리가 쏟아지는 물을 두 손으로 받으며 환호하는 왁자지껄한 구도.",
            "validator_reason": "받으며 환호하는 동시 진행 동작을 한 순간의 고정된 자세로 변경함.",
            "character_ids": []
          },
          {
            "shot_index": 33,
            "description": "수빈의 회상 속, 정한수와 수빈이 쏟아지는 물기둥을 사이에 두고 마주 보며 미소 짓는 찰나.",
            "characters": [
              "정한수",
              "수빈"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 34,
            "description": "수빈의 회상 속, 배급 줄에 선 아시아계 난민들 사이에서 낡은 사제복을 입은 마른 체격의 장백산이 앞을 무심하게 응시하는 모습.",
            "characters": [
              "아시아계 난민들",
              "장백산"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 35,
            "description": "수빈의 회상 속, 수빈이 배급 줄의 장백산을 향해 눈을 가늘게 뜨고 유심히 관찰하는 시선.",
            "characters": [
              "수빈",
              "장백산"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 36,
            "description": "수빈의 회상 속, 배낭과 무기를 든 정한수와 아시아계 청년들이 수빈을 향해 한 손을 든 채 인사하는 고정된 구도.",
            "characters": [
              "정한수",
              "아시아계 청년들",
              "수빈"
            ],
            "based_on_beat": 5,
            "original_description": "수빈의 회상 속, 배낭과 무기를 든 정한수와 아시아계 청년들이 수빈을 향해 손을 흔들어 인사하는 구도.",
            "validator_reason": "손을 흔드는 동작을 손을 치켜든 고정된 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 37,
            "description": "수빈의 회상 속, 정한수와 청년들의 뒷모습이 황량한 산등성이 쪽을 향해 걷는 도중 한 발을 내딛은 mid-stride 뒷모습의 외관.",
            "characters": [
              "정한수",
              "청년들"
            ],
            "based_on_beat": 5,
            "original_description": "수빈의 회상 속, 정한수와 청년들의 뒷모습이 황량한 산등성이 너머로 작게 멀어지는 외관.",
            "validator_reason": "멀어지는 시간 경과 표현을 걷는 도중의 mid-action 모먼트로 대체함.",
            "character_ids": []
          },
          {
            "shot_index": 38,
            "description": "수빈의 회상 속, 성인이 된 수빈이 텅 빈 산등성이 쪽을 향해 턱을 괸 채 아련하게 바라보는 얼굴.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 39,
            "description": "수빈의 회상 속, 장백산이 수빈의 등 뒤에서 입꼬리를 씩 올린 채 비열하게 웃고 있는 얼굴.",
            "characters": [
              "장백산",
              "수빈"
            ],
            "based_on_beat": 5,
            "original_description": "수빈의 회상 속, 장백산이 수빈의 등 뒤에서 입꼬리를 씩 올리며 비열하게 웃는 찰나.",
            "validator_reason": "올리며 웃는 동시 동작을 입꼬리가 올라간 상태의 한 표정으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 40,
            "description": "수빈의 회상 속, 흑백 판화 스타일의 그림 안에서 형형색색의 하회탈 마스크를 쓴 병사들이 창을 든 채 난민들을 학살하는 끔찍한 구도.",
            "characters": [
              "병사들",
              "난민들"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 41,
            "description": "수빈의 회상 속, 흑백 판화 스타일의 그림 안에서 아시아계 난민들이 좁은 쇠창살 감옥 안에 갇혀 고통스러워하는 장면.",
            "characters": [
              "아시아계 난민들"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 42,
            "description": "수빈의 회상 속, 흑백 판화 스타일의 그림 안에서 거대한 금속 물탱크 탑이 마을 한가운데 세워져 있는 웅장한 전경.",
            "characters": [],
            "based_on_beat": 5,
            "original_description": "수빈의 회상 속, 흑백 판화 스타일의 그림 안에서 거대한 금속 물탱크 탑이 마을 한가운데 세워지는 웅장한 전경.",
            "validator_reason": "세워지는 변화의 위상을 판화 안의 고정된 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 43,
            "description": "수빈의 회상 속, 흑백 판화 스타일의 그림 안에서 황금빛 하회탈 마스크를 쓴 뚱뚱해진 장백산이 거대한 의자에 앉아 군중을 내려다보는 위압적인 모습.",
            "characters": [
              "장백산",
              "군중"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 44,
            "description": "현재의 지하감옥 안, 수빈이 고개를 푹 숙인 채 씁쓸한 표정으로 흙바닥을 응시하는 모습.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 45,
            "description": "이현우가 수빈을 향해 턱을 치켜들고 미간을 찌푸린 채 냉소적인 얼굴로 매섭게 쏘아보는 시선.",
            "characters": [
              "이현우",
              "수빈"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 46,
            "description": "수빈이 눈썹을 늘어뜨린 채 상처받은 표정으로 입술을 꽉 깨문 클로즈업.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 47,
            "description": "이현우가 미안한 듯 입술을 비죽 내민 채 커다란 감자에 맹렬히 치아를 박아 넣은 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 6,
            "original_description": "이현우가 미안한 듯 입술을 비죽 내밀고 손에 든 커다란 감자를 맹렬히 베어 무는 찰나.",
            "validator_reason": "내밀고 베어 무는 두 순간을 치아가 감자에 박힌 하나의 찰나로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 48,
            "description": "둥둥거리는 북소리가 울리는 감옥 밖을 향해, 이현우가 고개를 휙 돌린 채 두 눈을 크게 치켜뜬 긴장된 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 7,
            "original_description": "둥둥거리는 북소리가 울리는 감옥 밖을 향해, 이현우가 고개를 휙 돌리며 두 눈을 크게 치켜뜬 긴장된 얼굴.",
            "validator_reason": "고개를 돌리며 표정을 짓는 연속된 변화를 고개를 돌린 상태로 멈춤.",
            "character_ids": []
          },
          {
            "shot_index": 49,
            "description": "이현우가 잠든 앰버를 깨우기 위해 양어깨를 두 손으로 강하게 움켜쥐고 힘을 준 고정된 자세.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 7,
            "original_description": "이현우가 잠든 앰버의 양어깨를 두 손으로 꽉 움켜쥔 채 거칠게 흔들어 깨우는 역동적인 자세.",
            "validator_reason": "흔들어 깨우는 움직임을 어깨를 꽉 쥔 상태의 고정된 단일 모먼트로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 60,
        "scene_heading": "60. 찰리 감옥 + 격투장 + 현우 감옥 - D",
        "shots": [
          {
            "shot_index": 1,
            "description": "어두운 케이지 안, 찰리가 고개를 한쪽으로 돌려 주변을 살피는 자세.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "어두운 케이지 안, 찰리가 고개를 좌우로 돌려 주변을 살피는 구도.",
            "validator_reason": "연속 동작인 '고개를 좌우로 돌려'를 정지 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "천장의 문이 열린 틈으로 쏟아지는 노을빛을 올려다보는 찰리의 얼굴 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "천장의 문이 열리며 쏟아지는 노을빛을 올려다보는 찰리의 얼굴 클로즈업.",
            "validator_reason": "시간 연결어 '열리며 쏟아지는'을 완료 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "노을이 지는 마을 한가운데, 횃불이 타오르는 거대한 격투장 바닥 위로 철창 케이지가 위로 솟아오른 웅장한 전경.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "광기 어린 하회탈 마스크의 아시아계 군중들이 횃불을 든 채 양팔을 허공으로 뻗으며 함성을 지르는 역동적인 구도.",
            "characters": [
              "군중"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "열린 케이지 문 밖으로 찰리가 거대한 금속 다리를 뻗어 내딛는 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "격투장 반대편에 육중하게 개조된 금속 전투 병기 B-200이 찰리를 향해 우뚝 선 위압적인 전신.",
            "characters": [
              "B-200",
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "찰리가 두 눈의 푸른빛을 켠 채 B-200을 쳐다보는 어리둥절한 표정.",
            "characters": [
              "찰리",
              "B-200",
              "군중"
            ],
            "based_on_beat": 1,
            "original_description": "찰리가 두 눈의 푸른빛을 깜빡이며 B-200과 군중들을 번갈아 쳐다보는 어리둥절한 표정.",
            "validator_reason": "시간 연결어 '번갈아 쳐다보는'을 단일 방향 주시 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "지하감옥 안, 이현우가 굳게 닫힌 쇠창살을 두 손으로 움켜쥐고 밖을 향해 입을 크게 벌려 고함치는 표정.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "하회탈 마스크를 쓴 체구 작은 아시아계 병사가 이현우 앞의 쇠창살 바깥에 꼿꼿이 선 구도.",
            "characters": [
              "이현우",
              "아시아계 병사"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "하회탈 마스크의 뚫린 눈구멍 사이로 녹색 눈동자와 갈색 피부가 희미하게 드러난 클로즈업.",
            "characters": [
              "아시아계 병사"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "하회탈 마스크의 아시아계 병사가 자신의 입술 부근으로 검지손가락을 바짝 댄 찰나.",
            "characters": [
              "아시아계 병사"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "다가온 다른 아시아계 병사의 뒤통수를 향해 몽둥이를 맹렬히 휘두르는 도중의 역동적인 찰나.",
            "characters": [
              "아시아계 병사"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "몽둥이에 맞은 아시아계 병사의 상체가 흙바닥을 향해 고꾸라지는 위태로운 구도.",
            "characters": [
              "아시아계 병사"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "하회탈 마스크를 벗어 들고 턱을 치켜든 채 활짝 웃는 라울의 얼굴 클로즈업.",
            "characters": [
              "라울"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "쇠창살 안의 이현우와 앰버가 두 눈을 동그랗게 뜨고 얼어붙은 당황한 표정.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "라울이 쓰러진 병사의 허리춤을 두 손으로 맹렬히 뒤지는 자세.",
            "characters": [
              "라울",
              "아시아계 병사"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "이현우가 눈물 고인 눈으로 쇠창살 밖의 라울을 보며 입술을 여는 찰나.",
            "characters": [
              "이현우",
              "라울"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "라울이 쇠창살 문구멍 안으로 낡은 쇠열쇠를 꽉 쥐어 밀어 넣는 손끝 클로즈업.",
            "characters": [
              "라울"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "열린 쇠창살 문 밖으로 이현우와 앰버가 상체를 다급하게 빼내는 역동적인 구도.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 20,
            "description": "수빈이 두 사람을 향해 눈썹을 위로 치켜세우며 두 눈을 크게 뜬 놀란 표정.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 21,
            "description": "주변 감옥의 쇠창살 안에서 다양한 인종의 난민 아이들이 라울을 향해 양팔을 뻗고 소리치는 찰나.",
            "characters": [
              "라울",
              "난민 아이들"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 22,
            "description": "지상 격투장, B-200의 거대한 금속 주먹이 찰리의 낡은 가슴 장갑판을 맹렬히 강타하는 타격의 순간.",
            "characters": [
              "B-200",
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 23,
            "description": "타격을 입은 찰리의 거대한 상체가 뒤로 확 꺾이는 위태로운 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 24,
            "description": "B-200이 찰리의 얼굴을 향해 거대한 금속 주먹을 맹렬히 뻗은 구도.",
            "characters": [
              "B-200",
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 25,
            "description": "찰리가 B-200의 날아오는 손목을 자신의 두 손으로 빈틈없이 꽉 틀어쥔 역동적인 찰나.",
            "characters": [
              "찰리",
              "B-200"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 26,
            "description": "찰리가 자신의 금속 어깨를 앞세워 B-200의 가슴팍을 맹렬히 들이받는 타격의 순간.",
            "characters": [
              "찰리",
              "B-200"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 27,
            "description": "흙바닥에 등과 머리를 부딪쳐 쓰러진 B-200의 위로 흙먼지가 피어오르는 찰나.",
            "characters": [
              "B-200"
            ],
            "based_on_beat": 3,
            "original_description": "흙바닥에 등과 머리를 부딪치며 쓰러진 B-200의 위로 흙먼지가 피어오르는 찰나.",
            "validator_reason": "시간 연결어 '부딪치며'를 완료 상태인 '부딪쳐 쓰러진'으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 28,
            "description": "쓰러진 B-200의 허리 위로 찰리가 올라타 두 주먹을 허공으로 번쩍 치켜든 위압적인 자세.",
            "characters": [
              "찰리",
              "B-200"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 29,
            "description": "주먹을 내리치려던 찰리가 B-200의 금속 얼굴을 빤히 내려다보며 멈칫한 구도.",
            "characters": [
              "찰리",
              "B-200"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 30,
            "description": "찰리의 입가 금속 부품이 아래로 찌그러지고 눈가의 푸른빛이 시무룩한 형태로 켜져 있는 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "찰리의 입가 금속 부품이 아래로 찌그러지며 눈가의 푸른빛이 시무룩한 형태로 변한 클로즈업.",
            "validator_reason": "시간 연결어 '찌그러지며 변한'을 동시 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 31,
            "description": "바닥에 깔린 B-200이 금속 다리를 뻗은 채 찰리의 배를 강하게 걷어차는 힘이 실린 타격의 순간.",
            "characters": [
              "B-200",
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "바닥에 깔린 B-200이 금속 다리를 위로 뻗어 찰리의 배를 강하게 걷어차는 힘이 실린 타격의 순간.",
            "validator_reason": "시간 연결어 '뻗어 걷어차는'을 고정 자세로 수정하여 타격 순간을 보존함.",
            "character_ids": []
          },
          {
            "shot_index": 32,
            "description": "B-200의 발차기에 밀려난 찰리가 엉덩방아를 찧기 직전 뒤로 넘어가는 찰나.",
            "characters": [
              "찰리",
              "B-200"
            ],
            "based_on_beat": 3,
            "original_description": "B-200의 발차기에 밀려난 찰리가 엉덩방아를 찧으며 뒤로 나뒹구는 찰나.",
            "validator_reason": "시간 연결어 '찧으며 나뒹구는'을 넘어지기 직전의 한 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 33,
            "description": "바닥에서 상체를 일으키는 도중 찰리를 향해 두 주먹을 굳게 쥔 B-200의 전투 준비 자세.",
            "characters": [
              "B-200",
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "B-200이 바닥에서 상체를 일으켜 세우며 찰리를 향해 두 주먹을 굳게 쥔 전투 준비 자세.",
            "validator_reason": "연속 동작 '상체를 일으켜 세우며'를 진행 중의 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 34,
            "description": "찰리가 두 팔을 바닥으로 푹 떨군 채 B-200을 향해 전투 의지를 잃은 무방비 상태의 전신.",
            "characters": [
              "찰리",
              "B-200"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 35,
            "description": "B-200이 찰리를 향해 발을 내딛지 못한 채 우두커니 서서 고개를 한쪽으로 돌린 찰나.",
            "characters": [
              "B-200",
              "찰리"
            ],
            "based_on_beat": 4,
            "original_description": "B-200이 찰리를 향해 발을 내딛지 못한 채 우두커니 서서 고개를 좌우로 젓는 찰나.",
            "validator_reason": "연속 동작 '고개를 좌우로 젓는'을 정지 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 36,
            "description": "관중석의 아시아계 군중들이 B-200을 향해 엄지손가락을 아래로 내리꽂은 채 야유하는 분노의 구도.",
            "characters": [
              "군중",
              "B-200"
            ],
            "based_on_beat": 4,
            "original_description": "관중석의 아시아계 군중들이 B-200을 향해 엄지손가락을 아래로 내리꽂으며 야유하는 분노의 구도.",
            "validator_reason": "시간 진행 '내리꽂으며 야유하는'을 동시 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 37,
            "description": "하회탈 마스크를 쓴 병사 두 명이 B-200의 금속 등판에 시뻘건 불꽃이 튀는 전기 몽둥이를 맹렬히 찔러 넣는 타격의 순간.",
            "characters": [
              "하회탈 마스크 병사",
              "B-200"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 38,
            "description": "강력한 전기 충격에 휩싸인 B-200의 거대한 금속 상체가 바닥을 향해 앞으로 고꾸라지는 위태로운 찰나.",
            "characters": [
              "B-200"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 39,
            "description": "찰리가 B-200을 향해 두 눈의 푸른 안광을 크게 번쩍이며 놀란 얼굴 클로즈업.",
            "characters": [
              "찰리",
              "B-200"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 40,
            "description": "B-200이 흙바닥을 짚고 비틀거리며 상체를 무겁게 일으켜 세우는 도중의 구도.",
            "characters": [
              "B-200"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 41,
            "description": "B-200이 찰리를 향해 거대한 금속 다리로 맹렬히 돌진하는 역동적인 전신.",
            "characters": [
              "B-200",
              "찰리"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 42,
            "description": "지하감옥 복도, 몽둥이를 든 다수의 하회탈 마스크 병사들이 열린 감옥 문들을 향해 맹렬히 쇄도하는 역동적인 구도.",
            "characters": [
              "하회탈 마스크 병사"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 43,
            "description": "열린 감옥 문 뒤에서 튀어나온 이현우가 선두 병사의 턱을 향해 나무 몽둥이를 거세게 휘두르는 도중의 찰나.",
            "characters": [
              "이현우",
              "아시아계 병사"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 44,
            "description": "반대편 복도 끝에서 더 많은 수의 아시아계 병사들이 횃불을 든 채 무리 지어 달려오는 위압적인 외관.",
            "characters": [
              "아시아계 병사"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 45,
            "description": "이현우가 몽둥이를 쥔 채 미간을 깊게 찌푸리고 입을 반쯤 벌린 당황한 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 46,
            "description": "수빈이 바닥에 몸을 밀착한 채 병사들의 다리 사이로 빠르게 미끄러져 들어가는 슬라이딩의 날렵한 찰나.",
            "characters": [
              "수빈",
              "아시아계 병사"
            ],
            "based_on_beat": 5,
            "original_description": "수빈이 바닥을 향해 몸을 던져 병사들의 다리 사이로 빠르게 미끄러져 들어가는 슬라이딩의 날렵한 찰나.",
            "validator_reason": "시간 연결어 '몸을 던져 미끄러져 들어가는'을 한 순간의 슬라이딩 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 47,
            "description": "수빈의 두 팔이 병사의 무릎 관절을 거칠게 뒤틀며 꺾어버리는 힘이 실린 클로즈업.",
            "characters": [
              "수빈",
              "아시아계 병사"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 48,
            "description": "앰버가 쓰러지는 병사들을 보며 입을 동그랗게 벌린 감탄한 표정.",
            "characters": [
              "앰버",
              "아시아계 병사"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 49,
            "description": "수빈이 공중으로 떠오른 몽둥이를 한 손으로 맹렬히 낚아채는 순간.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 5,
            "original_description": "수빈이 바닥에 떨어진 몽둥이를 발끝으로 차올려 한 손으로 맹렬히 낚아채는 공중의 순간.",
            "validator_reason": "연속 동작 '차올려 낚아채는'을 공중에서 낚아채는 순간으로 축약함.",
            "character_ids": []
          },
          {
            "shot_index": 50,
            "description": "수빈이 쥔 몽둥이 끝이 마지막 남은 아시아계 병사의 뒤통수에 정통으로 내리꽂히는 타격의 찰나.",
            "characters": [
              "수빈",
              "아시아계 병사"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 51,
            "description": "수빈이 손에 든 쇳덩이 열쇠를 이현우 쪽을 향해 허공으로 휙 던지는 찰나.",
            "characters": [
              "수빈",
              "이현우"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 52,
            "description": "이현우가 날아오는 열쇠를 한 손으로 꽉 움켜잡은 채 라울을 향해 다급히 입술을 여는 얼굴.",
            "characters": [
              "이현우",
              "라울"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 53,
            "description": "라울이 양어깨를 위로 으쓱이며 양손바닥을 허공으로 내민 모른다는 자세.",
            "characters": [
              "라울"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 54,
            "description": "이현우가 감옥 밖을 향해 시선을 둔 채 미간을 깊게 찌푸리며 턱에 손을 얹은 심각한 구도.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 55,
            "description": "이현우가 한쪽 무릎을 굽힌 채 자신의 낡은 신발을 손으로 거칠게 벗어내는 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 56,
            "description": "이현우의 엄지손가락이 신발 안에서 꺼낸 빳빳한 카드의 중앙 버튼을 꾹 누르는 손끝 클로즈업.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 57,
            "description": "지상 격투장, B-200의 거대한 어깨가 찰리의 가슴팍을 들이받으며 찰리의 상체가 허공으로 밀려나는 타격의 순간.",
            "characters": [
              "B-200",
              "찰리"
            ],
            "based_on_beat": 7,
            "character_ids": []
          },
          {
            "shot_index": 58,
            "description": "흙바닥에 무기력하게 쓰러진 찰리를 향해 B-200이 묵직한 발걸음을 내딛는 위압적인 전신.",
            "characters": [
              "B-200",
              "찰리"
            ],
            "based_on_beat": 7,
            "character_ids": []
          },
          {
            "shot_index": 59,
            "description": "단상의 장백산이 허공을 향해 치켜든 엄지손가락을 아래를 향해 푹 꺾는 손끝 클로즈업.",
            "characters": [
              "장백산"
            ],
            "based_on_beat": 7,
            "character_ids": []
          },
          {
            "shot_index": 60,
            "description": "B-200의 두꺼운 금속 팔뚝 안쪽에서 여러 개의 검은 총열이 거친 소리와 함께 바깥으로 튀어나온 찰나.",
            "characters": [
              "B-200"
            ],
            "based_on_beat": 7,
            "character_ids": []
          },
          {
            "shot_index": 61,
            "description": "B-200이 튀어나온 고사포 총구를 바닥에 쓰러진 찰리의 머리를 향해 정확히 겨눈 팽팽한 구도.",
            "characters": [
              "B-200",
              "찰리"
            ],
            "based_on_beat": 7,
            "character_ids": []
          },
          {
            "shot_index": 62,
            "description": "B-200이 고사포를 겨눈 채 동공의 안광을 파르르 떨며 방아쇠를 당기지 못하는 굳은 모습.",
            "characters": [
              "B-200"
            ],
            "based_on_beat": 7,
            "character_ids": []
          },
          {
            "shot_index": 63,
            "description": "단상 위의 선지자가 B-200을 향해 미간을 찌푸린 채 의아한 표정으로 턱을 치켜든 얼굴.",
            "characters": [
              "선지자",
              "B-200"
            ],
            "based_on_beat": 7,
            "character_ids": []
          },
          {
            "shot_index": 64,
            "description": "B-200의 고사포 총구가 빙글빙글 회전하며 거친 기계음을 뿜어내는 격발 직전의 클로즈업.",
            "characters": [
              "B-200"
            ],
            "based_on_beat": 7,
            "character_ids": []
          },
          {
            "shot_index": 65,
            "description": "찰리가 고사포 총구를 마주한 채 두 눈의 푸른빛을 완전히 꺼버리는 체념의 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 7,
            "character_ids": []
          },
          {
            "shot_index": 66,
            "description": "격투장 관중석 한가운데로 날아든 포탄이 맹렬히 폭발하며 붉은 화염과 흙먼지가 하늘로 치솟는 파괴적인 순간.",
            "characters": [],
            "based_on_beat": 8,
            "character_ids": []
          },
          {
            "shot_index": 67,
            "description": "자리에 앉아있던 장백산이 폭발음을 향해 두 눈을 번쩍 치켜뜨며 상체를 펄쩍 일으키는 역동적인 구도.",
            "characters": [
              "장백산"
            ],
            "based_on_beat": 8,
            "character_ids": []
          },
          {
            "shot_index": 68,
            "description": "최신형 방진복과 검은 헬멧을 쓴 유빅사 용병들이 연기를 뚫고 격투장 안으로 맹렬히 뛰어 들어오는 전신.",
            "characters": [
              "유빅사 용병들"
            ],
            "based_on_beat": 8,
            "character_ids": []
          },
          {
            "shot_index": 69,
            "description": "방진복 용병들이 소총을 겨눈 채 도망치는 아시아계 군중들의 무릎을 걷어차 제압하는 찰나.",
            "characters": [
              "유빅사 용병들",
              "아시아계 군중"
            ],
            "based_on_beat": 8,
            "character_ids": []
          },
          {
            "shot_index": 70,
            "description": "유빅사 용병대장이 소총 끝으로 격투장 중앙의 찰리를 정확히 가리키며 입을 크게 벌려 소리치는 위압적인 구도.",
            "characters": [
              "유빅사 용병대장",
              "찰리"
            ],
            "based_on_beat": 8,
            "character_ids": []
          },
          {
            "shot_index": 71,
            "description": "장백산이 단상 아래의 하회탈 마스크 병사들을 향해 두 팔을 휘저으며 고함치는 분노의 표정.",
            "characters": [
              "장백산",
              "하회탈 마스크 병사"
            ],
            "based_on_beat": 8,
            "character_ids": []
          },
          {
            "shot_index": 72,
            "description": "전기 몽둥이를 든 하회탈 병사들이 소총을 든 유빅사 용병들을 향해 거칠게 쇄도하는 맹렬한 대치 구도.",
            "characters": [
              "하회탈 마스크 병사",
              "유빅사 용병들"
            ],
            "based_on_beat": 8,
            "character_ids": []
          },
          {
            "shot_index": 73,
            "description": "방진복 용병들의 소총에서 뿜어진 눈부신 섬광이 하회탈 병사들의 가슴팍을 타격하는 격발의 순간.",
            "characters": [
              "유빅사 용병들",
              "하회탈 마스크 병사"
            ],
            "based_on_beat": 8,
            "character_ids": []
          },
          {
            "shot_index": 74,
            "description": "수많은 아시아계 군중이 용병들의 몸 위로 벌떼처럼 엉겨 붙어 팔다리를 짓누르는 아수라장의 찰나.",
            "characters": [
              "아시아계 군중",
              "유빅사 용병들"
            ],
            "based_on_beat": 8,
            "original_description": "수많은 아시아계 군중이 용병들의 몸 위로 벌떼처럼 달려들어 팔다리를 짓누르는 아수라장의 찰나.",
            "validator_reason": "시간 연결어 '달려들어 짓누르는'을 이미 엉겨 붙어 짓누르는 동시 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 75,
            "description": "폭발 연기가 자욱한 격투장 한가운데, 찰리와 B-200이 등을 맞댄 채 주변을 경계하며 바라보는 고립된 구도.",
            "characters": [
              "찰리",
              "B-200"
            ],
            "based_on_beat": 9,
            "original_description": "폭발 연기가 자욱한 격투장 한가운데, 찰리와 B-200이 등을 맞댄 채 사방을 두리번거리는 고립된 구도.",
            "validator_reason": "연속 동작 '사방을 두리번거리는'을 한 곳을 주시하는 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 76,
            "description": "하회탈 마스크를 쓴 앰버가 찰리를 향해 전력 질주해 오며 마스크를 위로 확 벗어 던지는 역동적인 찰나.",
            "characters": [
              "앰버",
              "찰리"
            ],
            "based_on_beat": 9,
            "character_ids": []
          },
          {
            "shot_index": 77,
            "description": "앰버가 찰리의 거대한 금속 다리를 두 팔로 꽉 끌어안은 채 환하게 미소 짓는 얼굴.",
            "characters": [
              "앰버",
              "찰리"
            ],
            "based_on_beat": 9,
            "character_ids": []
          },
          {
            "shot_index": 78,
            "description": "라울이 찰리의 팔에 두 손을 얹은 채 반가운 표정으로 눈을 부릅뜬 구도.",
            "characters": [
              "라울",
              "찰리"
            ],
            "based_on_beat": 9,
            "original_description": "라울이 찰리의 팔을 두 손으로 툭툭 치며 반가운 표정으로 눈을 부릅뜬 구도.",
            "validator_reason": "연속 동작 '툭툭 치며'를 손을 얹은 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 79,
            "description": "이현우가 격투장 출구 쪽을 향해 손가락을 뻗으며 찰리와 아이들에게 다급하게 외치는 찰나.",
            "characters": [
              "이현우",
              "찰리",
              "아이들"
            ],
            "based_on_beat": 9,
            "character_ids": []
          },
          {
            "shot_index": 80,
            "description": "수빈이 선두에 서서 무너진 벽 틈새를 향해 손짓하며 맹렬히 달리는 일행의 역동적인 뒷모습.",
            "characters": [
              "수빈",
              "일행"
            ],
            "based_on_beat": 9,
            "character_ids": []
          },
          {
            "shot_index": 81,
            "description": "도망치는 이현우 일행의 앞을 거대한 소총을 든 방진복 차림의 용병대장과 용병들이 일렬로 막아선 위압적인 구도.",
            "characters": [
              "이현우",
              "일행",
              "유빅사 용병대장",
              "유빅사 용병들"
            ],
            "based_on_beat": 10,
            "character_ids": []
          },
          {
            "shot_index": 82,
            "description": "용병의 헬멧 스피커를 응시하며 두 눈에 핏대를 세운 이현우의 분노 어린 얼굴 클로즈업.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 10,
            "original_description": "헬멧에 장착된 용병의 스피커에서 흘러나오는 윤성찬의 음성을 듣고 이현우가 두 눈에 핏대를 세운 분노의 얼굴 클로즈업.",
            "validator_reason": "시간 인과 관계 '음성을 듣고'를 동시 진행 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 83,
            "description": "이현우가 공중으로 몸을 날려 용병대장의 가슴팍에 맹렬히 부딪히는 역동적인 타격의 순간.",
            "characters": [
              "이현우",
              "유빅사 용병대장"
            ],
            "based_on_beat": 10,
            "original_description": "이현우가 용병대장의 가슴팍을 향해 공중으로 몸을 날려 맹렬히 부딪히는 역동적인 타격의 순간.",
            "validator_reason": "연속 동작 '몸을 날려 부딪히는'을 부딪히는 타격의 찰나로 축약함.",
            "character_ids": []
          },
          {
            "shot_index": 84,
            "description": "수빈이 다른 용병의 총신을 꽉 틀어쥐고 무릎으로 용병의 복부를 강하게 올려차는 힘이 실린 찰나.",
            "characters": [
              "수빈",
              "유빅사 용병"
            ],
            "based_on_beat": 10,
            "character_ids": []
          },
          {
            "shot_index": 85,
            "description": "이현우가 어깨에 멘 굵은 EMP 발사관의 방아쇠를 당기려는 용병의 팔목을 두 손으로 빈틈없이 꽉 틀어쥔 구도.",
            "characters": [
              "이현우",
              "유빅사 용병"
            ],
            "based_on_beat": 10,
            "character_ids": []
          },
          {
            "shot_index": 86,
            "description": "B-200과 하회탈 마스크 병사들이 횃불을 든 채 유빅사 용병들의 등 뒤를 맹렬히 덮치는 압도적인 찰나.",
            "characters": [
              "B-200",
              "하회탈 마스크 병사",
              "유빅사 용병들"
            ],
            "based_on_beat": 10,
            "character_ids": []
          },
          {
            "shot_index": 87,
            "description": "수많은 포탄이 격투장 곳곳에 내리꽂히며 거대한 불기둥과 파편을 허공으로 뿜어내는 폭발의 순간.",
            "characters": [],
            "based_on_beat": 10,
            "character_ids": []
          },
          {
            "shot_index": 88,
            "description": "짙은 흙먼지 속에서 이현우가 찰리의 거대한 금속 손을 꽉 잡고 바깥을 향해 내달리는 급박한 뒷모습.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 10,
            "character_ids": []
          },
          {
            "shot_index": 89,
            "description": "흙먼지가 가라앉은 바닥 위로 피투성이가 된 하회탈 마스크 병사들과 방진복 용병들이 처참하게 널브러진 전경.",
            "characters": [
              "하회탈 마스크 병사",
              "유빅사 용병들"
            ],
            "based_on_beat": 10,
            "character_ids": []
          },
          {
            "shot_index": 90,
            "description": "노을 지는 거대한 금속 물탱크 앞 공터, 도망친 이현우 일행이 숨을 헐떡이며 발걸음을 우뚝 멈춰 선 구도.",
            "characters": [
              "이현우",
              "일행"
            ],
            "based_on_beat": 11,
            "character_ids": []
          },
          {
            "shot_index": 91,
            "description": "황금빛 마스크를 쓴 장백산과 창을 든 아시아계 호위병들이 이현우 일행의 앞을 막아선 위압적인 전신.",
            "characters": [
              "장백산",
              "아시아계 호위병",
              "이현우",
              "일행"
            ],
            "based_on_beat": 11,
            "character_ids": []
          },
          {
            "shot_index": 92,
            "description": "장백산이 찰리를 향해 탐욕스러운 눈빛으로 두 팔을 활짝 벌리는 찰나.",
            "characters": [
              "장백산",
              "찰리"
            ],
            "based_on_beat": 11,
            "character_ids": []
          },
          {
            "shot_index": 93,
            "description": "호위병들이 창끝을 이현우 일행의 목을 향해 바짝 겨누며 거리를 좁혀오는 긴장된 구도.",
            "characters": [
              "아시아계 호위병",
              "이현우",
              "일행"
            ],
            "based_on_beat": 11,
            "character_ids": []
          },
          {
            "shot_index": 94,
            "description": "이현우 일행의 등 뒤 어둠 속에서 거대한 B-200이 무거운 쇳소리를 내며 걸어 나오는 실루엣 찰나.",
            "characters": [
              "B-200",
              "이현우",
              "일행"
            ],
            "based_on_beat": 11,
            "character_ids": []
          },
          {
            "shot_index": 95,
            "description": "B-200이 팔의 고사포 총구를 장백산의 심장을 향해 꼿꼿이 정조준한 위협적인 자세.",
            "characters": [
              "B-200",
              "장백산"
            ],
            "based_on_beat": 11,
            "character_ids": []
          },
          {
            "shot_index": 96,
            "description": "장백산이 고사포 총구를 빤히 바라보며 양팔을 허리에 얹은 채 여유롭게 비웃는 얼굴.",
            "characters": [
              "장백산"
            ],
            "based_on_beat": 11,
            "character_ids": []
          },
          {
            "shot_index": 97,
            "description": "B-200이 총구를 장백산에게 겨눈 채 안광이 미세하게 떨리며 격발을 주저하는 굳은 구도.",
            "characters": [
              "B-200",
              "장백산"
            ],
            "based_on_beat": 11,
            "character_ids": []
          },
          {
            "shot_index": 98,
            "description": "이현우가 B-200 옆에서 손가락을 하늘 높이 뻗어 거대한 물탱크를 정확히 가리키는 찰나.",
            "characters": [
              "이현우",
              "B-200"
            ],
            "based_on_beat": 11,
            "character_ids": []
          },
          {
            "shot_index": 99,
            "description": "B-200의 고사포 총구에서 거대한 물탱크 탑의 기둥을 향해 눈부신 화염이 뿜어져 나오는 맹렬한 격발의 순간.",
            "characters": [
              "B-200"
            ],
            "based_on_beat": 11,
            "original_description": "B-200의 고사포 총구에서 거대한 물탱크 탑의 기둥을 향해 눈부신 화염이 연속해서 뿜어져 나오는 맹렬한 격발의 순간.",
            "validator_reason": "시간 진행 '연속해서 뿜어져 나오는'을 단일 격발 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 100,
            "description": "고사포에 맞은 물탱크의 금속 기둥이 꺾이며 거대한 구조물이 아래를 향해 무너져 내리는 파괴적인 찰나.",
            "characters": [],
            "based_on_beat": 11,
            "character_ids": []
          },
          {
            "shot_index": 101,
            "description": "박살 난 물탱크 안에서 뿜어져 나온 엄청난 양의 맑은 물이 폭포수처럼 바닥을 세차게 덮치는 역동적인 구도.",
            "characters": [],
            "based_on_beat": 11,
            "original_description": "박살 난 물탱크 안에서 엄청난 양의 맑은 물이 폭포수처럼 쏟아져 나와 바닥을 세차게 덮치는 역동적인 구도.",
            "validator_reason": "시간 연결어 '쏟아져 나와 덮치는'을 하나의 역동적인 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 102,
            "description": "물을 흠뻑 뒤집어쓴 장백산이 질척이는 흙바닥을 짚은 채 비틀거리며 상체를 일으켜 세우는 찰나.",
            "characters": [
              "장백산"
            ],
            "based_on_beat": 12,
            "original_description": "물을 흠뻑 뒤집어쓴 장백산이 질척이는 흙바닥을 짚고 비틀거리며 상체를 일으켜 세우는 찰나.",
            "validator_reason": "시간 연결어 '비틀거리며 일으켜 세우는'을 상체를 일으키는 진행 중 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 103,
            "description": "장백산의 얼굴을 덮은 황금 가면이 절반으로 쪼개져 바닥으로 툭 떨어지는 순간.",
            "characters": [
              "장백산"
            ],
            "based_on_beat": 12,
            "character_ids": []
          },
          {
            "shot_index": 104,
            "description": "부서진 가면 너머로 피부가 붉게 짓무르고 흉측하게 녹아내린 장백산의 끔찍한 얼굴이 드러난 클로즈업.",
            "characters": [
              "장백산"
            ],
            "based_on_beat": 12,
            "character_ids": []
          },
          {
            "shot_index": 105,
            "description": "장백산의 얼굴을 마주한 아시아계 병사가 두 눈을 동그랗게 뜬 채 뒷걸음질 치는 당황한 표정.",
            "characters": [
              "아시아계 병사",
              "장백산"
            ],
            "based_on_beat": 12,
            "original_description": "앞에 선 아시아계 병사가 장백산의 얼굴을 보고 두 눈을 동그랗게 뜨며 뒷걸음질 치는 당황한 표정.",
            "validator_reason": "시간 진행 '보고 뜨며 뒷걸음질 치는'을 얼굴을 마주한 찰나의 동시 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 106,
            "description": "장백산이 두 손으로 자신의 흉측한 얼굴을 다급하게 꽉 틀어막은 채 몸을 웅크린 비참한 자세.",
            "characters": [
              "장백산"
            ],
            "based_on_beat": 12,
            "original_description": "장백산이 두 손으로 자신의 흉측한 얼굴을 다급하게 꽉 틀어막으며 몸을 웅크린 비참한 자세.",
            "validator_reason": "시간 진행 '틀어막으며 웅크린'을 동시 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 107,
            "description": "장백산이 핏발 선 눈으로 호위병들을 향해 손가락질하며 분노로 입을 크게 벌린 찰나.",
            "characters": [
              "장백산",
              "아시아계 호위병"
            ],
            "based_on_beat": 12,
            "character_ids": []
          },
          {
            "shot_index": 108,
            "description": "수빈이 병사들 앞을 막아선 채 두 팔을 양옆으로 활짝 벌리고 턱을 치켜든 결연한 구도.",
            "characters": [
              "수빈",
              "병사들"
            ],
            "based_on_beat": 12,
            "original_description": "수빈이 병사들 앞을 막아서며 두 팔을 양옆으로 활짝 벌리고 턱을 치켜든 결연한 구도.",
            "validator_reason": "시간 진행 '막아서며 벌리고'를 동시 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 109,
            "description": "수빈이 장백산을 삿대질하며 입술에 피가 나도록 꽉 깨문 채 고함치는 분노의 얼굴 클로즈업.",
            "characters": [
              "수빈",
              "장백산"
            ],
            "based_on_beat": 12,
            "character_ids": []
          },
          {
            "shot_index": 110,
            "description": "장백산이 두 주먹을 가슴에 꽉 쥔 채 하늘을 향해 목에 핏대를 세우고 절규하는 광기 어린 얼굴.",
            "characters": [
              "장백산"
            ],
            "based_on_beat": 13,
            "character_ids": []
          },
          {
            "shot_index": 111,
            "description": "분노로 가득 찬 아시아계 병사와 난민 무리가 시뻘건 전기 몽둥이를 치켜든 채 장백산을 둥글게 에워싸는 위압적인 구도.",
            "characters": [
              "아시아계 병사",
              "난민 무리",
              "장백산"
            ],
            "based_on_beat": 13,
            "character_ids": []
          },
          {
            "shot_index": 112,
            "description": "겁에 질린 장백산이 맨발로 질척이는 진흙 바닥을 힘껏 박차며 맹렬히 도망치는 비참한 뒷모습.",
            "characters": [
              "장백산"
            ],
            "based_on_beat": 13,
            "original_description": "겁에 질린 장백산이 맨발로 질척이는 진흙 바닥을 박차고 맹렬히 도망치는 비참한 뒷모습.",
            "validator_reason": "시간 연속 '박차고 도망치는'을 맹렬히 도망치는 한 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 113,
            "description": "수십 명의 아시아계 난민들이 전기 몽둥이를 거세게 휘두르며 도망치는 장백산의 뒤를 바짝 쫓는 역동적인 추격의 찰나.",
            "characters": [
              "아시아계 난민",
              "장백산"
            ],
            "based_on_beat": 13,
            "character_ids": []
          },
          {
            "shot_index": 114,
            "description": "이현우, 수빈, 앰버, 라울, 찰리가 나란히 선 채 멀어지는 군중을 빤히 응시하는 뒷모습.",
            "characters": [
              "이현우",
              "수빈",
              "앰버",
              "라울",
              "찰리",
              "군중"
            ],
            "based_on_beat": 13,
            "character_ids": []
          },
          {
            "shot_index": 115,
            "description": "이현우가 수빈을 향해 씁쓸한 표정으로 턱을 긁적이며 입술을 여는 찰나.",
            "characters": [
              "이현우",
              "수빈"
            ],
            "based_on_beat": 14,
            "character_ids": []
          },
          {
            "shot_index": 116,
            "description": "흙투성이가 된 다양한 인종의 난민 아이들이 수빈의 다리 곁에 옹기종기 모여 선 구도.",
            "characters": [
              "난민 아이들",
              "수빈"
            ],
            "based_on_beat": 14,
            "original_description": "흙투성이가 된 다양한 인종의 난민 아이들이 수빈의 다리 곁으로 다가와 옹기종기 모여 선 구도.",
            "validator_reason": "시간 진행 '다가와 모여 선'을 모여 선 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 117,
            "description": "수빈이 자신의 허리를 감싼 아이의 머리를 부드럽게 쓰다듬으며 옅은 미소를 짓는 평온한 얼굴.",
            "characters": [
              "수빈",
              "아이"
            ],
            "based_on_beat": 14,
            "character_ids": []
          },
          {
            "shot_index": 118,
            "description": "반파된 낡은 성당과 물탱크 잔해 너머로 붉게 타오르는 웅장한 저녁 노을이 황폐한 마을을 비추는 전경.",
            "characters": [],
            "based_on_beat": 14,
            "character_ids": []
          },
          {
            "shot_index": 119,
            "description": "붉은 노을을 배경으로 흙먼지 날리는 언덕 능선 위에 이현우와 찰리가 나란히 웅크려 앉은 평화로운 구도.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 15,
            "character_ids": []
          },
          {
            "shot_index": 120,
            "description": "얼굴에 피멍이 든 이현우가 찰리를 향해 고개를 살짝 돌린 채 어색하게 입꼬리를 올린 미소 띤 얼굴.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 15,
            "character_ids": []
          },
          {
            "shot_index": 121,
            "description": "찰리가 두 눈의 푸른빛을 따뜻하게 켠 채 이현우의 얼굴을 가만히 내려다보는 찰나.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 15,
            "original_description": "찰리가 두 눈의 푸른빛을 따뜻하게 깜빡이며 이현우의 얼굴을 가만히 내려다보는 찰나.",
            "validator_reason": "연속 동작 '깜빡이며'를 고정된 시각적 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 122,
            "description": "이현우가 미간을 살짝 찌푸린 채 진지한 표정으로 찰리를 향해 입술을 여는 구도.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 15,
            "character_ids": []
          },
          {
            "shot_index": 123,
            "description": "찰리가 이현우의 눈을 맞춘 채 무거운 금속 고개를 아래로 느릿하게 끄덕이는 찰나.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 15,
            "character_ids": []
          },
          {
            "shot_index": 124,
            "description": "이현우가 자신의 두 손을 마주 잡은 채 멋쩍은 듯 턱을 살짝 치켜든 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 15,
            "original_description": "이현우가 고개를 푹 숙인 채 자신의 두 손을 꼼지락거리며 멋쩍은 듯 턱을 치켜든 얼굴.",
            "validator_reason": "자세가 모순되는 '고개를 푹 숙인 채 턱을 치켜든'을 하나의 일관된 표정으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 125,
            "description": "찰리의 가슴 장갑판 곳곳에 깊은 구멍이 뚫리고 찌그러진 참혹한 파손 부위 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 15,
            "character_ids": []
          },
          {
            "shot_index": 126,
            "description": "찰리가 파손된 자신의 가슴에 한 손을 얹은 채 입가 금속 부품을 위로 올려 환하게 미소 짓는 자태.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 15,
            "original_description": "찰리가 파손된 자신의 가슴을 한 손으로 툭툭 치며 입가 금속 부품을 올려 환하게 미소 짓는 자태.",
            "validator_reason": "연속 동작 '툭툭 치며 올려'를 한 손을 얹은 정지 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 127,
            "description": "감동한 이현우가 눈물 고인 눈으로 찰리를 향해 오른손을 불쑥 내미는 손끝.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 15,
            "character_ids": []
          },
          {
            "shot_index": 128,
            "description": "찰리의 커다랗고 낡은 금속 손이 이현우의 작은 손을 빈틈없이 단단히 맞잡은 따뜻한 클로즈업.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 15,
            "character_ids": []
          },
          {
            "shot_index": 129,
            "description": "지는 해를 바라보며 찰리와 이현우가 손을 맞잡은 채 어깨를 나란히 한 감동적인 후면 실루엣.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 15,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 61,
        "scene_heading": "61. 익산, 늪지대 - N",
        "shots": [
          {
            "shot_index": 1,
            "description": "어두운 늪지대, 박철진이 방치된 낡은 캠핑카의 녹슨 차체를 한 손으로 짚고 선 전신.",
            "characters": [
              "박철진"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "박철진의 수하 1이 박철진 곁에 바짝 서서 입을 크게 벌려 보고하는 찰나.",
            "characters": [
              "박철진의 수하 1",
              "박철진"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "박철진이 바닥의 녹슨 방사능 구역 팻말을 내려다보며 한쪽 입꼬리를 비스듬히 올린 비웃는 얼굴.",
            "characters": [
              "박철진"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "박철진이 박철진의 수하 1을 향해 한 손가락을 치켜든 채 입을 크게 벌려 고함치는 위압적인 찰나.",
            "characters": [
              "박철진",
              "박철진의 수하 1"
            ],
            "based_on_beat": 2,
            "original_description": "박철진이 박철진의 수하 1을 향해 손가락을 까딱이며 입을 크게 벌려 고함치는 위압적인 찰나.",
            "validator_reason": "'손가락을 까딱이며'라는 연속 동작을 '손가락을 치켜든 채'라는 고정된 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "박철진의 수하 1이 고개를 아래로 향한 채 검은 무전기를 입가에 바짝 가져다 댄 손끝 클로즈업.",
            "characters": [
              "박철진의 수하 1"
            ],
            "based_on_beat": 2,
            "original_description": "박철진의 수하 1이 고개를 끄덕이며 검은 무전기를 입가에 바짝 가져다 댄 손끝 클로즈업.",
            "validator_reason": "'고개를 끄덕이며'라는 연속 동작을 '고개를 아래로 향한 채'라는 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "방사능 팻말 주변에서 바닥을 박차고 날개를 활짝 뻗어 어두운 허공을 향해 맹렬히 떠오른 수많은 까마귀 떼의 mid-action 찰나.",
            "characters": [],
            "based_on_beat": 2,
            "original_description": "방사능 팻말 주위에 앉아 있던 수많은 까마귀 떼가 어두운 허공을 향해 일제히 맹렬히 날아오르는 공중의 찰나.",
            "validator_reason": "'앉아 있던' 과거 상태와 '날아오르는' 진행 동작이 혼재되어 있어 바닥을 박차고 허공에 떠오른 단일 mid-action 순간으로 통합함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "어두운 밤하늘 한가운데 둥근 달이 눈부시게 떠 있는 고요한 구도.",
            "characters": [],
            "based_on_beat": 2,
            "original_description": "까마귀 떼가 날아간 어두운 밤하늘 한가운데 둥근 달이 눈부시게 떠 있는 고요한 구도.",
            "validator_reason": "'까마귀 떼가 날아간'이라는 시간 진행 서술을 제거하고 현재 보이는 풍경의 고정 상태만 남김.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 62,
        "scene_heading": "62. 익산 한옥 마을 - D",
        "shots": [
          {
            "shot_index": 1,
            "description": "이현우가 낡은 식량창고의 낡은 철문을 양손으로 거칠게 밀어내는 역동적인 힘이 실린 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 낡은 식량창고의 낡은 철문을 거칠게 밀어 여는 힘이 실린 찰나.",
            "validator_reason": "순차적 동작('밀어 여는')을 단일 미드액션('밀어내는')으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "열린 철문 너머로 쌀 포대와 감자 포대 몇 개만이 덩그러니 놓인 텅 빈 식량창고 바닥 구도.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "수빈과 마을총무가 텅 빈 창고 안을 바라보며 미간을 깊게 찌푸린 심각한 표정.",
            "characters": [
              "수빈",
              "마을총무"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "햇살 비치는 마을 공터, 앰버가 낡은 트럭 운전석에 앉아 핸들을 꽉 쥔 채 시동 열쇠를 반쯤 돌려 쥔 손끝 클로즈업.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 2,
            "original_description": "햇살 비치는 마을 공터, 앰버가 낡은 트럭 운전석에 앉아 핸들을 꽉 쥔 채 열쇠를 돌리는 손끝 클로즈업.",
            "validator_reason": "연속 동작('돌리는')을 진행 중인 정지 상태('반쯤 돌려 쥔')로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "찰리와 라울이 나란히 서서 앰버가 탄 트럭을 흥미롭게 응시하는 뒷모습.",
            "characters": [
              "찰리",
              "라울",
              "앰버"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "낡은 축구공 하나가 흙바닥을 지나 라울의 운동화 코에 툭 맞닿으며 작은 흙먼지를 일으키는 충격 찰나.",
            "characters": [
              "라울"
            ],
            "based_on_beat": 2,
            "original_description": "낡은 축구공 하나가 흙바닥을 굴러와 라울의 운동화 코에 툭 부딪히는 순간.",
            "validator_reason": "이동과 충돌의 연속 동작('굴러와... 부딪히는')을 공이 맞닿은 충격 순간(mid-impact)으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "공터 저편에서 아시아계 난민 아이들이 라울을 향해 양팔을 허공으로 번쩍 뻗은 채 멈춰 선 활기찬 구도.",
            "characters": [
              "아시아계 난민 아이들",
              "라울"
            ],
            "based_on_beat": 2,
            "original_description": "공터 저편에서 아시아계 난민 아이들이 라울을 향해 양팔을 번쩍 들고 손짓하는 활기찬 구도.",
            "validator_reason": "연속적인 제스처('손짓하는')를 고정된 포즈('뻗은 채')로 변경함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "라울이 축구공을 허공으로 뻥 차올려 한쪽 발이 공중에 떠 있고, 입을 크게 벌려 환하게 웃고 있는 역동적인 mid-action 찰나.",
            "characters": [
              "라울"
            ],
            "based_on_beat": 2,
            "original_description": "라울이 달려가 축구공을 허공으로 뻥 차올리며 입을 크게 벌려 환하게 웃는 역동적인 찰나.",
            "validator_reason": "시간 흐름이 있는 두 동작('달려가... 차올리며') 중 발차기가 진행된 미드액션 순간 하나만 선택함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "이현우와 수빈이 트럭 쪽으로 성큼 걸음을 내딛어 한쪽 발이 허공에 뜬 mid-action 자세에 턱을 치켜든 굳은 얼굴.",
            "characters": [
              "이현우",
              "수빈"
            ],
            "based_on_beat": 3,
            "original_description": "이현우와 수빈이 트럭 쪽으로 성큼 다가오며 턱을 치켜든 굳은 얼굴.",
            "validator_reason": "이동 동작('다가오며')을 운동 방향과 추진력을 보존한 미드액션으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "찰리가 두 눈의 푸른 안광을 반짝이며 양팔을 허공으로 번쩍 치켜든 유쾌한 자태.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "이현우가 찰리를 향해 고개를 살짝 기울인 자세로 진지한 표정을 지으며 입술을 반쯤 벌린 찰나.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "이현우가 찰리를 향해 고개를 살짝 기울이며 진지한 표정으로 입술을 여는 찰나.",
            "validator_reason": "동작의 전후('기울이며... 여는')를 모두 고정된 자세('기울인 자세... 벌린')로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "찰리의 시야 인터페이스 속, 낡은 지도 이미지 위에 '서남쪽 25.6km 백화점/마트'라는 붉은 글씨가 선명하게 떠오른 주관 시점 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "수빈이 눈썹을 축 늘어뜨린 채 울상을 지으며 두 팔을 엇갈리게 허공으로 뻗고 있는 당황한 정지 동작.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 4,
            "original_description": "수빈이 눈썹을 축 늘어뜨린 채 울상을 지으며 두 팔을 허공에 휘젓는 당황한 동작.",
            "validator_reason": "반복되는 움직임('휘젓는')을 허공에 뻗고 있는 단일 포즈로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "마을총무가 두 손바닥을 앞으로 곧게 내민 채 강하게 만류하는 굳은 표정.",
            "characters": [
              "마을총무"
            ],
            "based_on_beat": 4,
            "original_description": "마을총무가 두 손바닥을 앞으로 내밀며 강하게 만류하는 굳은 표정.",
            "validator_reason": "진행형 동작('내밀며')을 완료된 고정 자세('내민 채')로 변경함.",
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "이현우가 수빈을 향해 한쪽 눈을 질끈 감고 윙크를 한 채 미소 짓는 여유로운 얼굴 클로즈업.",
            "characters": [
              "이현우",
              "수빈"
            ],
            "based_on_beat": 4,
            "original_description": "이현우가 수빈을 향해 한쪽 눈을 살짝 감았다 뜨며 찡긋거리는 여유로운 얼굴 클로즈업.",
            "validator_reason": "시간의 흐름('감았다 뜨며 찡긋거리는')을 윙크가 완성된 하나의 순간으로 줄임.",
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "수빈이 주먹을 꽉 쥔 채 턱을 아래로 당겨 고개를 숙인 결연한 찰나.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 4,
            "original_description": "수빈이 주먹을 꽉 쥔 채 고개를 아래로 끄덕이는 결연한 찰나.",
            "validator_reason": "반복 동작('끄덕이는')을 고개를 당겨 숙인 하나의 정지 상태로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 63,
        "scene_heading": "63. 도로 위, 트럭 안 - 낮",
        "shots": [
          {
            "shot_index": 1,
            "description": "햇살이 내리쬐는 텅 빈 아스팔트 도로 위, 낡은 트럭 한 대가 차체 뒤로 짙은 먼지구름을 뿜어낸 채 앞으로 쏠려 있는 mid-action 외관.",
            "characters": [],
            "based_on_beat": 1,
            "original_description": "햇살이 내리쬐는 텅 빈 아스팔트 도로 위를 낡은 트럭 한 대가 먼지를 일으키며 질주하는 외관.",
            "validator_reason": "'먼지를 일으키며 질주하는'이라는 연속 동작을 멈추고, 뿜어져 나온 먼지구름과 차체가 앞으로 쏠린 상태로 추진 방향을 보존함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "트럭 운전석, 이현우가 두 손으로 핸들을 꽉 쥔 채 앞창문 밖을 빤히 응시하는 옆얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "조수석에 앉은 수빈이 이현우 쪽으로 고개를 돌린 채 유심히 바라보는 시선.",
            "characters": [
              "수빈",
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "조수석에 앉은 수빈이 이현우 쪽으로 고개를 돌려 유심히 바라보는 시선.",
            "validator_reason": "'돌려 바라보는'의 순차 동작을 '고개를 돌린 채'라는 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "이현우가 정면을 바라본 채 입꼬리를 살짝 올린 씁쓸한 미소를 띤 클로즈업.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 정면을 바라본 채 입꼬리를 살짝 올려 씁쓸한 미소를 짓는 클로즈업.",
            "validator_reason": "'미소를 짓는'이라는 동작 진행을 '미소를 띤'이라는 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "수빈이 고개를 푹 숙인 채 무거운 표정으로 두 손을 무릎 위에 모은 자세.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "이현우가 미간을 살짝 찌푸린 채 수빈을 향해 비스듬히 턱을 치켜든 날카로운 얼굴.",
            "characters": [
              "이현우",
              "수빈"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 미간을 살짝 찌푸리며 수빈을 향해 비스듬히 턱을 치켜든 날카로운 얼굴.",
            "validator_reason": "'찌푸리며'라는 동작 진행을 '찌푸린 채'라는 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "수빈이 이현우를 향해 두 눈을 번쩍 치켜뜬 채 목에 핏대를 세우고 입을 크게 벌려 고함치는 분노의 표정.",
            "characters": [
              "수빈",
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "수빈이 이현우를 향해 두 눈을 번쩍 치켜뜨며 목에 핏대를 세우고 고함치는 분노의 표정.",
            "validator_reason": "'치켜뜨며 고함치는'이라는 동작 진행을 '치켜뜬 채 입을 크게 벌린' 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "이현우가 두 눈을 동그랗게 뜬 채 상체를 뒤로 확 움츠린 당황한 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 두 눈을 동그랗게 뜬 채 상체를 뒤로 확 움츠리는 당황한 찰나.",
            "validator_reason": "'움츠리는'이라는 동작 진행을 '움츠린'이라는 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "수빈이 어깨를 잔뜩 웅크린 채 미안한 듯 입술을 삐죽 내민 풀죽은 얼굴.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "이현우가 트럭 차창 밖으로 시선을 둔 채 눈가에 서글픔이 맺힌 담담한 표정.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "이현우가 트럭 차창 밖으로 시선을 던지며 눈가에 서글픔이 맺힌 담담한 표정.",
            "validator_reason": "'시선을 던지며'라는 동작 진행을 '시선을 둔 채'라는 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "수빈이 조심스럽게 상체를 이현우 쪽으로 살짝 기울인 채 눈동자를 반짝이는 구도.",
            "characters": [
              "수빈",
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "수빈이 조심스럽게 상체를 이현우 쪽으로 살짝 기울이며 눈동자를 반짝이는 구도.",
            "validator_reason": "'기울이며'라는 동작 진행을 '기울인 채'라는 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "이현우의 회상 속, 피투성이가 된 미연이 눈꺼풀을 힘겹게 들어 올린 채 애절하게 입을 벌린 찰나.",
            "characters": [
              "이현우",
              "미연"
            ],
            "based_on_beat": 3,
            "original_description": "이현우의 회상 속, 피투성이가 된 미연이 눈꺼풀을 힘겹게 들어 올리며 애절하게 입을 벌린 찰나.",
            "validator_reason": "'들어 올리며'라는 동작 진행을 '들어 올린 채'라는 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "운전석의 이현우가 두 눈을 질끈 감은 채 고개를 세차게 가로젓던 중간에 멈춘, 머리카락이 한쪽으로 쏠려 있는 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "운전석의 이현우가 고개를 세차게 가로저으며 두 눈을 질끈 감는 역동적인 동작.",
            "validator_reason": "'가로저으며 감는'이라는 연속 동작을 멈추고, 쏠려 있는 머리카락을 통해 고개를 흔드는 방향성을 보존함.",
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "앞창문으로 쏟아지는 햇살을 받은 이현우가 입술을 꽉 깨물고 결연한 눈빛으로 앞을 쏘아보는 굳은 얼굴 클로즈업.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "수빈이 빛에 물든 이현우의 강인한 얼굴을 빤히 응시한 채 입을 반쯤 벌린 찰나.",
            "characters": [
              "수빈",
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "수빈이 빛에 물든 이현우의 강인한 얼굴을 빤히 응시하며 입을 반쯤 벌린 찰나.",
            "validator_reason": "'응시하며'라는 동작 진행을 '응시한 채'라는 고정 상태로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 64,
        "scene_heading": "폐 창고- D",
        "shots": [
          {
            "shot_index": 1,
            "description": "반쯤 열린 창고 문밖 환한 공터에서 라울과 다양한 인종의 난민 아이들이 축구공을 향해 달려가며 한쪽 발이 허공에 뜬 미드액션 구도.",
            "characters": [
              "라울",
              "난민 아이들"
            ],
            "based_on_beat": 1,
            "original_description": "반쯤 열린 창고 문밖 환한 공터에서 라울과 다양한 인종의 난민 아이들이 축구공을 향해 달려드는 역동적인 구도.",
            "validator_reason": "연속 이동 동작인 '달려드는'을 다리가 허공에 뜬 미드액션 순간으로 수정하여 추진력을 보존함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "어두운 폐창고 안으로 찰리가 한 손에 낡은 축구공을 든 채 앞발을 깊게 내디뎌 뒷발 뒤꿈치가 살짝 들린 미드액션 전신.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "어두운 폐창고 안으로 찰리가 한 손에 낡은 축구공을 든 채 발을 깊게 내딛는 전신.",
            "validator_reason": "이동 동작인 '내딛는'을 뒷발 뒤꿈치가 들린 미드액션 자세로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "찰리가 창고 구석에 산더미처럼 쌓인 고장 난 로봇 더미를 빤히 내려다보는 시선.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "고장 난 로봇들을 응시하는 찰리의 눈가 푸른빛이 미세하게 흔들리는 순간이 포착된 묘한 표정 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "고장 난 로봇들을 응시하는 찰리의 눈가 푸른빛이 미세하게 떨리는 묘한 표정 클로즈업.",
            "validator_reason": "'미세하게 떨리는'이라는 변화 중인 상태를 그 흔들림이 포착된 한 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "어둠 속 기계음을 들은 찰리가 창고 안쪽을 향해 고개를 휙 돌린 채 멈칫한 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "어둠 속 기계음을 들은 찰리가 창고 안쪽을 향해 고개를 휙 돌리는 찰나.",
            "validator_reason": "'돌리는'이라는 동작의 진행을 고개를 돌린 뒤 멈칫한 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "어둠 속 구석에 거대한 B-200이 낡은 상체를 잔뜩 웅크린 채 숨어있는 구도.",
            "characters": [
              "B-200"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "찰리가 어둠 속의 B-200을 향해 금속 고개를 옆으로 깊게 기울인 자세.",
            "characters": [
              "찰리",
              "B-200"
            ],
            "based_on_beat": 1,
            "original_description": "찰리가 어둠 속의 B-200을 향해 금속 고개를 옆으로 깊게 갸우뚱하는 자세.",
            "validator_reason": "'갸우뚱하는'이라는 동작 진행을 고개를 기울인 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "찰리가 웅크린 B-200을 향해 천천히 한쪽 발을 앞으로 뻗은 찰나.",
            "characters": [
              "찰리",
              "B-200"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "B-200이 자신의 팔에 달린 거대한 고사포를 찰리의 가슴을 향해 맹렬히 겨눈 위압적인 구도.",
            "characters": [
              "B-200",
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "찰리가 B-200을 향해 입가 금속 부품을 반쯤 연 채 집중한 얼굴 클로즈업.",
            "characters": [
              "찰리",
              "B-200"
            ],
            "based_on_beat": 2,
            "original_description": "찰리가 B-200을 향해 입가 금속 부품을 움직이며 소리를 내는 집중한 얼굴 클로즈업.",
            "validator_reason": "'움직이며 소리를 내는' 연속 동작을 입가 금속 부품이 열려 있는 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "B-200이 찰리를 향해 카메라 렌즈 같은 두 눈을 찌푸린 듯 미세하게 좁힌 시선.",
            "characters": [
              "B-200",
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "찰리가 웅크린 B-200의 바로 옆 바닥에 엉덩이를 대고 털썩 주저앉은 찰나.",
            "characters": [
              "찰리",
              "B-200"
            ],
            "based_on_beat": 2,
            "original_description": "찰리가 웅크린 B-200의 바로 옆 바닥에 엉덩이를 대고 털썩 주저앉는 찰나.",
            "validator_reason": "'주저앉는' 진행형 동작을 이미 바닥에 주저앉은 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "기겁한 B-200이 찰리의 반대편으로 상체를 확 젖힌 채 굳어있는 역동적인 구도.",
            "characters": [
              "B-200",
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "기겁한 B-200이 찰리의 반대편으로 상체를 확 젖히며 거리를 두는 역동적인 구도.",
            "validator_reason": "'젖히며 거리를 두는' 연속 동작을 상체를 젖힌 채 굳은 자세의 한 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "B-200이 자신의 고사포 팔을 허공을 향해 번쩍 치켜든 위압적인 찰나.",
            "characters": [
              "B-200"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "치켜든 고사포를 보며 찰리가 두 눈의 푸른 안광을 크게 확장한 놀란 표정.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "찰리가 B-200의 거대한 고사포 끝을 두 눈에 빛을 머금은 채 바라보는 호기심 어린 시선.",
            "characters": [
              "찰리",
              "B-200"
            ],
            "based_on_beat": 3,
            "original_description": "찰리가 B-200의 거대한 고사포 끝을 향해 두 눈을 반짝이며 바라보는 호기심 어린 시선.",
            "validator_reason": "'반짝이며 바라보는'이라는 연속 상태/동작을 빛을 머금은 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "B-200이 자신의 팔에 달린 고사포를 씁쓸하게 내려다보는 구도.",
            "characters": [
              "B-200"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "B-200이 찰리의 가슴 중앙에 달린 둥근 링 부품을 향해 굵은 금속 손가락을 뻗은 채 정확히 가리키고 있는 손끝.",
            "characters": [
              "B-200",
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "B-200이 굵은 금속 손가락을 뻗어 찰리의 가슴 중앙에 달린 둥근 링 부품을 정확히 가리키는 손끝.",
            "validator_reason": "'뻗어 가리키는' 순차 동작을 손가락을 뻗은 채 가리키고 있는 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "찰리가 턱을 푹 숙인 채 자신의 가슴 장갑판에 박힌 링 부품을 빤히 내려다보는 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 20,
            "description": "B-200이 찰리를 빤히 바라보며 두 눈의 조리개를 넓게 확장한 집중된 클로즈업.",
            "characters": [
              "B-200",
              "찰리"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 21,
            "description": "환한 밖에서 자신을 부르는 소리에 찰리가 문 쪽으로 고개를 확 돌린 채 멈칫한 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 4,
            "original_description": "환한 밖에서 자신을 부르는 소리에 찰리가 문 쪽으로 고개를 확 돌리는 찰나.",
            "validator_reason": "'돌리는'이라는 동작의 진행을 고개를 돌린 뒤 멈칫한 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 22,
            "description": "B-200이 찰리의 시선을 외면한 채 어두운 벽 쪽으로 고개를 돌려 멈춘 굳은 자세.",
            "characters": [
              "B-200",
              "찰리"
            ],
            "based_on_beat": 4,
            "original_description": "B-200이 찰리의 시선을 외면한 채 어두운 벽 쪽으로 고개를 돌려버리는 굳은 자세.",
            "validator_reason": "'돌려버리는'이라는 동작의 진행을 고개를 돌려 멈춘 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 23,
            "description": "찰리가 환한 창고 밖을 향해 달려 나가며 육중한 금속 다리 한쪽이 지면에서 막 떨어진 미드액션 뒷모습.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 4,
            "original_description": "찰리가 환한 창고 밖을 향해 육중한 금속 다리로 달려 나가는 역동적인 뒷모습.",
            "validator_reason": "'달려 나가는' 연속 이동 동작을 한쪽 다리가 지면에서 떨어진 미드액션 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 24,
            "description": "B-200이 찰리가 떠난 빈자리를 가만히 응시하는 구도.",
            "characters": [
              "B-200",
              "찰리"
            ],
            "based_on_beat": 4,
            "original_description": "B-200이 멀어지는 찰리의 빈자리를 가만히 응시하는 구도.",
            "validator_reason": "'멀어지는'이라는 시간 진행적 맥락을 찰리가 이미 떠나고 난 시각적 빈자리 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 25,
            "description": "B-200이 바닥에 놓인 낡은 종이 박스를 거대한 손으로 살며시 옆으로 밀고 있는 미드액션 손끝 클로즈업.",
            "characters": [
              "B-200"
            ],
            "based_on_beat": 4,
            "original_description": "B-200이 바닥에 놓인 낡은 종이 박스를 거대한 손으로 살며시 옆으로 밀어내는 손끝 클로즈업.",
            "validator_reason": "'밀어내는'이라는 연속 동작을 박스를 밀고 있는 도중의 미드액션 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 26,
            "description": "종이 박스 뒤에 숨겨져 있던 둥지 안에서 B-200이 키운 아기 새들이 입을 크게 벌린 채 위를 올려다보는 찰나.",
            "characters": [
              "아기 새들"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 27,
            "description": "B-200이 둥지 안의 아기 새들을 향해 따뜻한 안광을 뿜은 채 조용히 내려다보는 평온한 구도.",
            "characters": [
              "B-200",
              "아기 새들"
            ],
            "based_on_beat": 4,
            "original_description": "B-200이 둥지 안의 B-200이 키운 아기 새들을 향해 따뜻한 안광을 뿜으며 조용히 내려다보는 평온한 구도.",
            "validator_reason": "'뿜으며 내려다보는' 연속 상태 묘사를 안광을 뿜은 고정 상태로 수정하고 B-200 중복 텍스트를 정리함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 65,
        "scene_heading": "무너진 백화점 - D",
        "shots": [
          {
            "shot_index": 1,
            "description": "낡은 방독면을 쓴 이현우와 수빈이 무너진 백화점을 향해 앞발을 들어 뒷발로 몸을 지탱한 미드 스트라이드 자세의 조심스러운 전신.",
            "characters": [
              "이현우",
              "수빈"
            ],
            "based_on_beat": 1,
            "original_description": "낡은 방독면을 쓴 이현우와 수빈이 무너진 백화점을 향해 조심스럽게 발을 내딛는 전신.",
            "validator_reason": "이동 동작(발을 내딛는)을 한쪽 발로 지탱한 추진력이 보존된 미드 액션 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "반쯤 붕괴된 거대한 백화점 건물 위로 이끼와 덩굴이 정글처럼 빽빽하게 뒤덮인 웅장한 전경.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "걸음을 멈춘 수빈이 한 손에 쥔 방사능 측정기를 앞을 향해 쑥 내민 구도.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "수빈의 손에 들린 방사능 측정기의 바늘이 숫자 0을 정확히 가리키며 멈춘 액정 클로즈업.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "수빈의 검지손가락이 방사능 측정기 옆면 플라스틱에 부딪혀 힘이 가해진 손끝 찰나.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 1,
            "original_description": "수빈이 검지손가락으로 방사능 측정기의 옆면 플라스틱을 툭툭 치는 손끝 찰나.",
            "validator_reason": "반복적인 마찰/타격 동작(툭툭 치는)을 손끝이 닿아 힘이 실린 단일 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "수빈이 방독면 너머로 미간을 찌푸린 채 측정기를 의아하게 내려다보는 시선.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "이현우가 고개를 들어 마구잡이로 자란 나무와 웅덩이가 고인 주변 한 곳을 유심히 응시하는 구도.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 고개를 들어 마구잡이로 자란 나무와 웅덩이가 고인 주변을 유심히 둘러보는 구도.",
            "validator_reason": "연속적인 시선 이동 동작(둘러보는)을 한 곳을 고정해 바라보는 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "이끼 덮인 백화점 나뭇가지를 박차고 올라 허공을 향해 두 날개를 활짝 편 채 떠 있는 작은 새의 찰나.",
            "characters": [],
            "based_on_beat": 1,
            "original_description": "이끼 덮인 백화점 나뭇가지 위에서 작은 새 한 마리가 허공을 향해 날개를 펄럭이며 날아오르는 찰나.",
            "validator_reason": "이동 동작(날아오르는)을 나뭇가지를 밀어내고 허공에 뜬 미드 액션 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "우거진 수풀 사이에서 작은 짐승이 수풀 쪽으로 상체를 반쯤 튼 날렵한 찰나.",
            "characters": [],
            "based_on_beat": 1,
            "original_description": "우거진 수풀 사이에서 작은 짐승이 상체를 돌려 몸을 숨기기 직전의 날렵한 찰나.",
            "validator_reason": "시간 간격이 있는 상태(숨기기 직전)를 상체를 튼 고정된 시각적 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "이현우가 두 손으로 방독면을 꽉 쥐고 위로 강하게 당겨 얼굴에서 반쯤 벗겨진 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 자신의 얼굴을 덮은 방독면을 두 손으로 꽉 쥐고 위로 거칠게 벗어내는 찰나.",
            "validator_reason": "진행형 동작(벗어내는)을 방독면이 반쯤 벗겨진 고정된 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "맨얼굴을 드러낸 이현우가 눈을 감고 고개를 치켜든 채 가슴을 부풀려 숨을 머금은 평온한 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "맨얼굴을 드러낸 이현우가 눈을 감고 고개를 치켜든 채 숨을 깊게 들이마시는 평온한 얼굴.",
            "validator_reason": "진행되는 동작(들이마시는)을 공기를 머금어 가슴이 부푼 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "방독면을 쓴 수빈이 맨얼굴의 이현우를 향해 두 눈을 동그랗게 뜨고 기겁한 표정.",
            "characters": [
              "수빈",
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "이현우의 손가락 끝이 콘크리트 잔해 위를 덮은 짙고 푸른 이끼에 닿아 부드럽게 눌린 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 콘크리트 잔해 위를 덮은 짙고 푸른 이끼를 손가락으로 부드럽게 쓰다듬는 손끝.",
            "validator_reason": "연속 마찰 동작(쓰다듬는)을 손가락 끝이 이끼에 닿아 눌려 있는 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "오염이 없음을 깨달은 수빈이 흙바닥을 향해 팔을 강하게 뻗어 방독면이 손끝에서 막 떨어져 허공에 떠 있는 역동적인 찰나.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 1,
            "original_description": "오염이 없음을 깨달은 수빈이 자신의 방독면을 흙바닥을 향해 거칠게 확 내던지는 역동적인 찰나.",
            "validator_reason": "이동 동작(내던지는)을 팔을 뻗은 자세와 함께 물체가 허공에 뜬 미드 액션 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "맨얼굴의 수빈과 이현우가 서로를 마주 보며 입꼬리를 올려 환하게 미소 짓는 구도.",
            "characters": [
              "수빈",
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "이현우와 수빈이 무너진 백화점의 거대한 콘크리트 틈새 안을 향해 앞발을 들어 뒷발로 몸을 지탱한 미드 스트라이드 순간의 뒷모습.",
            "characters": [
              "이현우",
              "수빈"
            ],
            "based_on_beat": 2,
            "original_description": "이현우와 수빈이 무너진 백화점의 거대한 콘크리트 틈새 안으로 발을 내딛는 뒷모습.",
            "validator_reason": "이동 동작(발을 내딛는)을 보행 방향과 지탱하는 발이 포착된 미드 액션 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "높은 잔해 위 어둠 속, 우뚝 선 아시아계 남성의 짙은 실루엣 뒷모습 너머로 아래쪽의 이현우와 수빈이 백화점 틈새 안으로 몸이 반쯤 가려진 조감 구도.",
            "characters": [
              "아시아계 남성",
              "이현우",
              "수빈"
            ],
            "based_on_beat": 2,
            "original_description": "높은 잔해 위 어둠 속, 우뚝 선 아시아계 남성의 짙은 실루엣 뒷모습 너머로 아래쪽의 이현우와 수빈이 백화점 틈새로 들어가는 조감 구도.",
            "validator_reason": "이동 동작(들어가는)을 틈새로 인해 몸이 반쯤 가려진 채 정지된 시각적 상태로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 66,
        "scene_heading": "66. 백화점 안 - D",
        "shots": [
          {
            "shot_index": 1,
            "description": "어두컴컴한 백화점 안, 이현우와 수빈이 한 손에 쥔 손전등의 빛을 먼지 덮인 잔해 쪽으로 길게 비추는 구도.",
            "characters": [
              "이현우",
              "수빈"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "이현우가 무너진 벽 틈에 박힌 낡은 비석 모양의 안내판을 향해 입술을 오므리고 입김을 세차게 부는 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "먼지가 날아간 안내판 표면에 '지하 1층~3층 식품 코너'라는 낡은 글씨가 선명하게 드러난 클로즈업.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "이현우가 손전등 빛을 아래로 비추며 잔해 틈새의 망가진 에스컬레이터를 유심히 내려다보는 시선.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "이현우가 앞으로 나서려는 수빈의 가슴 앞쪽으로 한쪽 팔을 뻗어 단호하게 가로막는 자세.",
            "characters": [
              "이현우",
              "수빈"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "이현우가 손전등을 든 채 무너진 바닥 위로 조심스럽게 한쪽 발을 내딛는 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "이현우가 밟은 바닥 전체가 굉음과 함께 아래로 푹 꺼지며 흙먼지가 허공으로 솟구치고 있는 붕괴 중의 파괴적인 한 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 밟은 바닥 전체가 굉음과 함께 아래로 푹 꺼지며 흙먼지가 솟구치는 파괴적인 순간.",
            "validator_reason": "'푹 꺼지며 솟구치는' 붕괴 진행 상황을 허공으로 흙먼지가 솟구치고 있는 변화 중의 한 찰나로 명확히 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "무너지는 바닥과 함께 칠흑 같은 구멍 아래로 추락하며 이현우의 상체가 허공에 뜬 위태로운 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "이현우의 상체가 무너지는 바닥과 함께 칠흑 같은 구멍 아래로 확 떨어지는 위태로운 찰나.",
            "validator_reason": "'확 떨어지는'이라는 모호한 이동 표현을 추락으로 상체가 허공에 뜬 mid-action의 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "구멍 가장자리로 몸을 날려 엎드린 수빈이 허공에 매달린 이현우의 손목을 두 손으로 빈틈없이 꽉 틀어쥔 타격감 있는 클로즈업.",
            "characters": [
              "수빈",
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "수빈이 구멍 가장자리로 몸을 날리며 허공으로 떨어지는 이현우의 손목을 두 손으로 빈틈없이 꽉 틀어쥔 타격감 있는 클로즈업.",
            "validator_reason": "'몸을 날리며 틀어쥔'이라는 두 연속 동작을 엎드린 채 꽉 틀어쥔 능동적 접촉의 한 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "매달려 있던 지반 전체가 와르르 무너져 내린 잔해와 함께 두 사람의 몸이 거대한 구멍 속을 향해 맹렬히 추락하고 있는 공중의 찰나.",
            "characters": [
              "수빈",
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "수빈과 이현우가 매달린 지반 전체가 와르르 무너져 내리며 두 사람의 몸이 거대한 구멍 속으로 맹렬히 추락하는 공중의 찰나.",
            "validator_reason": "'무너져 내리며 추락하는'이라는 연결 표현을 제거하고, 잔해와 함께 허공을 추락하고 있는 mid-action 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "이현우와 수빈의 몸이 지하 식품 코너 바닥에 거세게 부딪힌 충격으로 짙은 흙먼지가 사방으로 튀어 오르고 있는 타격의 찰나.",
            "characters": [
              "이현우",
              "수빈"
            ],
            "based_on_beat": 1,
            "original_description": "이현우와 수빈의 몸이 지하 식품 코너 바닥에 거세게 부딪히며 짙은 흙먼지가 사방으로 튀어 오르는 타격의 순간.",
            "validator_reason": "'부딪히며 튀어 오르는'이라는 인과적 연속 동작을 부딪힌 직후 먼지가 비산하는 하나의 타격 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "바닥에 널브러진 수빈이 켜진 손전등을 이현우의 얼굴 쪽으로 바짝 비추는 구도.",
            "characters": [
              "수빈",
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "이현우가 흙먼지 묻은 얼굴로 손가락을 들어 위쪽 구멍을 가리키는 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "손전등 빛이 닿은 곳에 먼지 쌓인 통조림과 와인병들이 진열된 낡은 식품 코너의 전경이 드러난 구도.",
            "characters": [],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "수빈이 뚜껑을 딴 통조림을 코끝에 바짝 가져다 댄 채 냄새를 맡는 집중한 얼굴.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "이현우가 멀리서 다른 진열대를 향해 손가락을 뻗은 채 입을 크게 벌려 소리치는 표정.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 멀리서 다른 진열대를 향해 손가락을 뻗으며 입을 크게 벌려 소리치는 표정.",
            "validator_reason": "'뻗으며 소리치는'이라는 시간 연결어를 '뻗은 채 소리치는' 고정된 동시 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "이현우의 곁에 선 수빈이 산더미처럼 쌓인 라면과 통조림 더미를 향해 두 눈을 크게 치켜뜬 놀란 얼굴.",
            "characters": [
              "수빈",
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "수빈이 이현우의 곁으로 다가서며 산더미처럼 쌓인 라면과 통조림 더미를 향해 두 눈을 크게 치켜뜬 놀란 얼굴.",
            "validator_reason": "'다가서며'라는 이동 동작 진행을 제거하고, 곁에 선 채 놀란 표정을 짓는 한 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "이현우와 수빈이 고개를 푹 꺾어 아득하게 높은 천장의 뚫린 구멍을 올려다보는 막막한 시선.",
            "characters": [
              "이현우",
              "수빈"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "이현우가 무너진 콘크리트 잔해로 꽉 막힌 복도 끝을 향해 손전등 빛을 비추는 굳은 구도.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 20,
            "description": "수빈이 굳게 잠긴 낡은 셔터 문을 두 손으로 꽉 움켜쥔 채 절망적인 표정을 짓는 찰나.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 21,
            "description": "흙바닥에 털썩 주저앉은 이현우가 한 손으로 통조림 뚜껑의 고리를 위로 거칠게 잡아당기고 있는 손끝 클로즈업.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "이현우가 흙바닥에 털썩 주저앉아 한 손으로 통조림 뚜껑의 고리를 위로 거칠게 잡아당겨 여는 손끝 클로즈업.",
            "validator_reason": "'주저앉아 여는'이라는 두 연속 동작을 '주저앉은 채 잡아당기고 있는' 한 순간의 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 22,
            "description": "수빈이 이현우를 내려다보며 양손을 허리에 얹은 채 미간을 찌푸린 못마땅한 얼굴.",
            "characters": [
              "수빈",
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 23,
            "description": "이현우가 통조림을 든 채 수빈을 향해 입꼬리를 길게 늘어뜨리고 환하게 미소 짓는 표정.",
            "characters": [
              "이현우",
              "수빈"
            ],
            "based_on_beat": 3,
            "original_description": "이현우가 통조림을 든 채 수빈을 향해 입꼬리를 길게 늘어뜨리며 환하게 미소 짓는 표정.",
            "validator_reason": "'늘어뜨리며'라는 시간 진행 표현을 '늘어뜨리고'라는 고정된 결과 상태 묘사로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 24,
            "description": "이현우가 두 눈을 동그랗게 뜨고 턱을 아래로 뺀 채 우스꽝스러운 표정을 짓는 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 25,
            "description": "수빈이 무릎을 모으고 바닥에 주저앉은 채 고개를 푹 떨군 부러움 섞인 쓸쓸한 얼굴.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 3,
            "original_description": "수빈이 무릎을 모으고 바닥에 주저앉으며 고개를 푹 떨군 부러움 섞인 쓸쓸한 얼굴.",
            "validator_reason": "'주저앉으며'라는 동작 진행을 '주저앉은 채'라는 완료된 자세의 한 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 26,
            "description": "아득히 높은 천장 구멍 가장자리로 낯선 남성의 짙은 뒷모습 실루엣이 불쑥 드러난 찰나.",
            "characters": [
              "낯선 남성"
            ],
            "based_on_beat": 3,
            "original_description": "아득히 높은 천장 구멍 가장자리로 낯선 남성의 짙은 뒷모습 실루엣이 불쑥 나타난 찰나.",
            "validator_reason": "'나타난'이라는 동작적 의미의 동사를 고정된 시각적 상태인 '드러난'으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 27,
            "description": "천장에서 떨어진 굵은 빗방울이 잠든 이현우의 뺨에 정통으로 부딪혀 물방울이 사방으로 튀고 있는 타격의 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 4,
            "original_description": "천장에서 떨어진 굵은 빗방울이 잠든 이현우의 뺨에 정통으로 닿으며 물방울이 튀는 타격의 찰나.",
            "validator_reason": "'닿으며 튀는'이라는 시간 연결어를 빗방울이 부딪혀 튀고 있는 하나의 타격 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 28,
            "description": "뺨에 빗방울을 맞은 이현우가 두 눈을 번쩍 치켜뜬 얼굴 클로즈업.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 4,
            "original_description": "이현우가 뺨에 닿은 빗방울에 두 눈을 번쩍 치켜뜨는 얼굴 클로즈업.",
            "validator_reason": "'치켜뜨는'이라는 동작 진행 동사를 고정된 결과 상태인 '치켜뜬'으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 29,
            "description": "이현우가 바닥에서 상체를 일으킨 채 활짝 펼쳐진 낡은 파라솔 아래 잠든 수빈을 빤히 바라보는 시선.",
            "characters": [
              "이현우",
              "수빈"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 30,
            "description": "어둠 속에서 부스럭거리는 소리에 이현우가 위쪽 천장 구멍을 향해 고개를 확 돌린 긴장된 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 31,
            "description": "아득히 먼 천장 구멍 틈새에서 굵고 튼튼한 밧줄 하나가 바닥을 향해 맹렬히 떨어져 내리고 있는 역동적인 구도의 한 찰나.",
            "characters": [],
            "based_on_beat": 4,
            "original_description": "아득히 먼 천장 구멍 틈새에서 굵고 튼튼한 밧줄 하나가 바닥을 향해 맹렬히 쏟아져 내리는 역동적인 구도.",
            "validator_reason": "'쏟아져 내리는' 동작을 하강 변화가 진행 중인 명확한 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 32,
            "description": "이현우가 잠든 수빈의 양어깨를 두 손으로 꽉 움켜쥔 채 세차게 흔들고 있는 찰나.",
            "characters": [
              "이현우",
              "수빈"
            ],
            "based_on_beat": 4,
            "original_description": "이현우가 잠든 수빈의 양어깨를 두 손으로 꽉 움켜쥐고 세차게 흔드는 찰나.",
            "validator_reason": "'흔드는'이라는 동사를 현재 진행 중인 상태인 '흔들고 있는'으로 수정하여 정지된 한 순간임을 명확히 함.",
            "character_ids": []
          },
          {
            "shot_index": 33,
            "description": "잠에서 깬 수빈이 허공에 매달린 밧줄을 올려다보는 놀란 표정.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 4,
            "original_description": "수빈이 두 눈을 비비며 잠에서 깨어 허공에 매달린 밧줄을 올려다보는 놀란 표정.",
            "validator_reason": "'비비며 깨어 올려다보는'이라는 연속적인 시간 흐름을 제거하고, 올려다보는 시선의 한 순간으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 34,
            "description": "이현우가 위쪽 구멍을 향해 입 주위로 두 손을 나팔 모양으로 모은 채 크게 소리치는 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 35,
            "description": "이현우가 수빈의 등을 구멍 쪽 밧줄을 향해 두 손바닥으로 힘껏 밀어내고 있는 동작의 찰나.",
            "characters": [
              "이현우",
              "수빈"
            ],
            "based_on_beat": 4,
            "original_description": "이현우가 수빈의 등을 구멍 쪽 밧줄을 향해 두 손바닥으로 힘껏 떠미는 동작.",
            "validator_reason": "'떠미는 동작'을 능동적 힘의 방향이 보존된 '밀어내고 있는' 중인 mid-action 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 36,
            "description": "수빈이 두 손으로 굵은 밧줄을 꽉 움켜쥐고 위를 향해 몸을 끌어올리는 힘이 실린 찰나.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 37,
            "description": "수빈의 발아래에서 이현우가 밧줄을 단단히 쥐고 맹렬히 위로 기어오르는 역동적인 자세.",
            "characters": [
              "이현우",
              "수빈"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 38,
            "description": "밧줄을 쥔 이현우의 상체가 천장 구멍 바깥의 백화점 1층 바닥 위로 쑥 빠져나온 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 39,
            "description": "구멍을 빠져나온 이현우가 앞을 바라보는, 두 눈동자가 크게 확장된 충격받은 얼굴 클로즈업.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 5,
            "original_description": "구멍을 빠져나온 이현우가 앞을 바라보며 두 눈동자가 크게 확장된 충격받은 얼굴 클로즈업.",
            "validator_reason": "'빠져나온' '바라보며'로 이어지는 연결어를 제거하고, 빠져나와 앞을 바라보는 고정된 상태의 한 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 40,
            "description": "짧은 머리의 정한수가 무너진 잔해 위에서 이현우를 향해 날카로운 눈빛을 쏘아보는 자세로 우뚝 선 위압적인 전신.",
            "characters": [
              "정한수",
              "이현우"
            ],
            "based_on_beat": 5,
            "original_description": "짧은 머리의 정한수가 무너진 잔해 위에서 이현우를 향해 날카로운 눈빛을 쏘아보며 우뚝 선 위압적인 전신.",
            "validator_reason": "'쏘아보며 우뚝 선'이라는 진행 연결어를 '쏘아보는 자세로 우뚝 선' 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 41,
            "description": "구멍 밖으로 상체를 반쯤 뺀 수빈이 정한수를 향해 입을 반쯤 벌린 채 얼어붙은 표정.",
            "characters": [
              "수빈",
              "정한수"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 42,
            "description": "정한수의 시선이 이현우를 지나쳐 수빈의 얼굴을 향해 정확히 꽂힌 구도.",
            "characters": [
              "정한수",
              "이현우",
              "수빈"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 43,
            "description": "수빈 쪽으로 고개를 확 돌린 채 미간을 찌푸린 이현우의 어리둥절한 얼굴.",
            "characters": [
              "이현우",
              "수빈"
            ],
            "based_on_beat": 5,
            "original_description": "이현우가 수빈 쪽으로 고개를 확 돌리며 미간을 찌푸린 어리둥절한 얼굴.",
            "validator_reason": "'돌리며 찌푸린'이라는 두 연속 동작을 고개를 돌린 채 표정을 짓고 있는 고정된 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 44,
            "description": "정한수를 빤히 응시한 채 동공을 파르르 떨고 있는 수빈의 혼란스럽고 충격받은 표정 클로즈업.",
            "characters": [
              "수빈",
              "정한수"
            ],
            "based_on_beat": 5,
            "original_description": "수빈이 정한수를 빤히 응시하며 동공을 파르르 떠는 혼란스럽고 충격받은 표정 클로즈업.",
            "validator_reason": "'응시하며 떠는'이라는 시간 연결어를 제거하고 응시한 채 떨고 있는 동시 고정 상태로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 67,
        "scene_heading": "67. 익산 늪지대 마을 - 노을",
        "shots": [
          {
            "shot_index": 1,
            "description": "해 질 녘 흙바닥 공터에서 아시아계 난민 아이들이 축구공을 쫓아 한 발을 땅에서 뗀 채 달리는 자세로 멈춘 역동적인 찰나.",
            "characters": [
              "아시아계 난민 아이들"
            ],
            "based_on_beat": 1,
            "original_description": "해 질 녘 흙바닥 공터에서 아시아계 난민 아이들이 축구공을 쫓아 달리는 역동적인 찰나.",
            "validator_reason": "연속적인 달리기 동작을 motion direction이 보존된 mid-action 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "찰리가 노을 지는 하늘을 향해 금속 고개를 옆으로 갸우뚱하게 꺾은 모습.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "앰버가 찰리를 향해 고개를 돌린 채 빤히 쳐다보는 시선.",
            "characters": [
              "앰버",
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "라울이 찰리와 앰버 쪽으로 한쪽 다리를 내딛은 채 걸어오는 자세로 멈춘 전신.",
            "characters": [
              "라울",
              "찰리",
              "앰버"
            ],
            "based_on_beat": 1,
            "original_description": "라울이 찰리와 앰버 쪽으로 성큼성큼 걸어오는 전신.",
            "validator_reason": "연속적인 걷기 동작을 한쪽 다리를 내딛은 mid-action 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "언덕 능선 너머로 흙먼지를 거칠게 일으키며 덤프트럭이 달려오는 중인 한 순간.",
            "characters": [],
            "based_on_beat": 1,
            "original_description": "언덕 능선 너머로 흙먼지를 거칠게 일으키며 덤프트럭이 달려오는 외관.",
            "validator_reason": "트럭의 연속적인 주행을 먼지를 일으키며 달려오는 진행 중인 한 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "트럭을 향해 아시아계 난민들이 두 팔을 번쩍 치켜들고 환호하는 구도.",
            "characters": [
              "아시아계 난민들"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "활짝 열린 트럭 운전석 문에서 이현우가 바닥으로 한쪽 발을 맹렬히 내딛어 몸이 반쯤 허공에 뜬 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "트럭 운전석 문이 열리고 이현우가 바닥으로 한쪽 발을 맹렬히 내딛는 찰나.",
            "validator_reason": "'문이 열리고'와 '내딛는'의 두 연속 동작을 문이 열린 상태에서 몸이 뜬 mid-action으로 압축함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "수빈이 트럭 조수석 발판을 박차고 바닥을 향해 허공에 떠 있는 공중의 순간.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 1,
            "original_description": "수빈이 트럭 조수석에서 바닥으로 뛰어내리는 공중의 순간.",
            "validator_reason": "뛰어내리는 연속 동작을 발을 박차고 허공에 뜬 mid-action 순간으로 구체화함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "식량이 실린 트럭 짐칸을 보며 마을총무가 두 눈을 동그랗게 뜬 놀란 표정.",
            "characters": [
              "마을총무"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "수빈이 자신의 등 뒤쪽으로 고개를 휙 돌려 멈춘 찰나.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 2,
            "original_description": "수빈이 자신의 등 뒤쪽으로 고개를 휙 돌리는 찰나.",
            "validator_reason": "고개를 돌리는 동작의 진행을 고개를 돌려 멈춘 상태로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "먼지를 뿜으며 다가온 두 번째 덤프트럭이 공터 한가운데 급정거하여 멈춰 선 외관.",
            "characters": [],
            "based_on_beat": 2,
            "original_description": "먼지를 뿜으며 다가온 두 번째 덤프트럭이 공터 한가운데 급정거하는 외관.",
            "validator_reason": "'다가온'과 '급정거하는'의 시간 간격을 제거하고 정거를 완료한 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "두 번째 트럭에서 내린 정한수가 사람들을 향해 부드럽게 미소 짓는 얼굴.",
            "characters": [
              "정한수"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "이현우가 정한수를 향해 미간을 깊게 찌푸리며 매섭게 쏘아보는 경계어린 시선.",
            "characters": [
              "이현우",
              "정한수"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "해질 무렵, 모닥불 주변에 둘러앉은 아시아계 난민들이 음식을 입으로 가져간 채 멈춘 평화로운 전경.",
            "characters": [
              "아시아계 난민들"
            ],
            "based_on_beat": 3,
            "original_description": "해질 무렵, 모닥불 주변에 둘러앉은 아시아계 난민들이 음식을 먹는 평화로운 전경.",
            "validator_reason": "음식을 먹는 연속 동작을 입으로 가져간 채 멈춘 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "앰버와 라울이 음악에 맞춰 양팔을 허공에 휘두르며 춤을 추는 자세로 멈춘 역동적인 구도.",
            "characters": [
              "앰버",
              "라울"
            ],
            "based_on_beat": 3,
            "original_description": "앰버와 라울이 음악에 맞춰 양팔을 허공에 휘두르며 춤을 추는 역동적인 구도.",
            "validator_reason": "춤을 추는 연속적인 동작을 역동적인 춤 자세로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "어두운 폐창고 안에서 B-200이 찰리 쪽을 향해 상체를 웅크리고 빤히 바라보는 시선.",
            "characters": [
              "B-200",
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "모닥불 앞에 홀로 앉은 이현우가 턱을 괸 채 무심하게 앞을 응시하는 모습.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "수빈이 음식이 담긴 접시를 이현우의 가슴 앞으로 불쑥 내민 손끝.",
            "characters": [
              "수빈",
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "이현우가 미간을 찌푸린 채 수빈에게서 고개를 옆으로 휙 돌려버린 단호한 찰나.",
            "characters": [
              "이현우",
              "수빈"
            ],
            "based_on_beat": 3,
            "original_description": "이현우가 수빈을 쳐다보며 미간을 찌푸린 채 고개를 옆으로 돌려버리는 단호한 찰나.",
            "validator_reason": "'쳐다보며'와 '돌려버리는'의 연속 동작을 고개를 돌린 완료 상태로 압축함.",
            "character_ids": []
          },
          {
            "shot_index": 20,
            "description": "정한수가 이현우 곁에 서서 허리를 살짝 굽힌 정중한 자세.",
            "characters": [
              "정한수",
              "이현우"
            ],
            "based_on_beat": 4,
            "original_description": "정한수가 이현우 곁으로 다가와 허리를 살짝 굽힌 정중한 자세.",
            "validator_reason": "'다가와'라는 선행 동작을 지우고 허리를 굽힌 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 21,
            "description": "이현우가 턱을 치켜들고 정한수를 비딱하게 쏘아보는 굳은 얼굴.",
            "characters": [
              "이현우",
              "정한수"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 22,
            "description": "수빈이 정한수를 향해 눈웃음을 지으며 환하게 미소 짓는 표정.",
            "characters": [
              "수빈",
              "정한수"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 23,
            "description": "이현우가 수빈의 웃는 얼굴을 보며 입술을 꽉 깨문 질투 어린 표정 클로즈업.",
            "characters": [
              "이현우",
              "수빈"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 24,
            "description": "이현우가 모닥불 앞에서 상체를 반쯤 일으켜 세운 역동적인 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 4,
            "original_description": "이현우가 모닥불 앞에서 상체를 벌떡 일으켜 세우는 역동적인 찰나.",
            "validator_reason": "일으켜 세우는 연속 동작을 반쯤 일어선 mid-action 순간으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 25,
            "description": "이현우가 정한수와 수빈을 등진 채 공터 바깥쪽으로 한쪽 발을 내딛으며 맹렬히 걷는 자세를 취한 뒷모습.",
            "characters": [
              "이현우",
              "정한수",
              "수빈"
            ],
            "based_on_beat": 5,
            "original_description": "이현우가 정한수와 수빈을 등진 채 공터 바깥쪽으로 맹렬히 걷는 뒷모습.",
            "validator_reason": "걷는 연속 동작을 한쪽 발을 내딛은 mid-action 자세로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 26,
            "description": "수빈이 다급한 표정으로 한 발을 땅에서 뗀 채 이현우의 등 뒤를 바짝 쫓아 달리는 자세로 멈춘 구도.",
            "characters": [
              "수빈",
              "이현우"
            ],
            "based_on_beat": 5,
            "original_description": "수빈이 다급한 표정으로 이현우의 등 뒤를 바짝 쫓아 달리는 구도.",
            "validator_reason": "쫓아 달리는 연속 동작을 한 발이 땅에서 떨어진 달리기 자세로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 27,
            "description": "이현우가 뒤를 확 돌아선 채 수빈을 향해 눈을 부릅뜨고 입을 크게 벌려 고함치는 분노의 표정.",
            "characters": [
              "이현우",
              "수빈"
            ],
            "based_on_beat": 5,
            "original_description": "이현우가 뒤를 확 돌며 수빈을 향해 눈을 부릅뜨고 고함치는 분노의 표정.",
            "validator_reason": "'돌며'와 '고함치는'의 연속 동작을 뒤돌아선 고함 표정 상태로 압축함.",
            "character_ids": []
          },
          {
            "shot_index": 28,
            "description": "주변의 아시아계 난민들이 어깨를 웅크린 채 일제히 고개를 푹 숙인 굴복의 구도.",
            "characters": [
              "아시아계 난민들"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 29,
            "description": "이현우가 어둠 속을 향해 한 발을 내딛고 찰리, 앰버, 라울이 그 뒤를 바짝 따르는 자세로 멈춘 전신.",
            "characters": [
              "이현우",
              "찰리",
              "앰버",
              "라울"
            ],
            "based_on_beat": 5,
            "original_description": "이현우가 어둠 속을 향해 성큼성큼 걷고 찰리, 앰버, 라울이 그 뒤를 바짝 따르는 전신.",
            "validator_reason": "걷고 따르는 연속 동작을 발을 뻗고 따르는 mid-action 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 30,
            "description": "칠흑 같은 밤하늘 한가운데 둥근 보름달이 눈부시게 빛나는 전경.",
            "characters": [],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 31,
            "description": "텅 빈 고요한 마을 공터에 정한수가 타고 온 덤프트럭이 덩그러니 세워진 외관.",
            "characters": [
              "정한수"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 32,
            "description": "덤프트럭의 낡은 철제 뒷문이 바깥으로 활짝 열려 젖혀진 찰나.",
            "characters": [],
            "based_on_beat": 6,
            "original_description": "덤프트럭의 낡은 철제 뒷문이 바깥으로 활짝 열려 젖혀지는 찰나.",
            "validator_reason": "열려 젖혀지는 변화 과정을 활짝 열린 완료 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 33,
            "description": "소총을 든 다수의 아시아계 민병대원들이 트럭 짐칸을 박차고 쏟아져 내려 허공에 떠 있는 공중의 순간.",
            "characters": [
              "아시아계 민병대원들"
            ],
            "based_on_beat": 6,
            "original_description": "소총을 든 다수의 아시아계 민병대원들이 트럭 짐칸에서 우수수 쏟아져 내리는 공중의 순간.",
            "validator_reason": "쏟아져 내리는 진행을 짐칸을 박차고 뜬 공중의 한 찰나로 구체화함.",
            "character_ids": []
          },
          {
            "shot_index": 34,
            "description": "트럭에서 마지막으로 내린 박철진이 입꼬리를 비릿하게 올리며 잠든 마을을 훑어보는 위압적인 구도.",
            "characters": [
              "박철진"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 35,
            "description": "폐창고 앞, B-200이 거대한 금속 손을 활짝 펴 허공에 뜬 아기 새들을 향해 뻗고 있는 찰나.",
            "characters": [
              "B-200"
            ],
            "based_on_beat": 7,
            "original_description": "폐창고 앞, B-200이 거대한 금속 손을 활짝 펴 허공으로 아기 새들을 날려 보내는 찰나.",
            "validator_reason": "날려 보내는 연속 동작을 손을 활짝 펴고 뻗은 정지 상태로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 36,
            "description": "찰리가 비행하는 아기 새를 향해 굵은 금속 검지손가락을 조심스레 뻗은 손끝 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 7,
            "character_ids": []
          },
          {
            "shot_index": 37,
            "description": "B-200이 자신의 팔에 달린 흉측한 고사포 총구를 빤히 내려다보는 시무룩한 시선.",
            "characters": [
              "B-200"
            ],
            "based_on_beat": 7,
            "character_ids": []
          },
          {
            "shot_index": 38,
            "description": "찰리가 B-200을 향해 낡은 금속 손을 다정하게 내민 평온한 구도.",
            "characters": [
              "찰리",
              "B-200"
            ],
            "based_on_beat": 7,
            "character_ids": []
          },
          {
            "shot_index": 39,
            "description": "마음 곳곳에서 군용 트럭의 헤드라이트가 눈부시게 번쩍 켜진 찰나.",
            "characters": [],
            "based_on_beat": 8,
            "original_description": "마을 곳곳에서 군용 트럭의 헤드라이트가 눈부시게 번쩍 켜지는 찰나.",
            "validator_reason": "켜지는 진행 과정을 켜진 완료 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 40,
            "description": "마을 사람들이 양손을 머리 뒤로 깍지 낀 채 흙바닥에 무릎을 꿇은 위축된 구도.",
            "characters": [
              "마을 사람들"
            ],
            "based_on_beat": 8,
            "character_ids": []
          },
          {
            "shot_index": 41,
            "description": "민병대원들이 이현우와 앰버의 양팔을 꽉 쥔 채 거칠게 앞으로 잡아당기는 힘이 실린 찰나.",
            "characters": [
              "민병대원들",
              "이현우",
              "앰버"
            ],
            "based_on_beat": 8,
            "original_description": "민병대원들이 이현우와 앰버의 양팔을 꽉 쥔 채 거칠게 끌고 나오는 힘이 실린 찰나.",
            "validator_reason": "끌고 나오는 연속 동작을 거칠게 잡아당기는 능동 접촉의 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 42,
            "description": "박철진이 이현우의 코앞에 서서 턱을 치켜든 거만한 얼굴.",
            "characters": [
              "박철진",
              "이현우"
            ],
            "based_on_beat": 8,
            "original_description": "박철진이 이현우의 코앞까지 성큼성큼 다가와 턱을 치켜든 거만한 얼굴.",
            "validator_reason": "'다가와'라는 선행 동작을 지우고 마주 서서 턱을 치켜든 상태로 압축함.",
            "character_ids": []
          },
          {
            "shot_index": 43,
            "description": "정한수가 박철진을 향해 반갑게 두 팔을 벌리고 한쪽 발을 내딛어 다가가는 자세로 멈춘 찰나.",
            "characters": [
              "정한수",
              "박철진"
            ],
            "based_on_beat": 8,
            "original_description": "정한수가 박철진을 향해 반갑게 두 팔을 벌리며 다가가는 찰나.",
            "validator_reason": "다가가는 연속 동작을 한쪽 발을 내딛은 mid-action 순간으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 44,
            "description": "박철진이 정한수의 어깨에 거칠게 팔을 두른 채 껄렁하게 웃는 찰나.",
            "characters": [
              "박철진",
              "정한수"
            ],
            "based_on_beat": 8,
            "character_ids": []
          },
          {
            "shot_index": 45,
            "description": "박철진의 억센 주먹이 정한수의 턱에 정통으로 꽂히는 타격의 순간.",
            "characters": [
              "박철진",
              "정한수"
            ],
            "based_on_beat": 8,
            "character_ids": []
          },
          {
            "shot_index": 46,
            "description": "주먹에 맞은 정한수가 흙바닥에 엉덩방아를 찧은 채 고통스럽게 미간을 찌푸린 얼굴.",
            "characters": [
              "정한수"
            ],
            "based_on_beat": 8,
            "original_description": "주먹에 맞은 정한수가 흙바닥에 엉덩방아를 찧으며 고통스럽게 미간을 찌푸린 얼굴.",
            "validator_reason": "엉덩방아를 찧으며 미간을 찌푸리는 연속을 찧은 채 찌푸린 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 47,
            "description": "수빈이 바닥에 쓰러진 정한수를 향해 두 눈을 크게 치켜뜬 놀란 표정.",
            "characters": [
              "수빈",
              "정한수"
            ],
            "based_on_beat": 9,
            "character_ids": []
          },
          {
            "shot_index": 48,
            "description": "정한수가 수빈을 올려다보며 다급하게 한 손을 뻗는 찰나.",
            "characters": [
              "정한수",
              "수빈"
            ],
            "based_on_beat": 9,
            "character_ids": []
          },
          {
            "shot_index": 49,
            "description": "수빈이 정한수를 향해 턱을 빳빳하게 치켜들고 매섭게 노려보는 경멸의 눈빛.",
            "characters": [
              "수빈",
              "정한수"
            ],
            "based_on_beat": 9,
            "character_ids": []
          },
          {
            "shot_index": 50,
            "description": "어둠 속에서 찰리가 한쪽 발을 내딛어 묵직한 발걸음으로 걸어 나오는 자세로 멈춘 거대한 전신.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 10,
            "original_description": "어둠 속에서 찰리가 묵직한 발걸음으로 걸어 나오는 거대한 전신.",
            "validator_reason": "걸어 나오는 연속 동작을 한 발을 내딛은 mid-action 자세로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 51,
            "description": "민병대원들이 일제히 소총을 들어 찰리의 가슴을 정확히 겨눈 위압적인 구도.",
            "characters": [
              "민병대원들",
              "찰리"
            ],
            "based_on_beat": 10,
            "character_ids": []
          },
          {
            "shot_index": 52,
            "description": "찰리가 두 주먹을 꽉 쥔 채 앞으로 상체를 웅크린 전투 준비 자세.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 10,
            "character_ids": []
          },
          {
            "shot_index": 53,
            "description": "박철진이 이현우의 관자놀이에 권총 총구를 바짝 들이민 매서운 찰나.",
            "characters": [
              "박철진",
              "이현우"
            ],
            "based_on_beat": 10,
            "character_ids": []
          },
          {
            "shot_index": 54,
            "description": "민병대원이 휘두른 소총 개머리판이 앰버의 뒤통수를 맹렬히 강타하는 타격의 순간.",
            "characters": [
              "민병대원",
              "앰버"
            ],
            "based_on_beat": 10,
            "character_ids": []
          },
          {
            "shot_index": 55,
            "description": "머리를 맞은 앰버가 흙바닥을 향해 무방비로 상체가 기울어져 고꾸라진 위태로운 찰나.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 10,
            "original_description": "머리를 맞은 앰버가 흙바닥을 향해 무방비로 고꾸라지는 위태로운 찰나.",
            "validator_reason": "고꾸라지는 진행 과정을 상체가 기울어진 결과 상태의 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 56,
            "description": "찰리가 두 어깨를 푹 떨구며 양팔을 바닥으로 내린 무기력한 자태.",
            "characters": [
              "찰리",
              "앰버",
              "이현우"
            ],
            "based_on_beat": 10,
            "original_description": "찰리가 앰버와 이현우를 번갈아 본 뒤 두 어깨를 푹 떨구며 양팔을 바닥으로 내린 무기력한 자태.",
            "validator_reason": "'번갈아 본 뒤'라는 시간적 선행 동작을 제거하고 내린 상태로 압축함.",
            "character_ids": []
          },
          {
            "shot_index": 57,
            "description": "민병대원이 찰리의 목과 양손목에 거대한 강철 수갑을 거칠게 꽉 조여 채운 손끝 클로즈업.",
            "characters": [
              "민병대원",
              "찰리"
            ],
            "based_on_beat": 10,
            "original_description": "민병대원이 찰리의 목과 양손목에 거대한 강철 수갑을 거칠게 채우는 손끝 클로즈업.",
            "validator_reason": "채우는 연속 동작을 꽉 조여 접촉한 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 58,
            "description": "수갑이 채워진 찰리가 민병대원들의 손에 밀려 트럭 짐칸을 향해 허공에 뜬 역동적인 찰나.",
            "characters": [
              "찰리",
              "민병대원들"
            ],
            "based_on_beat": 11,
            "original_description": "수갑이 채워진 찰리가 민병대원들에게 밀려 트럭 짐칸으로 던져지는 역동적인 찰나.",
            "validator_reason": "던져지는 연속 동작을 밀려서 허공에 뜬 상태의 한 순간으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 59,
            "description": "찰리를 태운 트럭이 거친 흙먼지를 뿜어내며 맹렬히 멀어지는 후면 외관.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 11,
            "character_ids": []
          },
          {
            "shot_index": 60,
            "description": "바닥의 앰버가 멀어지는 트럭을 향해 한쪽 팔을 허공에 뻗은 애절한 구도.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 11,
            "character_ids": []
          },
          {
            "shot_index": 61,
            "description": "박철진과 박철진의 수하 1이 트럭 쪽을 보며 입이 귀에 걸리도록 비열하게 웃는 얼굴 클로즈업.",
            "characters": [
              "박철진",
              "수하 1"
            ],
            "based_on_beat": 11,
            "character_ids": []
          },
          {
            "shot_index": 62,
            "description": "어둠 속에서 B-200이 박철진의 트럭을 향해 거대한 고사포 총구를 정조준한 팽팽한 구도.",
            "characters": [
              "B-200",
              "박철진"
            ],
            "based_on_beat": 11,
            "character_ids": []
          },
          {
            "shot_index": 63,
            "description": "B-200의 고사포 총구에서 시뻘건 화염이 눈부시게 뿜어져 나오는 맹렬한 격발의 순간.",
            "characters": [
              "B-200"
            ],
            "based_on_beat": 11,
            "character_ids": []
          },
          {
            "shot_index": 64,
            "description": "고사포를 맞은 트럭이 공중으로 확 치솟은 채 거꾸로 뒤집힌 전복의 찰나.",
            "characters": [],
            "based_on_beat": 11,
            "original_description": "고사포를 맞은 트럭이 공중으로 확 치솟으며 거꾸로 뒤집히는 전복의 찰나.",
            "validator_reason": "치솟으며 뒤집히는 연속 동작을 치솟은 채 뒤집힌 정지 상태로 압축함.",
            "character_ids": []
          },
          {
            "shot_index": 65,
            "description": "민병대원들이 소총을 어깨에 대고 B-200을 향해 총구에서 불꽃을 뿜으며 사격하는 구도.",
            "characters": [
              "민병대원들",
              "B-200"
            ],
            "based_on_beat": 12,
            "original_description": "민병대원들이 소총을 어깨에 대고 B-200을 향해 일제히 사격을 퍼붓는 구도.",
            "validator_reason": "사격을 퍼붓는 연속 동작을 격발하는 한 순간으로 구체화함.",
            "character_ids": []
          },
          {
            "shot_index": 66,
            "description": "B-200의 금속 몸통에 수많은 총알이 박히며 불꽃 스파크가 사방으로 튀는 타격의 순간.",
            "characters": [
              "B-200"
            ],
            "based_on_beat": 12,
            "character_ids": []
          },
          {
            "shot_index": 67,
            "description": "전복된 트럭에서 튕겨 나온 찰리가 양팔을 맹렬히 바깥으로 벌리자 굵은 수갑이 산산조각 나는 파괴적인 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 12,
            "original_description": "전복된 트럭에서 튕겨 나온 찰리가 양팔을 맹렬히 바깥으로 벌려 굵은 수갑을 산산조각 내는 파괴적인 찰나.",
            "validator_reason": "벌려서 내는 두 인과 동작을 벌린 자세와 산산조각 나는 동시 순간으로 통합함.",
            "character_ids": []
          },
          {
            "shot_index": 68,
            "description": "B-200의 고사포 팔이 쏟아지는 총격에 의해 부러져 허공으로 튕겨 나가는 파편의 찰나.",
            "characters": [
              "B-200"
            ],
            "based_on_beat": 12,
            "character_ids": []
          },
          {
            "shot_index": 69,
            "description": "찰리가 총알이 쏟아지는 B-200의 앞을 가로막으며 거대한 금속 등으로 총격을 받아내는 숭고한 자세.",
            "characters": [
              "찰리",
              "B-200"
            ],
            "based_on_beat": 12,
            "character_ids": []
          },
          {
            "shot_index": 70,
            "description": "하늘에서 거대한 군용 헬기가 서치라이트를 쏘며 바닥을 향해 기관총을 맹렬히 난사하는 공중 구도.",
            "characters": [],
            "based_on_beat": 13,
            "character_ids": []
          },
          {
            "shot_index": 71,
            "description": "박철진이 분노로 일그러진 얼굴로 군용 헬기를 향해 권총의 불꽃을 뿜으며 쏘는 역동적인 찰나.",
            "characters": [
              "박철진"
            ],
            "based_on_beat": 13,
            "original_description": "박철진이 분노로 일그러진 얼굴로 군용 헬기를 향해 권총을 미친 듯이 쏘아대는 역동적인 찰나.",
            "validator_reason": "쏘아대는 연속 동작을 불꽃을 뿜는 격발의 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 72,
            "description": "B-200이 찰리의 낡은 금속 어깨를 한 손으로 단단히 움켜쥔 손끝 클로즈업.",
            "characters": [
              "B-200",
              "찰리"
            ],
            "based_on_beat": 13,
            "character_ids": []
          },
          {
            "shot_index": 73,
            "description": "B-200이 찰리와 일행을 뒤로한 채 한쪽 발을 세게 딛고 민병대 진영을 향해 맹렬히 돌진하는 자세로 멈춘 역동적인 전신.",
            "characters": [
              "B-200",
              "찰리",
              "민병대원들"
            ],
            "based_on_beat": 13,
            "original_description": "B-200이 찰리와 일행을 뒤로한 채 민병대 진영을 향해 맹렬히 돌진하는 역동적인 전신.",
            "validator_reason": "돌진하는 연속 동작을 한 발을 세게 딛고 추진하는 mid-action 자세로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 74,
            "description": "돌진하는 B-200의 두 눈동자에서 붉은빛이 섬뜩하게 번쩍이는 찰나.",
            "characters": [
              "B-200"
            ],
            "based_on_beat": 13,
            "character_ids": []
          },
          {
            "shot_index": 75,
            "description": "B-200이 민병대원들 한가운데서 거대한 폭발 화염에 휩싸이며 산산조각 나는 파괴적인 순간.",
            "characters": [
              "B-200",
              "민병대원들"
            ],
            "based_on_beat": 13,
            "character_ids": []
          },
          {
            "shot_index": 76,
            "description": "폭발 연기가 걷힌 흙바닥 위로 총에 맞은 정한수가 피를 흘린 채 미동 없이 쓰러져 있는 구도.",
            "characters": [
              "정한수"
            ],
            "based_on_beat": 14,
            "character_ids": []
          },
          {
            "shot_index": 77,
            "description": "얼굴과 팔다리가 심하게 찢긴 박철진이 흙바닥에 널브러져 고통스럽게 숨을 헐떡이는 찰나.",
            "characters": [
              "박철진"
            ],
            "based_on_beat": 14,
            "character_ids": []
          },
          {
            "shot_index": 78,
            "description": "찰리가 B-200의 잔해 속에서 둥근 금속 부품 하나를 굵은 손가락으로 조심스레 집어 든 손끝 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 14,
            "character_ids": []
          },
          {
            "shot_index": 79,
            "description": "이현우, 수빈, 앰버, 라울이 눈물 고인 눈으로 찰리를 빤히 바라보는 애절한 시선.",
            "characters": [
              "이현우",
              "수빈",
              "앰버",
              "라울",
              "찰리"
            ],
            "based_on_beat": 14,
            "character_ids": []
          },
          {
            "shot_index": 80,
            "description": "찰리가 부품을 쥔 채 두 눈의 푸른빛이 완전히 꺼지고 고개를 푹 떨군 깊은 슬픔의 자태.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 14,
            "original_description": "찰리가 부품을 쥔 채 두 눈의 푸른빛을 완전히 끄고 고개를 푹 떨군 깊은 슬픔의 자태.",
            "validator_reason": "눈을 끄고 고개를 떨구는 동작의 연속을 불빛이 꺼진 채 고개를 떨군 완료 상태로 압축함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 68,
        "scene_heading": "68. 익산 도로 위 - 낮",
        "shots": [
          {
            "shot_index": 1,
            "description": "먼지 나는 도로 위를 나란히 달리고 있는 낡은 트럭 두 대의 mid-action 외관.",
            "characters": [],
            "based_on_beat": 1,
            "original_description": "낡은 트럭 두 대가 먼지 나는 도로 위를 나란히 달리는 외관.",
            "validator_reason": "이동 동작(달리는)을 추진력이 보존된 mid-action 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "트럭 운전석에 앉은 이현우가 고개를 옆 트럭 쪽으로 돌린 채 응시하는 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "트럭 운전석에 앉은 이현우가 고개를 돌려 옆 트럭을 응시하는 얼굴.",
            "validator_reason": "'돌려 응시하는' 순차 동작을 '돌린 채'라는 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "다른 트럭 운전석에서 이현우 쪽을 향해 활짝 웃고 있는 수빈의 표정.",
            "characters": [
              "수빈"
            ],
            "based_on_beat": 1,
            "original_description": "다른 트럭 운전석의 수빈이 이현우를 마주 보며 활짝 웃는 표정.",
            "validator_reason": "'마주 보며 웃는' 시간 진행 연결을 단일 상태로 병합함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "갈림길에서 서로 다른 방향을 향해 꺾여 달리고 있는 두 대의 트럭의 mid-action 구도.",
            "characters": [],
            "based_on_beat": 1,
            "original_description": "갈림길에 도달한 두 대의 트럭이 서로 다른 방향으로 멀어지는 구도.",
            "validator_reason": "'도달한 뒤 멀어지는' 시간 경과를 제거하고 서로 다른 방향으로 달리는 mid-action으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "수빈의 트럭을 향해 창문 밖으로 상체를 내민 채 입을 크게 벌려 소리치고 있는 라울의 역동적인 자세.",
            "characters": [
              "라울"
            ],
            "based_on_beat": 1,
            "original_description": "수빈의 트럭을 향해 라울이 창문 밖으로 상체를 내밀고 입을 크게 벌려 소리치는 역동적인 자세.",
            "validator_reason": "'내밀고 소리치는' 두 동작의 연속을 '내민 채'라는 결과 상태와 정지 자세로 압축함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "트럭 짐칸에 앉은 찰리가 B-200의 가슴 부품을 두 손으로 쥐고 빤히 내려다보는 시선.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "허공에서 날개를 활짝 편 채 찰리를 향해 날아오고 있는 아기 새의 공중 mid-action 찰나.",
            "characters": [
              "아기 새",
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "허공에서 B-200이 키운 아기 새가 찰리를 향해 날개를 펴고 날아오는 공중의 찰나.",
            "validator_reason": "'펴고 날아오는' 순차 동작을 고정 상태와 비행 중인 공중 mid-action으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "찰리가 앞으로 뻗은 굵은 금속 손가락 위에 B-200이 키운 아기 새가 사뿐히 내려앉은 손끝 클로즈업.",
            "characters": [
              "찰리",
              "아기 새"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "손가락 위의 새를 내려다보는 시선에 입가 금속 부품이 아래로 떨궈져 있는 찰리의 슬픈 표정.",
            "characters": [
              "찰리",
              "새"
            ],
            "based_on_beat": 2,
            "original_description": "찰리가 손가락 위의 새를 내려다보며 입가 금속 부품을 아래로 떨군 슬픈 표정.",
            "validator_reason": "'내려다보며 떨군'의 순차적 동작을 단일한 고정 상태로 변경함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "두 눈의 안광이 꺼진 채 고개를 푹 숙이고 있는 찰리의 평온한 자세.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "찰리가 두 눈의 안광을 끄고 고개를 푹 숙인 평온한 자세.",
            "validator_reason": "'끄고 숙인' 순차 동작을 '꺼진 채'라는 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "화사한 꽃밭 한가운데, 찰리가 바람에 흔들리는 보라색 제비꽃들을 가만히 응시하는 구도.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "찰리의 굵은 금속 손가락 끝이 보라색 제비꽃 잎사귀와 살짝 맞닿아 있는 손끝 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "찰리의 굵은 금속 손가락 끝이 보라색 제비꽃 잎사귀를 살짝 건드리는 손끝 클로즈업.",
            "validator_reason": "'건드리는' 움직임을 '맞닿아 있는' 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "꽃밭에 선 찰리의 등 뒤로 거대한 B-200이 묵직하게 서 있는 전신.",
            "characters": [
              "찰리",
              "B-200"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "환하게 웃는 얼굴로 찰리를 향해 한쪽 손을 불쑥 뻗고 멈춰 선 지소영의 찰나.",
            "characters": [
              "지소영"
            ],
            "based_on_beat": 3,
            "original_description": "지소영이 환하게 웃으며 찰리를 향해 한쪽 손을 불쑥 내민 찰나.",
            "validator_reason": "'웃으며 내민'이라는 동작의 연속을 뻗고 멈춘 단일 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "지소영이 찰리의 금속 손을 꼭 쥔 채 지동현이 있는 쪽을 향해 한쪽 발을 내딛고 있는 전력 질주의 mid-action 구도.",
            "characters": [
              "지소영",
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "지소영이 찰리의 금속 손을 꼭 쥔 채 지동현이 있는 쪽을 향해 전력 질주하는 역동적인 구도.",
            "validator_reason": "'질주하는' 이동 동작을 추진력이 드러나는 한 발을 내딛은 mid-action으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "보라색 제비꽃이 만발한 들판 너머 낡은 연구소 건물을 향해 다리를 뻗고 질주 중인 지소영, 찰리, B-200의 mid-action 뒷모습.",
            "characters": [
              "지소영",
              "찰리",
              "B-200"
            ],
            "based_on_beat": 3,
            "original_description": "보라색 제비꽃이 만발한 들판 너머 낡은 연구소 건물을 향해 달리는 지소영, 찰리, B-200의 뒷모습.",
            "validator_reason": "'달리는'의 연속 동작을 다리를 뻗고 있는 mid-action 찰나로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 69,
        "scene_heading": "69. 현우의 트럭- D (현재)",
        "shots": [
          {
            "shot_index": 1,
            "description": "거대한 바위틈 그늘 아래 주차된 낡은 트럭 짐칸에서 찰리가 두 눈의 푸른 안광을 켠 채 정지한 모습.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "거대한 바위틈 그늘 아래 주차된 낡은 트럭 짐칸에서 찰리가 두 눈의 푸른 안광을 번쩍 켜는 찰나.",
            "validator_reason": "'켜는'이라는 상태 변화를 '켠 채 정지한'이라는 완료된 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "트럭 짐칸 구석에서 이현우, 앰버, 라울이 머리를 맞대고 깊이 잠든 평온한 구도.",
            "characters": [
              "이현우",
              "앰버",
              "라울"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "찰리가 잠든 일행의 위쪽으로 낡은 헝겊 그늘막 끝을 쥐고 살며시 당기며 뻗은 손끝 클로즈업.",
            "characters": [
              "찰리",
              "일행"
            ],
            "based_on_beat": 1,
            "original_description": "찰리가 잠든 일행의 위쪽으로 낡은 헝겊 그늘막을 살며시 덮어주는 손끝 클로즈업.",
            "validator_reason": "'덮어주는'이라는 연속 동작을 그늘막을 쥐고 당기는 도중의 정지된 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "그늘막 아래 잠든 아이들을 보며 찰리가 입가 금속 부품을 위로 올린 채 환하게 미소 짓고 있는 얼굴.",
            "characters": [
              "찰리",
              "아이들"
            ],
            "based_on_beat": 1,
            "original_description": "그늘막 아래 잠든 아이들을 보며 찰리가 입가 금속 부품을 위로 올려 환하게 미소 짓는 얼굴.",
            "validator_reason": "'올려 미소 짓는'의 순차적 동작을 '올린 채 미소 짓고 있는'이라는 동시 고정 상태로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 70,
        "scene_heading": "70. 군 병원 - N",
        "shots": [
          {
            "shot_index": 1,
            "description": "군 병원 복도를 나란히 걷는 도중 한쪽 발을 바닥에서 뗀 상태인 국방장관과 이강준의 전신.",
            "characters": [
              "국방장관",
              "이강준"
            ],
            "based_on_beat": 1,
            "original_description": "군 병원 복도를 나란히 걷는 국방장관과 이강준의 전신.",
            "validator_reason": "'걷는'이라는 이동 동작을 추진력이 보존된 한 찰나의 mid-action 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "이강준이 국방장관을 향해 손날을 쫙 펴 이마에 갖다 댄 군대식 경례 자세.",
            "characters": [
              "이강준",
              "국방장관"
            ],
            "based_on_beat": 1,
            "original_description": "이강준이 국방장관을 향해 손날을 쫙 펴 이마에 갖다 대는 군대식 경례 자세.",
            "validator_reason": "'갖다 대는'이라는 연속 동작을 '갖다 댄'이라는 완료된 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "국방장관이 멈춰 선 채 이강준을 향해 미간을 깊게 찌푸리고 매섭게 노려보는 위압적인 표정.",
            "characters": [
              "국방장관",
              "이강준"
            ],
            "based_on_beat": 1,
            "original_description": "국방장관이 멈춰 서서 이강준을 향해 미간을 깊게 찌푸리고 매섭게 노려보는 위압적인 표정.",
            "validator_reason": "'서서 ~하고'라는 시간 순차적 연결을 '선 채'라는 동시 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "이강준이 굳은 표정으로 고개를 살짝 숙인 뻣뻣한 자세.",
            "characters": [
              "이강준"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "국방장관이 병실 안쪽을 향해 턱을 치켜든 채 경멸하는 시선.",
            "characters": [
              "국방장관"
            ],
            "based_on_beat": 2,
            "original_description": "국방장관이 병실 안쪽을 향해 턱을 치켜들고 혀를 차며 경멸하는 시선.",
            "validator_reason": "'혀를 차며'라는 지속/연속 동작을 제거하고 턱을 치켜든 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "병상 위, 머리와 팔다리에 깁스를 한 박철진이 한쪽 눈을 힘겹게 반쯤 뜬 클로즈업.",
            "characters": [
              "박철진"
            ],
            "based_on_beat": 2,
            "original_description": "병상 위, 머리와 팔다리에 깁스를 한 박철진이 반쯤 감긴 한쪽 눈을 힘겹게 들어 올리는 클로즈업.",
            "validator_reason": "'들어 올리는'이라는 연속 동작을 '반쯤 뜬'이라는 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "박철진이 초점 잃은 눈으로 국방장관의 얼굴을 올려다보는 위태로운 구도.",
            "characters": [
              "박철진",
              "국방장관"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "국방장관이 병상 위의 박철진을 외면한 채 복도 쪽으로 고개를 확 돌린 매몰찬 찰나.",
            "characters": [
              "국방장관",
              "박철진"
            ],
            "based_on_beat": 2,
            "original_description": "국방장관이 병상 위의 박철진을 외면한 채 복도 쪽으로 고개를 확 돌리는 매몰찬 찰나.",
            "validator_reason": "'돌리는'이라는 연속 동작을 '돌린'이라는 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "국방장관과 이강준이 병실 복도를 따라 멀어지는 방향으로 한쪽 발을 공중에 뗀 뒷모습 풍경.",
            "characters": [
              "국방장관",
              "이강준"
            ],
            "based_on_beat": 3,
            "original_description": "국방장관과 이강준이 멀어지는 병실 복도 바깥 풍경.",
            "validator_reason": "'멀어지는'이라는 이동 동작을 방향성이 보존된 한쪽 발을 내디딘 mid-action 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "깁스를 한 박철진의 붉게 충혈된 남은 한쪽 눈에서 분노의 눈물이 뺨에 맺힌 얼굴 클로즈업.",
            "characters": [
              "박철진"
            ],
            "based_on_beat": 3,
            "original_description": "깁스를 한 박철진의 남은 한쪽 눈이 붉게 충혈되며 분노로 눈물을 흘리는 얼굴 클로즈업.",
            "validator_reason": "'충혈되며 흘리는'이라는 순차적/진행형 동작을 '충혈된 채 눈물이 맺힌' 고정 상태로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 71,
        "scene_heading": "71. 도로 위, 현우의 트럭 – 새벽",
        "shots": [
          {
            "shot_index": 1,
            "description": "어두운 밤, 트럭 운전석의 이현우가 짐칸 쪽으로 고개를 돌린 채 미간을 찌푸린 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "어두운 밤, 트럭 운전석의 이현우가 짐칸 쪽으로 고개를 돌려 미간을 찌푸린 얼굴.",
            "validator_reason": "'고개를 돌려'라는 순차 동작 표현을 '고개를 돌린 채'라는 단일 고정 자세로 수정함",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "짐칸의 앰버가 찰리를 향해 두 눈을 반짝이며 양손을 뻗은 찰나.",
            "characters": [
              "앰버",
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "찰리가 푸른 안광을 깜빡이는 중인 한 순간, 금속 고개를 옆으로 갸우뚱하게 꺾은 의아한 구도.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "찰리가 푸른 안광을 깜빡이며 금속 고개를 옆으로 갸우뚱하는 의아한 구도.",
            "validator_reason": "'깜빡이며 갸우뚱하는' 연속 동작을 안광이 깜빡이는 순간의 포착과 고개를 꺾어 멈춘 상태로 수정함",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "찰리가 낡은 종이 뒷면에 펜촉을 댄 채 보라색 꽃을 정성껏 그리고 있는 한 순간의 손끝 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "찰리가 낡은 종이 뒷면에 펜으로 보라색 꽃을 정성껏 그리는 손끝 클로즈업.",
            "validator_reason": "'그리는'이라는 연속 동작을 펜을 종이에 대고 있는 고정된 한 찰나로 수정함",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "라울이 찰리의 그림을 보며 배를 부여잡고 입을 크게 벌려 폭소하는 얼굴.",
            "characters": [
              "라울",
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "찰리가 두 어깨를 축 늘어뜨린 채 펜을 든 손을 멈춘 시무룩한 자태.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "앰버가 찰리의 손에 있는 그림이 그려진 종이를 조심스레 맞잡은 찰나.",
            "characters": [
              "앰버",
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "앰버가 찰리의 손에서 그림이 그려진 종이를 조심스레 받아 드는 찰나.",
            "validator_reason": "'받아 드는'이라는 동작을 종이를 쥐고 있는 정지된 순간으로 수정함",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "이현우가 운전석에서 눈을 질끈 감은 채 깊은 한숨을 내쉬듯 입을 살짝 벌리고 있는 지친 표정.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 운전석에서 눈을 질끈 감고 깊은 한숨을 내쉬는 지친 표정.",
            "validator_reason": "'내쉬는'이라는 진행 동작을 입을 벌리고 있는 결과 상태로 수정함",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "밝은 낮, '해남 5km'라고 적힌 낡은 교통 표지판 바로 옆을 지나치는 중인 트럭의 외관.",
            "characters": [],
            "based_on_beat": 3,
            "original_description": "밝은 낮, '해남 5km'라고 적힌 낡은 교통 표지판을 스쳐 지나가는 트럭의 외관.",
            "validator_reason": "'스쳐 지나가는'이라는 이동 동작을 표지판 옆을 지나는 중인 mid-action 찰나로 수정함",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "언덕 위에 선 이현우가 바다가 보이는 능선 쪽을 뚫어지게 응시하며 미간을 구긴 막막한 시선.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "트럭 근처 바닥에 쪼그려 앉은 앰버와 라울이 양손에 흙을 쥔 채 장난을 치고 있는 구도.",
            "characters": [
              "앰버",
              "라울"
            ],
            "based_on_beat": 2,
            "original_description": "트럭 근처 바닥에 쪼그려 앉은 앰버와 라울이 흙장난을 하는 구도.",
            "validator_reason": "'흙장난을 하는'이라는 연속 동작을 흙을 쥐고 있는 고정된 상태로 수정함",
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "찰리가 앰버의 말을 듣고 고개를 아래로 힘차게 꺾어 내린 역동적인 찰나.",
            "characters": [
              "찰리",
              "앰버"
            ],
            "based_on_beat": 2,
            "original_description": "찰리가 앰버의 말을 듣고 고개를 위아래로 힘차게 끄덕이는 역동적인 찰나.",
            "validator_reason": "'끄덕이는'이라는 상하 연속 동작을 고개를 아래로 꺾은 고정된 찰나로 수정함",
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "앰버가 찰리를 올려다보며 눈가에 눈물이 맺힌 애절하고 슬픈 표정 클로즈업.",
            "characters": [
              "앰버",
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "찰리가 앰버의 우는 모습을 보며 두 눈의 푸른 안광을 크게 확장한 놀란 얼굴.",
            "characters": [
              "찰리",
              "앰버"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "앰버가 손등을 자신의 눈물 맺힌 눈가에 거칠게 가져다 댄 찰나.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 2,
            "original_description": "앰버가 손등으로 자신의 눈물을 거칠게 닦아내는 찰나.",
            "validator_reason": "'닦아내는'이라는 왕복 연속 동작을 손등을 가져다 댄 단일 정지 상태로 수정함",
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "주차된 트럭 쪽을 향해 전력으로 내달리는 중인 앰버, 한 발이 지면에서 떨어져 옷자락이 뒤로 휘날리는 역동적인 뒷모습.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 2,
            "original_description": "앰버가 자리에서 일어나 주차된 트럭 쪽을 향해 전력으로 내달리는 역동적인 뒷모습.",
            "validator_reason": "'일어나 내달리는'이라는 순차 동작을 달리는 추진력을 보존한 mid-action 찰나로 수정함",
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "찰리가 우두커니 서서 앰버가 달려가는 방향을 가만히 응시하는 굳은 전신.",
            "characters": [
              "찰리",
              "앰버"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "달리는 트럭 운전석, 이현우의 고개가 가슴 쪽으로 푹 꺾인 채 졸음에 빠져 있는 위태로운 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "달리는 트럭 운전석, 이현우의 고개가 가슴 쪽으로 푹 꺾이며 졸음에 빠진 위태로운 찰나.",
            "validator_reason": "'꺾이며 빠진'이라는 순차 변화를 '꺾인 채 빠져 있는' 완료된 고정 상태로 수정함",
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "짐칸에 앉은 찰리가 트럭 라디오의 다이얼을 굵은 손가락으로 쥔 채 확 돌린 각도에서 멈춘 손끝 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "짐칸에 앉은 찰리가 트럭 라디오의 다이얼을 굵은 손가락으로 확 돌리는 손끝 클로즈업.",
            "validator_reason": "'돌리는'이라는 연속 동작을 다이얼을 돌린 각도에서 멈춘 상태로 수정함",
            "character_ids": []
          },
          {
            "shot_index": 20,
            "description": "큰 소리에 놀란 이현우가 두 눈을 번쩍 치켜뜬 채 상체를 뒤로 펄쩍 젖히고 굳은 당황한 구도.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "큰 소리에 놀란 이현우가 두 눈을 번쩍 치켜뜨며 상체를 뒤로 펄쩍 젖히는 당황한 구도.",
            "validator_reason": "'치켜뜨며 젖히는'이라는 진행 동작을 젖힌 채 굳어 있는 고정 상태로 수정함",
            "character_ids": []
          },
          {
            "shot_index": 21,
            "description": "찰리가 고개를 먼 산 쪽으로 돌린 채 양어깨를 으쓱 들어 올리고 있는 유쾌한 동작.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "찰리가 고개를 돌려 먼 산을 응시하며 어깨를 으쓱이는 유쾌한 동작.",
            "validator_reason": "'고개를 돌려 으쓱이는'이라는 순차 동작을 들어 올린 채 멈춘 고정 자세로 수정함",
            "character_ids": []
          },
          {
            "shot_index": 22,
            "description": "이현우가 짐칸의 찰리를 향해 입을 크게 벌린 채 화를 내고 있는 얼굴.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "이현우가 짐칸의 찰리를 향해 입을 크게 벌려 화를 내는 얼굴.",
            "validator_reason": "'벌려 화를 내는'이라는 순차 가능성이 있는 표현을 '벌린 채'라는 고정 상태로 수정함",
            "character_ids": []
          },
          {
            "shot_index": 23,
            "description": "조수석의 앰버가 앞창문 밖을 향해 팔을 곧게 뻗은 채 눈을 크게 뜬 찰나.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 3,
            "original_description": "조수석의 앰버가 앞창문 밖을 향해 팔을 곧게 뻗으며 눈을 크게 뜬 찰나.",
            "validator_reason": "'뻗으며 뜬'이라는 연속 동작을 '뻗은 채'라는 정지 상태로 수정함",
            "character_ids": []
          },
          {
            "shot_index": 24,
            "description": "트럭 앞 유리 너머로 끝없이 펼쳐진 보라색 제비꽃 군락과 멀리 우뚝 선 연구소 건물이 한눈에 들어오는 광활한 전경.",
            "characters": [],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 25,
            "description": "차에서 내린 이현우, 앰버, 라울, 찰리가 제비꽃밭을 내려다보며 입을 반쯤 벌린 경이로운 구도.",
            "characters": [
              "이현우",
              "앰버",
              "라울",
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 72,
        "scene_heading": "72. 지동현의 연구소 - D",
        "shots": [
          {
            "shot_index": 1,
            "description": "거대한 낡은 연구소 철문이 안쪽으로 살짝 열린 좁은 틈새의 클로즈업.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "이현우가 텅 빈 어두운 연구소 안을 향해 시선을 던진 채 미간을 찌푸린 불안한 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 텅 빈 어두운 연구소 안을 둘러보며 미간을 찌푸린 불안한 얼굴.",
            "validator_reason": "'둘러보며'라는 연속 동작을 시선을 고정한 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "이현우가 무릎을 굽힌 채 먼지 쌓인 바닥의 깨진 액자를 향해 입술을 오므리고 숨을 세차게 부는 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "먼지가 날아간 낡은 사진 표면 위로 지동현, 찰리, 지소영이 환하게 웃고 있는 이미지 클로즈업.",
            "characters": [
              "지동현",
              "찰리",
              "지소영"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "2층의 낡은 피아노 앞에 선 찰리가 굵은 금속 손가락으로 건반 하나를 꾹 누르는 손끝 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "앰버가 계단 쪽에서 고개를 내민 채 아래층의 이현우를 향해 입술을 벌린 구도.",
            "characters": [
              "앰버",
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "머리가 하얗게 샌 60대 아시아계 남성이 찰리를 향해 두 눈을 크게 치켜뜬 놀란 얼굴.",
            "characters": [
              "60대 아시아계 남성",
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "60대 아시아계 남성이 찰리를 향해 두 팔을 활짝 벌린 채 한 발짝 내디딘 mid-stride 자세.",
            "characters": [
              "60대 아시아계 남성",
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "60대 아시아계 남성이 찰리를 향해 두 팔을 활짝 벌리고 다가서는 역동적인 자세.",
            "validator_reason": "'다가서는'이라는 연속 이동 동작을 한 발짝 내디딘 mid-stride 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "기겁한 찰리가 두 어깨를 움츠린 채 뒤로 한 발짝 물러나 발을 딛는 순간.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "기겁한 찰리가 두 어깨를 움츠린 채 뒤로 한 발짝 물러서는 찰나.",
            "validator_reason": "'물러서는'이라는 연속 동작을 뒤로 발을 딛은 순간의 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "60대 아시아계 남성이 앰버와 이현우를 향해 진지한 표정으로 입술을 반쯤 벌린 채 멈춘 구도.",
            "characters": [
              "60대 아시아계 남성",
              "앰버",
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "60대 아시아계 남성이 앰버와 이현우를 향해 진지한 표정으로 입술을 달싹이는 구도.",
            "validator_reason": "'입술을 달싹이는'이라는 반복 동작을 입을 반쯤 벌린 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "연구소 창밖 아래로 거대한 트럭 여러 대가 줄지어 멈춰 선 외관.",
            "characters": [],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "트럭에서 내린 윤성찬의 번쩍이는 구두가 질척이는 진흙 바닥을 콱 밟는 타격의 찰나.",
            "characters": [
              "윤성찬"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "진흙이 묻은 구두를 내려다보며 윤성찬이 미간을 험악하게 구긴 얼굴.",
            "characters": [
              "윤성찬"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "윤성찬의 등 뒤로 관자놀이에 스위치가 달린 코카시안 백인 남성형 병사들이 트럭에서 뛰어내려, 허공에 뜬 채 한쪽 발이 땅에 닿을 듯한 공중의 찰나.",
            "characters": [
              "윤성찬",
              "코카시안 백인 남성형 병사들"
            ],
            "based_on_beat": 2,
            "original_description": "윤성찬의 등 뒤로 관자놀이에 스위치가 달린 코카시안 백인 남성형 병사들이 트럭에서 우수수 내리는 공중의 찰나.",
            "validator_reason": "'내리는'이라는 연속 동작을 도약 후 허공에 떠 있는 mid-action 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "이현우와 앰버가 창문 밖을 내다보며 두 눈을 동그랗게 뜬 당황한 표정.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "이현우가 60대 아시아계 남성의 가슴팍에 어깨를 맹렬히 부딪힌 타격의 순간.",
            "characters": [
              "이현우",
              "60대 아시아계 남성"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 60대 아시아계 남성의 가슴팍을 어깨로 맹렬히 밀쳐내는 타격의 순간.",
            "validator_reason": "'밀쳐내는'이라는 진행형 동작을 어깨가 가슴팍에 강하게 맞닿은 mid-impact 타격 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "밀쳐진 60대 아시아계 남성의 상체가 바닥을 향해 뒤로 확 쏠려 두 발이 땅에서 막 떨어지려는 위태로운 찰나.",
            "characters": [
              "60대 아시아계 남성"
            ],
            "based_on_beat": 2,
            "original_description": "밀쳐진 60대 아시아계 남성이 바닥을 향해 뒤로 확 고꾸라지는 위태로운 찰나.",
            "validator_reason": "'고꾸라지는'이라는 연속 동작을 몸이 뒤로 넘어가기 시작한 위태로운 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "좁은 연구소 뒷문 틈새로 이현우, 앰버, 라울이 다급히 상체를 들이민 채 끼어 있는 뒷모습.",
            "characters": [
              "이현우",
              "앰버",
              "라울"
            ],
            "based_on_beat": 2,
            "original_description": "좁은 연구소 뒷문 틈새로 이현우, 앰버, 라울이 다급히 상체를 밀어 넣는 뒷모습.",
            "validator_reason": "'밀어 넣는'이라는 연속 동작을 좁은 틈새에 상체가 끼어 들어간 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "코카시안 백인 남성형 병사의 시야 인터페이스 속, 멀어지는 이현우 일행의 붉은 열화상 실루엣이 멈춰 선 듯 포착된 주관 시점 찰나.",
            "characters": [
              "코카시안 백인 남성형 병사",
              "이현우 일행"
            ],
            "based_on_beat": 2,
            "original_description": "코카시안 백인 남성형 병사의 시야 인터페이스 속, 도망치는 이현우 일행의 붉은 열화상 실루엣이 포착된 주관 시점 찰나.",
            "validator_reason": "'도망치는'이라는 진행 상태를 열화상 인터페이스에 포착된 고정된 한 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 20,
            "description": "코카시안 백인 남성형 병사들이 일제히 소총을 치켜든 채 총구에서 시뻘건 섬광을 뿜어내는 격발의 순간.",
            "characters": [
              "코카시안 백인 남성형 병사들"
            ],
            "based_on_beat": 2,
            "original_description": "코카시안 백인 남성형 병사들이 일제히 소총을 들어 올려 총구에서 시뻘건 섬광을 뿜어내는 격발의 순간.",
            "validator_reason": "'들어 올려...뿜어내는'의 순차적 동작을 이미 총을 든 채 섬광이 뿜어지는 한 순간으로 압축함.",
            "character_ids": []
          },
          {
            "shot_index": 21,
            "description": "윤성찬이 두 팔을 허공에 번쩍 쳐든 채 병사들을 향해 입을 크게 벌려 고함치는 구도.",
            "characters": [
              "윤성찬",
              "병사들"
            ],
            "based_on_beat": 2,
            "original_description": "윤성찬이 두 팔을 세차게 휘저으며 병사들을 향해 입을 크게 벌려 고함치는 구도.",
            "validator_reason": "'휘저으며'라는 반복 동작을 팔을 쳐든 고정된 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 22,
            "description": "코카시안 백인 남성형 병사들이 소총을 든 채 붉은 노을이 깔린 제비꽃밭을 향해 한쪽 발이 땅에서 떨어지고 옷자락이 뒤로 펄럭이는 mid-stride 역동적인 전신.",
            "characters": [
              "코카시안 백인 남성형 병사들"
            ],
            "based_on_beat": 2,
            "original_description": "코카시안 백인 남성형 병사들이 소총을 든 채 붉은 노을이 깔린 제비꽃밭을 향해 맹렬히 내달리는 역동적인 전신.",
            "validator_reason": "'내달리는'이라는 연속 이동 동작을 방향과 추진력이 보존된 mid-stride 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 23,
            "description": "붉은 노을 아래 광활한 제비꽃밭에서 이현우, 앰버, 라울, 찰리가 앞을 향해 한쪽 발을 뻗은 mid-stride 구도.",
            "characters": [
              "이현우",
              "앰버",
              "라울",
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "붉은 노을 아래 광활한 제비꽃밭에서 이현우, 앰버, 라울, 찰리가 앞을 향해 맹렬히 달리는 구도.",
            "validator_reason": "'달리는'이라는 연속 동작을 발을 앞으로 뻗은 mid-stride 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 24,
            "description": "제비꽃밭 바닥에 발이 걸린 앰버의 상체가 앞으로 확 쏠린 채 허공에 뜬 위태로운 찰나.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 3,
            "original_description": "제비꽃밭 바닥에 발이 걸린 앰버의 상체가 앞으로 확 쏠리며 넘어지는 위태로운 찰나.",
            "validator_reason": "'쏠리며 넘어지는'의 연속 동작을 상체가 쏠려 허공에 뜬 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 25,
            "description": "이현우가 앰버를 자신의 등 위로 번쩍 둘러업은 채 한쪽 다리를 뻗고 도약하는 mid-stride 자세.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 3,
            "original_description": "이현우가 앰버를 자신의 등 위로 번쩍 둘러업은 채 이 악물고 달리는 역동적인 자세.",
            "validator_reason": "'달리는'이라는 연속 동작을 한쪽 다리를 뻗고 도약하는 mid-action 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 26,
            "description": "발을 뻗은 mid-stride 자세로 찰리가 고개를 돌려 이현우의 뒷모습을 응시하는 굳은 표정.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "달리던 찰리가 이현우의 뒷모습을 보며 눈가 금속 부품을 결연하게 내린 굳은 표정.",
            "validator_reason": "'달리던... 보며'라는 연속 동작을 달리는 자세를 유지한 채 고개를 돌린 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 27,
            "description": "찰리가 이현우 일행과 정반대 방향으로 굵은 금속 다리를 허공에 뻗은 mid-stride 찰나.",
            "characters": [
              "찰리",
              "이현우 일행"
            ],
            "based_on_beat": 3,
            "original_description": "찰리가 이현우 일행과 정반대 방향으로 굵은 금속 다리를 뻗어 맹렬히 달려 나가는 찰나.",
            "validator_reason": "'달려 나가는'이라는 연속 이동 동작을 다리를 뻗은 mid-stride 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 28,
            "description": "코카시안 백인 남성형 병사들이 찰리의 거대한 뒷모습을 향해 상체를 비틀어 한쪽 발을 강하게 딛은 방향 전환의 순간.",
            "characters": [
              "코카시안 백인 남성형 병사들",
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "코카시안 백인 남성형 병사들이 찰리의 거대한 뒷모습을 향해 일제히 방향을 꺾는 구도.",
            "validator_reason": "'방향을 꺾는'이라는 동작 진행을 발을 강하게 딛어 상체를 비튼 정지 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 29,
            "description": "병사의 시야 인터페이스 속, 찰리의 뒷모습 위로 '살아서 생포'라는 붉은 글씨가 떠오른 주관 시점 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 30,
            "description": "찰리가 아득한 낭떠러지 절벽 끝에 우뚝 멈춰 서서 아래를 내려다보는 위태로운 뒷모습.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 31,
            "description": "십여 명의 코카시안 백인 남성형 병사들이 찰리를 향해 소총을 바짝 겨눈 채 반원형으로 포위한 위압적인 구도.",
            "characters": [
              "코카시안 백인 남성형 병사들",
              "찰리"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 32,
            "description": "윤성찬이 여유로운 미소를 띠며 찰리를 향해 빈 손바닥을 앞으로 불쑥 내민 찰나.",
            "characters": [
              "윤성찬",
              "찰리"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 33,
            "description": "찰리가 두 어깨를 잔뜩 움츠린 채 금속 고개를 한쪽으로 세차게 꺾은 거부의 동작.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 4,
            "original_description": "찰리가 두 어깨를 잔뜩 움츠린 채 금속 고개를 좌우로 세차게 흔드는 거부의 동작.",
            "validator_reason": "'흔드는'이라는 반복 동작을 고개를 꺾어 멈춘 한 순간의 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 34,
            "description": "찰리가 절벽 바깥 허공을 향해 거대한 금속 몸통을 던져 두 발이 절벽 끝에서 막 떨어진 공중의 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 4,
            "original_description": "찰리가 절벽 바깥 허공을 향해 거대한 금속 몸통을 맹렬히 날리는 공중의 찰나.",
            "validator_reason": "'날리는'이라는 진행 동작을 두 발이 절벽에서 떨어진 공중 도약의 한 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 35,
            "description": "거친 흙먼지를 뒤로 뿜어내며 앞바퀴를 들썩인 채 병사들의 방어선을 향해 질주하는 낡은 덤프트럭의 mid-action 외관.",
            "characters": [],
            "based_on_beat": 4,
            "original_description": "거친 흙먼지를 뿜어내는 낡은 덤프트럭이 병사들의 방어선을 향해 맹렬히 돌진해 오는 외관.",
            "validator_reason": "'돌진해 오는'이라는 연속 이동을 흙먼지와 들썩임이 보존된 mid-action 외관으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 36,
            "description": "트럭 앞범퍼에 부딪힌 코카시안 백인 남성형 병사들의 상체가 제비꽃밭 위 허공으로 튕겨 떠오른 타격의 순간.",
            "characters": [
              "코카시안 백인 남성형 병사들"
            ],
            "based_on_beat": 4,
            "original_description": "돌진하는 트럭 앞범퍼에 부딪힌 코카시안 백인 남성형 병사들의 상체가 제비꽃밭 위 허공으로 튕겨 나가는 타격의 순간.",
            "validator_reason": "'부딪힌... 튕겨 나가는'의 두 사건을 허공으로 튕겨 오른 결과적 타격의 한 순간으로 묶음.",
            "character_ids": []
          },
          {
            "shot_index": 37,
            "description": "트럭 조수석 문을 활짝 연 이현우가 절벽 끝의 찰리를 향해 다급하게 손을 뻗은 구도.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 38,
            "description": "찰리가 이현우의 손을 향해 굵은 금속 손바닥을 거칠게 뻗은 채 허공에 떠 있는 역동적인 찰나.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 4,
            "original_description": "찰리가 이현우의 손을 향해 굵은 금속 손바닥을 거칠게 뻗으며 트럭 안으로 상체를 던지는 역동적인 찰나.",
            "validator_reason": "'뻗으며 던지는'이라는 두 가지 연속 동작을 손을 뻗은 채 공중에 뜬 단일 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 39,
            "description": "코카시안 백인 남성형 병사 하나가 달리는 트럭 짐칸 모서리를 두 손으로 꽉 틀어쥔 위태로운 매달림.",
            "characters": [
              "코카시안 백인 남성형 병사"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 40,
            "description": "앰버와 라울이 짐칸에 매달린 병사의 손가락을 렌치와 주먹으로 맹렬히 내리쳐 닿은 타격의 찰나.",
            "characters": [
              "앰버",
              "라울",
              "코카시안 백인 남성형 병사"
            ],
            "based_on_beat": 4,
            "original_description": "앰버와 라울이 짐칸에 매달린 병사의 손가락을 렌치와 주먹으로 맹렬히 내리치는 타격의 찰나.",
            "validator_reason": "'내리치는'이라는 진행형 동작을 도구가 손가락에 맞닿은 mid-impact 타격 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 41,
            "description": "윤성찬이 탄 검은색 세단이 흙먼지를 뒤로 길게 뿜어내며 트럭 뒤에 바짝 붙어 있는 역동적인 후면 외관.",
            "characters": [
              "윤성찬"
            ],
            "based_on_beat": 5,
            "original_description": "윤성찬이 탄 검은색 세단이 흙먼지를 일으키며 트럭의 뒤를 바짝 쫓아 질주하는 후면 외관.",
            "validator_reason": "'질주하는'이라는 연속 이동 동작을 흙먼지의 궤적이 남은 정지 외관 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 42,
            "description": "운전석의 이현우가 룸미러를 응시한 채 조수석의 찰리를 향해 입술을 반쯤 벌린 얼굴.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 5,
            "original_description": "운전석의 이현우가 룸미러를 힐끗 쳐다보며 조수석의 찰리를 향해 입술을 벌린 얼굴.",
            "validator_reason": "'쳐다보며... 벌린'이라는 시간차 동작을 룸미러를 응시한 채 입을 벌린 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 43,
            "description": "조수석의 찰리가 자신의 가슴 장갑판에 달린 둥근 링 부품을 한 손으로 거칠게 비틀어 고정된 위치에서 멈춘 손끝 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 5,
            "original_description": "조수석의 찰리가 자신의 가슴 장갑판에 달린 둥근 링 부품을 한 손으로 꽉 쥔 채 거칠게 비틀어 돌리는 손끝 클로즈업.",
            "validator_reason": "'비틀어 돌리는'이라는 연속 동작을 비틀어진 상태로 고정된 한 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 44,
            "description": "윤성찬의 세단이 보이지 않는 맹렬한 힘에 의해 공중으로 확 치솟아 지면에서 떨어진 채 거꾸로 뒤집힌 전복의 찰나.",
            "characters": [
              "윤성찬"
            ],
            "based_on_beat": 5,
            "original_description": "질주하던 윤성찬의 세단이 보이지 않는 맹렬한 힘에 의해 공중으로 확 치솟아 뒤집히는 전복의 찰나.",
            "validator_reason": "'치솟아 뒤집히는'의 연속 동작을 공중에 뜬 채 뒤집힌 결과 상태의 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 45,
            "description": "거꾸로 뒤집힌 채 흙바닥에 거세게 처박힌 충격으로 사방에 짙은 흙먼지와 스파크가 터져 나오는 파괴적인 순간.",
            "characters": [],
            "based_on_beat": 5,
            "original_description": "거꾸로 뒤집힌 채 흙바닥에 거세게 처박힌 세단에서 짙은 흙먼지와 스파크가 튀어 오르는 파괴적인 순간.",
            "validator_reason": "'튀어 오르는'이라는 진행 동작을 흙바닥에 처박혀 스파크가 터진 정지 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 46,
            "description": "심하게 찌그러진 세단 창문 틈새로 흙투성이가 된 윤성찬이 상체를 낑낑대며 반쯤 빼낸 처참한 구도.",
            "characters": [
              "윤성찬"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 47,
            "description": "달리는 트럭 운전석, 이현우가 핸들을 쥔 채 크게 숨을 내쉬고 옅은 미소를 띠고 있는 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 6,
            "original_description": "달리는 트럭 운전석, 이현우가 핸들을 쥔 채 크게 숨을 내쉬며 옅은 미소를 띠는 얼굴.",
            "validator_reason": "'내쉬며 띠는'이라는 시간 흐름을 숨을 내쉰 상태로 옅은 미소를 띤 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 48,
            "description": "트럭 짐칸의 라울이 바닥에 쓰러진 앰버를 내려다보며 두 눈을 크게 치켜뜬 경악한 표정.",
            "characters": [
              "라울",
              "앰버"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 49,
            "description": "앰버의 낡은 옷 옆구리 부분에 붉은 피가 흥건하게 배어 나온 상처 클로즈업.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 50,
            "description": "운전석의 이현우가 고개를 뒤로 확 돌린 채 피 흘리는 앰버를 보며 동공이 크게 확장된 충격받은 얼굴.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 51,
            "description": "찰리가 짐칸의 앰버 옆에 상체를 굽힌 채 굵은 금속 손가락으로 상처 부근을 조심스레 짚은 손끝.",
            "characters": [
              "찰리",
              "앰버"
            ],
            "based_on_beat": 6,
            "original_description": "찰리가 짐칸의 앰버 옆에 상체를 굽힌 채 굵은 금속 손가락으로 상처 부근을 조심스레 짚는 손끝.",
            "validator_reason": "'짚는'이라는 진행 동작을 상처 부근을 짚고 있는 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 52,
            "description": "찰리의 시야 인터페이스 속, 앰버의 붉은 상처 위로 'CAUTION (주의)'라는 붉은 글씨가 선명하게 떠오른 주관 시점 찰나.",
            "characters": [
              "찰리",
              "앰버"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 53,
            "description": "찰리가 이현우를 향해 진지한 표정으로 입가 금속 부품을 반쯤 벌린 채 멈춘 구도.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 7,
            "original_description": "찰리가 이현우를 향해 진지한 표정으로 입가 금속 부품을 달싹이는 구도.",
            "validator_reason": "'달싹이는'이라는 반복 동작을 입가 부품이 반쯤 열린 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 54,
            "description": "이현우가 눈물 고인 눈으로 미간을 찌푸린 채 이 악물고 핸들을 맹렬히 틀어쥔 손끝 클로즈업.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 7,
            "original_description": "이현우가 눈물 고인 눈으로 미간을 찌푸린 채 이 악물고 핸들을 맹렬히 꺾어 쥐는 손끝 클로즈업.",
            "validator_reason": "'꺾어 쥐는'이라는 연속 동작을 핸들을 맹렬히 틀어쥔 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 55,
            "description": "피를 흘린 앰버가 찰리의 거대한 금속 품에 기댄 채 눈꺼풀이 반쯤 닫힌 위태로운 얼굴.",
            "characters": [
              "앰버",
              "찰리"
            ],
            "based_on_beat": 8,
            "original_description": "피를 흘린 앰버가 찰리의 거대한 금속 품에 기댄 채 눈꺼풀을 스르르 내리까는 위태로운 얼굴.",
            "validator_reason": "'스르르 내리까는'이라는 진행 동작을 눈꺼풀이 반쯤 닫힌 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 56,
            "description": "이현우가 운전석에서 목에 핏대를 세운 채 입을 크게 벌려 절규하는 광기 어린 표정.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 8,
            "character_ids": []
          },
          {
            "shot_index": 57,
            "description": "이현우가 두 눈을 동그랗게 뜬 채 계기판 쪽으로 고개를 푹 꺾어 숙인 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 8,
            "original_description": "트럭이 덜컹거리자 이현우가 두 눈을 동그랗게 뜬 채 계기판 쪽으로 고개를 푹 꺾는 찰나.",
            "validator_reason": "덜컹거림에 이어진 연속 동작을 고개를 숙인 단일 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 58,
            "description": "트럭 계기판의 기름 게이지 바늘이 붉은색 'E' 눈금 밑으로 뚝 떨어진 클로즈업.",
            "characters": [],
            "based_on_beat": 8,
            "character_ids": []
          },
          {
            "shot_index": 59,
            "description": "낡은 트럭이 비 내리는 어두운 도로 한가운데 엔진을 멈춘 채 우두커니 서 있는 황량한 외관.",
            "characters": [],
            "based_on_beat": 8,
            "character_ids": []
          },
          {
            "shot_index": 60,
            "description": "활짝 열린 트럭 문을 뒤로 한 채, 라울이 빗줄기 쏟아지는 어두운 도로 저편을 향해 한 발을 뻗고 달려 나가는 mid-stride 뒷모습.",
            "characters": [
              "라울"
            ],
            "based_on_beat": 8,
            "original_description": "라울이 트럭 문을 열고 빗줄기 쏟아지는 어두운 도로 저편을 향해 전력 질주하는 뒷모습.",
            "validator_reason": "'문을 열고... 질주하는'의 순차 동작을 문이 열려 있는 상태에서 달리기 시작한 mid-stride 자세로 압축함.",
            "character_ids": []
          },
          {
            "shot_index": 61,
            "description": "이현우가 짐칸에서 축 늘어진 앰버의 상체를 두 팔로 빈틈없이 꽉 껴안은 채 어깨를 잔뜩 움츠린 구도.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 8,
            "original_description": "이현우가 짐칸에서 축 늘어진 앰버의 상체를 두 팔로 빈틈없이 꽉 껴안은 채 어깨를 들썩이는 구도.",
            "validator_reason": "'들썩이는'이라는 반복 동작을 어깨를 움츠린 단일 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 62,
            "description": "비 내리는 트럭 창문 유리에 두 어깨를 푹 떨구고 슬퍼하는 찰리의 거대한 금속 얼굴이 비친 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 8,
            "character_ids": []
          },
          {
            "shot_index": 63,
            "description": "어둠 속에서 눈부신 손전등 불빛 여러 개가 트럭 앞창문을 뚫고 들어와 내부를 강하게 비추는 찰나.",
            "characters": [],
            "based_on_beat": 9,
            "original_description": "어둠 속에서 눈부신 손전등 불빛 여러 개가 트럭 앞창문을 맹렬히 뚫고 들어오는 찰나.",
            "validator_reason": "'들어오는'이라는 진행형을 불빛이 창문을 뚫고 내부를 비춘 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 64,
            "description": "이현우가 쏟아지는 불빛을 향해 한쪽 팔을 들어 얼굴을 다급히 가린 방어적인 자세.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 9,
            "original_description": "이현우가 쏟아지는 불빛을 향해 한쪽 팔을 들어 얼굴을 다급히 가리는 방어적인 자세.",
            "validator_reason": "'가리는'이라는 진행형 동작을 얼굴을 가린 정지 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 65,
            "description": "활짝 열린 트럭 문 너머로, 손전등을 든 성인 남성들의 짙은 실루엣이 위압적으로 서 있는 구도.",
            "characters": [
              "성인 남성들"
            ],
            "based_on_beat": 9,
            "original_description": "트럭 문이 벌컥 열리며 손전등을 든 성인 남성들의 짙은 실루엣이 위압적으로 드러난 구도.",
            "validator_reason": "'열리며... 드러난'의 인과 순서를 문이 열린 상태로 실루엣이 서 있는 단일 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 66,
            "description": "불빛 너머로 얼굴을 드러낸 신부가 이현우를 향해 두 눈을 동그랗게 뜨고 입을 반쯤 벌린 찰나.",
            "characters": [
              "신부",
              "이현우"
            ],
            "based_on_beat": 9,
            "character_ids": []
          },
          {
            "shot_index": 67,
            "description": "이현우가 앰버를 껴안은 채 신부 쪽으로 시선을 고정한 채, 동공이 확장된 얼어붙은 표정.",
            "characters": [
              "이현우",
              "앰버",
              "신부",
              "라울"
            ],
            "based_on_beat": 9,
            "original_description": "이현우가 앰버를 껴안은 채 신부와 그 옆의 라울을 번갈아 보며 동공이 확장된 얼어붙은 표정.",
            "validator_reason": "'번갈아 보며'라는 연속 동작을 한 방향(신부 쪽)으로 시선을 고정한 정지 상태로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 73,
        "scene_heading": "보건소, 목포 항구도시 - N",
        "shots": [
          {
            "shot_index": 1,
            "description": "보건소 침대 위, 앰버가 눈을 감은 채 평온하게 잠든 얼굴.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "이현우가 침대에 누운 앰버를 내려다보며 미간을 살짝 찌푸린 걱정스러운 표정.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "보건소 문 안으로 발을 내디딘 신부가 이현우를 향해 부드럽게 미소 짓는 찰나.",
            "characters": [
              "신부",
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "두 어깨를 아래로 늘어뜨린 채 안도감에 입술을 살짝 벌린 이현우의 평온한 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 두 어깨를 아래로 늘어뜨리며 안도의 한숨을 내쉬는 평온한 얼굴.",
            "validator_reason": "늘어뜨리며, 내쉬는 등의 진행 동작을 늘어뜨린 정지 자세와 벌린 입술의 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "신부의 손이 이현우의 어깨를 꽉 감싸 쥔 손끝 클로즈업.",
            "characters": [
              "신부",
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "신부의 손이 이현우의 어깨를 꽉 감싸 쥐는 손끝 클로즈업.",
            "validator_reason": "감싸 쥐는 진행 동작을 감싸 쥔 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "등 뒤를 향해 고개를 확 돌린 채 두 눈을 크게 치켜뜬 이현우의 놀란 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "이현우가 등 뒤를 향해 고개를 확 돌리며 두 눈을 크게 치켜뜬 놀란 찰나.",
            "validator_reason": "고개를 돌리는 동작을 '돌린 채'라는 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "보건소 문 앞에 선 쿠마가 이현우를 향해 한쪽 입꼬리를 올린 채 반갑게 웃는 구도.",
            "characters": [
              "쿠마",
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "보건소 문 앞에 선 쿠마가 이현우를 향해 한쪽 입꼬리를 올리며 반갑게 웃는 구도.",
            "validator_reason": "입꼬리를 올리는 진행 동작을 '올린 채'의 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "이현우와 쿠마가 서로의 어깨를 두 팔로 꽉 껴안은 채 미소 짓는 역동적인 찰나.",
            "characters": [
              "이현우",
              "쿠마"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "라울과 찰리가 나란히 선 채 껴안은 두 사람을 바라보며 환하게 미소 짓는 표정.",
            "characters": [
              "라울",
              "찰리",
              "이현우",
              "쿠마"
            ],
            "based_on_beat": 3,
            "original_description": "라울과 찰리가 나란히 서서 껴안은 두 사람을 바라보며 환하게 미소 짓는 표정.",
            "validator_reason": "'서서'라는 동사를 고정 자세인 '선 채'로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 74,
        "scene_heading": "목포 항구마을 - N",
        "shots": [
          {
            "shot_index": 1,
            "description": "어두운 밤, 낡은 식당들이 늘어선 목포 항구마을 거리로 이현우와 쿠마가 한 발을 앞으로 뻗어 공중에 뜬 mid-stride 자세로 걷는 전신.",
            "characters": [
              "이현우",
              "쿠마"
            ],
            "based_on_beat": 1,
            "original_description": "어두운 밤, 낡은 식당들이 늘어선 목포 항구마을 거리로 이현우와 쿠마가 걸음을 내딛는 전신.",
            "validator_reason": "이동 동작을 추진력이 드러나는 mid-action 순간으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "아시아계 어부가 거대한 생선 상자를 어깨에 멘 채 한 발이 지면에서 막 떨어진 mid-stride 자세로 바쁘게 걷는 역동적인 찰나.",
            "characters": [
              "어부"
            ],
            "based_on_beat": 1,
            "original_description": "아시아계 어부가 거대한 생선 상자를 어깨에 멘 채 바쁘게 걸어가는 역동적인 찰나.",
            "validator_reason": "이동 동작을 방향성이 보존된 mid-stride 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "노상 식당 의자에 마주 앉은 쿠마가 이현우를 향해 씁쓸한 표정으로 고개를 떨군 구도.",
            "characters": [
              "쿠마",
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "이현우가 탁자 앞의 쿠마를 향해 미간을 찌푸린 채 안타까운 눈빛을 보내는 시선.",
            "characters": [
              "이현우",
              "쿠마"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "아시아계 생선 장수가 이현우와 쿠마의 탁자 위로 낡은 쟁반을 든 손이 탁자 면에 닿기 직전 공중에 멈춘 찰나.",
            "characters": [
              "생선 장수",
              "이현우",
              "쿠마"
            ],
            "based_on_beat": 2,
            "original_description": "아시아계 생선 장수가 이현우와 쿠마의 탁자 위로 낡은 쟁반을 불쑥 내려놓는 손끝.",
            "validator_reason": "내려놓는 진행 동작을 탁자에 닿기 직전의 고정 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "쟁반 위에 놓인 생선회 표면에 흉측한 돌연변이 종양들이 불거져 나온 클로즈업.",
            "characters": [],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "이현우가 방사능에 오염된 생선회를 내려다보며 혐오스럽게 미간을 깊게 구긴 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 75,
        "scene_heading": "목포공항 - N",
        "shots": [
          {
            "shot_index": 1,
            "description": "짙은 이끼와 잡초로 뒤덮인 낡은 목포공항 활주로와 반쯤 부서진 간판의 황량한 전경.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "공항 건물 앞 흙바닥의 모닥불 주위에 둘러앉은 아시아계 난민 무리가 불꽃을 빤히 응시하는 구도.",
            "characters": [
              "아시아계 난민 무리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "이현우와 쿠마가 거대한 창고의 낡은 철문을 양옆으로 맹렬히 밀어 여는 힘이 실린 찰나.",
            "characters": [
              "이현우",
              "쿠마"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "어두운 창고 안, 날개가 부서지고 녹슨 낡은 경비행기 여러 대가 덩그러니 방치된 전경.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "입을 반쯤 벌린 채 낡은 경비행기들을 바라보는 이현우의 기막힌 표정.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 낡은 경비행기들을 바라보며 입을 반쯤 벌린 채 기가 막힌 표정을 짓는 얼굴.",
            "validator_reason": "'바라보며 짓는'의 두 동작을 시선 방향과 표정이 고정된 한 찰나의 시각적 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "쿠마가 이현우를 향해 한쪽 손을 뻗은 채 진지한 눈빛으로 앞을 응시하는 자세.",
            "characters": [
              "쿠마",
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "이현우가 한 손으로 턱을 괸 채 굳은 표정으로 바닥을 내려다보는 클로즈업.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "입을 벌린 채 이현우와 쿠마가 있는 창고 문 앞을 향해 맹렬히 뛰어오는 도중 한 발이 지면에서 막 떨어진 신부의 mid-action 찰나.",
            "characters": [
              "신부",
              "이현우",
              "쿠마"
            ],
            "based_on_beat": 3,
            "original_description": "신부가 숨을 헐떡이며 이현우와 쿠마가 있는 창고 문 앞을 향해 맹렬히 뛰어오는 공중의 찰나.",
            "validator_reason": "'헐떡이며 뛰어오는'의 연속 동작을 입을 벌린 표정과 뜀박질 중 한 발이 지면을 밀어낸 순간으로 구체화함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "다급한 신부 쪽으로 고개를 돌린 채 두 눈을 동그랗게 뜬 이현우의 놀란 얼굴.",
            "characters": [
              "이현우",
              "신부"
            ],
            "based_on_beat": 3,
            "original_description": "이현우가 다급한 신부를 향해 고개를 휙 돌리며 두 눈을 동그랗게 뜬 놀란 구도.",
            "validator_reason": "'돌리며 뜬'의 시간 진행을 고개를 돌린 결과 상태와 놀란 표정의 고정된 조합으로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 76,
        "scene_heading": "보건소, 목포 항구도시 - 밤",
        "shots": [
          {
            "shot_index": 1,
            "description": "보건소 침대 위, 앰버가 이마에 식은땀이 잔뜩 맺힌 채 고통스럽게 눈살을 찌푸린 얼굴 클로즈업.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 1,
            "original_description": "보건소 침대 위, 앰버가 이마에 식은땀을 잔뜩 흘리며 고통스럽게 눈살을 찌푸린 얼굴 클로즈업.",
            "validator_reason": "'흘리며'라는 진행 표현을 '맺힌 채'라는 고정 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "라울과 찰리가 앰버의 침대 곁에 바짝 붙어 서서 걱정스레 내려다보는 구도.",
            "characters": [
              "라울",
              "찰리",
              "앰버"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "백발의 60대 아시아계 의사가 청진기를 손에 든 채 미간을 깊게 찌푸리고 고개를 한쪽으로 돌린 찰나.",
            "characters": [
              "의사"
            ],
            "based_on_beat": 1,
            "original_description": "백발의 60대 아시아계 의사가 청진기를 손에 든 채 미간을 깊게 찌푸리고 고개를 젓는 찰나.",
            "validator_reason": "'고개를 젓는'이라는 반복 동작을 한쪽으로 고개를 돌려 고정된 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "이현우가 의사의 팔목을 두 손으로 꽉 움켜쥔 채 절박하게 매달리는 자세.",
            "characters": [
              "이현우",
              "의사"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "신부가 이현우의 어깨를 한 손으로 잡은 채 안타까운 표정으로 의사를 바라보는 시선.",
            "characters": [
              "신부",
              "이현우",
              "의사"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "쿠마가 이현우를 향해 단호한 표정으로 턱을 치켜들고 입술을 벌린 찰나.",
            "characters": [
              "쿠마",
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "찰리가 자신의 굵은 금속 손을 허공을 향해 번쩍 치켜든 역동적인 자세.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "이현우, 신부, 쿠마가 찰리를 향해 고개를 돌린 채 두 눈을 동그랗게 뜬 놀란 구도.",
            "characters": [
              "이현우",
              "신부",
              "쿠마",
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "찰리가 두 주먹을 가슴 앞에 불끈 쥐고 두 눈에서 푸른빛이 강하게 빛나는 결연한 자태.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "찰리가 두 주먹을 가슴 앞에 불끈 쥐고 두 눈의 푸른빛을 번쩍 빛내는 결연한 자태.",
            "validator_reason": "'빛내는'이라는 능동적 진행 표현을 '빛나는'이라는 고정 상태로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 77,
        "scene_heading": "77. 목포공항 - N",
        "shots": [
          {
            "shot_index": 1,
            "description": "찰리가 어두운 창고 안 낡은 경비행기의 기체 표면을 굵은 금속 손가락으로 조심스레 짚는 손끝 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "쿠마가 찰리의 뒷모습을 보며 미간을 찌푸린 채 반신반의하는 표정.",
            "characters": [
              "쿠마",
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "이현우가 쿠마 쪽을 향해 미간을 구기며 입을 크게 벌려 소리치는 찰나.",
            "characters": [
              "이현우",
              "쿠마"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "찰리의 시야 인터페이스 속, 낡은 경비행기 기체 위로 붉은색 'WARNING' 글씨가 선명하게 떠오른 주관 시점 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "찰리가 고개를 옆으로 돌린 채 세워진 다른 경비행기를 유심히 응시하는 시선.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "찰리가 고개를 돌려 옆에 세워진 다른 경비행기를 유심히 응시하는 시선.",
            "validator_reason": "고개를 돌리는 연속 동작을 고개를 돌린 채 멈춘 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "찰리의 시야 인터페이스 속, 다른 경비행기 기체 위로 노란색 'CAUTION' 마크가 켜진 주관 시점 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "찰리의 시야 인터페이스 속, 다른 경비행기 기체 위로 노란색 'CAUTION' 마크가 깜빡이는 주관 시점 찰나.",
            "validator_reason": "깜빡이는 변화 상태를 켜진 한 순간의 상태로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "찰리가 노란색 경고등이 뜬 경비행기에 거대한 금속 손을 바짝 밀착시킨 자세.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "찰리의 낡은 가슴 장갑판 중앙의 둥근 링에서 눈부신 불빛의 궤적이 뿜어져 나오는 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "찰리의 낡은 가슴 장갑판 중앙의 둥근 링에서 눈부신 불빛이 회전하며 뿜어져 나오는 클로즈업.",
            "validator_reason": "회전하는 연속 동작을 빛의 궤적이 보이는 상태 묘사로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "공항 창고 천장에 매달린 낡은 전구 불빛들이 번쩍이며 눈부시게 켜진 찰나.",
            "characters": [],
            "based_on_beat": 1,
            "original_description": "공항 창고 천장에 매달린 낡은 전구 불빛들이 번쩍이며 눈부시게 커지는 찰나.",
            "validator_reason": "커지는 변화 과정을 눈부시게 켜진 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "쿠마와 이현우가 번쩍이는 전구를 올려다보며 두 눈을 크게 치켜뜬 놀란 얼굴.",
            "characters": [
              "쿠마",
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "찰리의 가슴 링에서 뿜어지는 빛이 궤적을 그리며 더욱 강렬한 섬광을 발하는 순간.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "찰리의 가슴 링에서 뿜어지는 빛이 거센 회전과 함께 더욱 강렬한 섬광을 발하는 순간.",
            "validator_reason": "거센 회전이라는 연속 동작을 빛의 궤적이 보이는 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "천장의 낡은 전구 하나가 눈부신 섬광과 함께 산산조각 나 유리 파편이 허공에 튀어 오른 타격의 찰나.",
            "characters": [],
            "based_on_beat": 1,
            "original_description": "천장의 낡은 전구 하나가 눈부신 섬광과 함께 산산조각 나며 유리 파편이 튀어 오르는 타격의 찰나.",
            "validator_reason": "튀어 오르는 진행형 묘사를 파편이 허공에 멈춘 mid-action 모먼트로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "아시아계 난민 남성이 기겁하며 뒤로 한 발을 내디뎌 몸 중심이 기울어진 mid-action 역동적 뒷걸음질 자세.",
            "characters": [
              "아시아계 난민 남성"
            ],
            "based_on_beat": 1,
            "original_description": "아시아계 난민 남성이 기겁하며 뒤로 두 발자국 물러서는 역동적인 뒷걸음질 자세.",
            "validator_reason": "물러서는 이동 동작을 한 발이 떨어져 중심이 기울어진 mid-action으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "쿠마가 두 팔을 허공에 든 채 당황한 표정으로 입을 크게 벌려 고함치는 찰나.",
            "characters": [
              "쿠마"
            ],
            "based_on_beat": 1,
            "original_description": "쿠마가 두 팔을 허공에 휘저으며 당황한 표정으로 입을 크게 벌려 고함치는 찰나.",
            "validator_reason": "허공에 휘저으며라는 반복 동작을 두 팔을 든 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "찰리의 손이 닿은 경비행기의 엔진 배기구에서 시커먼 매연이 맹렬히 뿜어져 나오는 격동의 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "주변에 방치된 다른 경비행기들의 배기구에서도 일제히 검은 매연이 치솟는 웅장한 전경.",
            "characters": [],
            "based_on_beat": 1,
            "original_description": "주변에 방치된 다른 경비행기들의 배기구에서도 일제히 검은 매연이 치솟으며 시동이 걸리는 웅장한 전경.",
            "validator_reason": "시동이 걸리는 시간 흐름을 제거하고 매연이 치솟는 시각적 상태만 남김.",
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "쿠마가 두 눈을 동그랗게 뜨고 입을 쩍 벌린 채 경비행기들을 쳐다보는 경악한 표정.",
            "characters": [
              "쿠마"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "찰리가 두 주먹을 허리춤에 얹고 가슴을 쫙 편 채 위풍당당한 슈퍼히어로 자세를 취한 전신.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "쿠마가 찰리를 향해 두 팔을 뻗고 전력 질주하며 한쪽 발이 땅에서 떨어진 역동적인 구도.",
            "characters": [
              "쿠마",
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "쿠마가 찰리를 향해 두 팔을 뻗고 전력 질주하는 역동적인 구도.",
            "validator_reason": "전력 질주하는 연속 동작을 한쪽 발이 땅에서 떨어진 mid-action 모먼트로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 20,
            "description": "쿠마가 찰리의 거대한 금속 몸통을 두 팔로 껴안은 채 환하게 웃는 찰나.",
            "characters": [
              "쿠마",
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "쿠마가 찰리의 거대한 금속 몸통을 두 팔로 와락 껴안으며 환하게 웃는 찰나.",
            "validator_reason": "껴안는 동작의 진행을 껴안은 채 멈춘 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 21,
            "description": "찰리가 입가 금속 부품을 위로 한껏 올린 채 활짝 웃는 표정 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "찰리가 입가 금속 부품을 위로 한껏 올리며 활짝 웃는 표정 클로즈업.",
            "validator_reason": "올리는 동작을 올린 채 멈춘 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 22,
            "description": "이현우가 찰리를 쳐다보며 입꼬리를 비스듬히 올린 채 피식 웃음 짓는 얼굴.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 찰리를 쳐다보며 입꼬리를 비스듬히 올려 피식 웃음 짓는 얼굴.",
            "validator_reason": "입꼬리를 올리는 동작을 올린 결과 상태로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 23,
            "description": "이현우가 쿠마를 향해 고개를 살짝 끄덕인 채 옅은 미소를 띠는 찰나.",
            "characters": [
              "이현우",
              "쿠마"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 쿠마를 향해 고개를 살짝 끄덕이며 옅은 미소를 띠는 찰나.",
            "validator_reason": "끄덕이는 반복 동작을 끄덕인 채 멈춘 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 24,
            "description": "밝은 낮, 활주로에 세워진 거대한 헬리콥터 조종석에 앉아 핸들을 꽉 쥔 쿠마의 외관.",
            "characters": [
              "쿠마"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 25,
            "description": "헬기 뒷좌석에 앰버, 라울, 신부가 나란히 앉아 앞을 응시하는 구도.",
            "characters": [
              "앰버",
              "라울",
              "신부"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 26,
            "description": "이현우가 헬기 문밖으로 고개를 내민 채 두리번거리는 시선.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 27,
            "description": "찰리가 헬기에서 멀찍이 떨어진 흙바닥에 우두커니 선 거대한 뒷모습.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 28,
            "description": "찰리가 헬기 쪽을 향해 굵은 금속 손을 치켜든 채 고정된 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "찰리가 헬기 쪽을 향해 굵은 금속 손을 들어 천천히 흔드는 찰나.",
            "validator_reason": "손을 흔드는 반복 동작을 손을 치켜든 정지 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 29,
            "description": "이현우가 헬기 조수석에서 뒷좌석의 앰버를 향해 다정한 눈빛으로 입술을 반쯤 벌린 구도.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 3,
            "original_description": "이현우가 헬기 조수석에서 뒷좌석의 앰버를 향해 다정한 눈빛으로 입술을 달싹이는 구도.",
            "validator_reason": "달싹이는 반복 동작을 반쯤 벌린 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 30,
            "description": "앰버가 이현우를 올려다보며 눈가에 눈물이 고인 애절한 표정.",
            "characters": [
              "앰버",
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 31,
            "description": "이현우가 앰버의 머리에 부드럽게 손을 얹은 채 단호한 눈빛을 띠는 손끝 찰나.",
            "characters": [
              "이현우",
              "앰버"
            ],
            "based_on_beat": 3,
            "original_description": "이현우가 앰버의 머리를 부드럽게 쓰다듬으며 단호하게 고개를 끄덕이는 손끝 찰나.",
            "validator_reason": "쓰다듬으며 끄덕이는 두 가지 연속 동작을 손을 얹은 채 머무는 하나의 정지 자세로 통일함.",
            "character_ids": []
          },
          {
            "shot_index": 32,
            "description": "이현우가 라울을 향해 턱을 치켜들고 매섭게 당부하는 굳은 얼굴.",
            "characters": [
              "이현우",
              "라울"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 33,
            "description": "라울이 울먹이며 주먹을 꽉 쥔 채 이현우를 향해 고개를 푹 숙인 찰나.",
            "characters": [
              "라울",
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "라울이 울먹이며 주먹을 꽉 쥔 채 이현우를 향해 힘차게 고개를 끄덕이는 찰나.",
            "validator_reason": "고개를 끄덕이는 동작을 고개를 숙인 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 34,
            "description": "헬기에서 내린 이현우가 찰리를 향해 다가가며 한쪽 다리를 크게 내디딘 mid-stride 전신.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "헬기에서 내린 이현우가 찰리를 향해 성큼성큼 다가가는 전신.",
            "validator_reason": "성큼성큼 다가가는 연속 동작을 한쪽 다리를 내디딘 mid-action으로 보존함.",
            "character_ids": []
          },
          {
            "shot_index": 35,
            "description": "찰리가 이현우를 보며 두 눈의 푸른빛을 반짝이고 환하게 미소 짓는 얼굴.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 36,
            "description": "찰리가 헬기 열린 문 앞의 앰버를 향해 굵은 금속 손을 뻗은 채 무언가를 조심스레 내민 찰나.",
            "characters": [
              "찰리",
              "앰버"
            ],
            "based_on_beat": 3,
            "original_description": "찰리가 헬기 열린 문 앞의 앰버를 향해 굵은 금속 손을 뻗어 무언가를 조심스레 내미는 찰나.",
            "validator_reason": "손을 뻗어 내미는 연속 동작을 내민 결과 상태로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 37,
            "description": "앰버가 찰리의 손에서 작은 물건을 받아 쥔 채 눈물 섞인 미소를 짓는 손끝 클로즈업.",
            "characters": [
              "앰버",
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "앰버가 찰리의 손에서 작은 물건을 받아 쥐며 눈물 섞인 미소를 짓는 손끝 클로즈업.",
            "validator_reason": "받아 쥐는 동작을 받아 쥔 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 38,
            "description": "운전석의 쿠마가 이현우를 향해 턱을 치켜든 채 진지한 눈빛을 보내는 시선.",
            "characters": [
              "쿠마",
              "이현우"
            ],
            "based_on_beat": 4,
            "original_description": "운전석의 쿠마가 이현우를 향해 턱을 치켜들며 진지한 눈빛을 보내는 시선.",
            "validator_reason": "치켜드는 동작을 치켜든 채 머무는 결과 상태로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 39,
            "description": "헬기의 거대한 프로펠러가 회전하는 궤적을 보이며 흙먼지가 허공에 흩뿌려진 역동적인 외관.",
            "characters": [],
            "based_on_beat": 2,
            "original_description": "헬기의 거대한 프로펠러가 맹렬히 회전하며 흙먼지를 거칠게 일으키는 역동적인 외관.",
            "validator_reason": "회전하며 흙먼지를 일으키는 연속 동작을 흙먼지가 허공에 떠 있는 상태 묘사로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 40,
            "description": "헬기가 하늘을 향해 지면에서 막 떨어져 공중에 떠 있는 위압적인 찰나.",
            "characters": [],
            "based_on_beat": 2,
            "original_description": "헬기가 하늘을 향해 서서히 공중으로 치솟는 위압적인 찰나.",
            "validator_reason": "서서히 공중으로 치솟는 이동 묘사를 지면에서 떨어진 mid-action 위치로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 41,
            "description": "지상의 이현우와 찰리가 고개를 젖힌 채 하늘로 멀어지는 헬기를 빤히 올려다보는 구도.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 42,
            "description": "찰리가 멀어지는 헬기를 향해 거대한 금속 팔을 허공에 번쩍 들어 올린 역동적인 자세.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "찰리가 멀어지는 헬기를 향해 거대한 금속 팔을 위아래로 힘차게 흔드는 역동적인 자세.",
            "validator_reason": "위아래로 흔드는 반복 동작을 팔을 들어 올린 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 43,
            "description": "비행하는 헬기 안, 앰버가 조심스레 펼친 두 손바닥 위에 보라색 제비꽃 한 송이가 놓여있는 클로즈업.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 44,
            "description": "하늘 저편으로 점이 되어 허공에 떠 있는 헬기의 아득한 풍경.",
            "characters": [],
            "based_on_beat": 2,
            "original_description": "하늘 저편으로 점이 되어 멀어지는 헬기의 아득한 풍경.",
            "validator_reason": "점이 되어 멀어지는 이동 묘사를 점이 되어 떠 있는 상태로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 45,
            "description": "헬기가 사라진 하늘을 응시하던 이현우가 찰리 쪽으로 몸을 반쯤 돌린 찰나.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 5,
            "original_description": "헬기가 사라진 하늘을 응시하던 이현우가 찰리 쪽으로 몸을 확 돌리는 찰나.",
            "validator_reason": "몸을 확 돌리는 동작을 반쯤 돌린 채 멈춘 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 46,
            "description": "낡은 배낭을 멘 이현우와 찰리가 텅 빈 활주로를 따라 나란히 걷는 mid-stride로 한 발을 내딛은 전신 구도.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 5,
            "original_description": "낡은 배낭을 멘 이현우와 찰리가 텅 빈 활주로를 따라 나란히 걸어가는 전신 구도.",
            "validator_reason": "나란히 걸어가는 동작을 한 발을 내딛은 mid-action으로 보존함.",
            "character_ids": []
          },
          {
            "shot_index": 47,
            "description": "찰리가 고개를 돌려 이현우를 쳐다보며 입가 금속 부품을 벌린 채 있는 수다스러운 모습.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 5,
            "original_description": "찰리가 고개를 돌려 이현우를 쳐다보며 입가 금속 부품을 쉼 없이 달싹이는 수다스러운 모습.",
            "validator_reason": "쉼 없이 달싹이는 반복 동작을 벌린 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 48,
            "description": "앞서 걷던 이현우가 미간을 찌푸린 채 고개를 뒤로 돌려 노려보는 매서운 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 5,
            "original_description": "앞서 걷던 이현우가 미간을 찌푸린 채 뒤를 확 돌아보는 매서운 얼굴.",
            "validator_reason": "뒤를 확 돌아보는 동작을 고개를 돌려 노려보는 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 49,
            "description": "이현우가 찰리의 코앞에 바짝 마주 선 위압적인 구도.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 5,
            "original_description": "이현우가 성큼성큼 걸어와 찰리의 코앞에 바짝 다가선 위압적인 구도.",
            "validator_reason": "걸어와 다가서는 동작을 바짝 마주 선 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 50,
            "description": "이현우가 찰리를 향해 한쪽 팔을 허공에 뻗은 채 입을 크게 벌려 소리치는 분노의 표정.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 5,
            "original_description": "이현우가 찰리를 향해 한쪽 팔을 허공에 뻗으며 입을 크게 벌려 소리치는 분노의 표정.",
            "validator_reason": "팔을 뻗는 연속 동작을 뻗은 채 고정된 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 51,
            "description": "찰리가 두 어깨를 잔뜩 움츠린 채 눈가 금속 부품을 아래로 찌그러뜨린 울상 지은 얼굴.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 52,
            "description": "이현우가 찰리의 우스꽝스러운 표정을 보며 억눌렀던 웃음을 터뜨리듯 환하게 미소 짓는 찰나.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 53,
            "description": "다시 걸음을 옮기는 이현우의 뒤를 바짝 쫓으며 한 발을 내디뎌 거대한 손짓을 취한 유쾌한 뒷모습.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 5,
            "original_description": "다시 걸음을 옮기는 이현우의 뒤를 찰리가 바짝 쫓으며 거대한 손짓을 섞어 말하는 유쾌한 뒷모습.",
            "validator_reason": "쫓으며 말하는 연속 동작을 한 발을 내딛고 손을 취한 mid-action 상태로 고정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 78,
        "scene_heading": "78. 목포 항구 - N",
        "shots": [
          {
            "shot_index": 1,
            "description": "어스름한 저녁 낡은 어선들이 정박한 목포 항구, 출렁이는 검은 바닷물이 둔탁하게 부두를 때려 하얀 물보라가 일어나는 찰나의 풍경.",
            "characters": [],
            "based_on_beat": 1,
            "original_description": "어스름한 저녁 낡은 어선들이 정박한 목포 항구, 출렁이는 검은 바닷물이 둔탁하게 부두를 때리는 풍경.",
            "validator_reason": "'때리는'이라는 연속적인 파도의 움직임을 부두에 부딪혀 물보라가 일어나는 고정된 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "커다란 모포를 뒤집어쓴 찰리와 이현우가 부둣가 낡은 나무 기둥 옆에 나란히 걸터앉은 구도.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "이현우가 짙은 어둠 속 항구에 늘어선 배 한 척을 향해 시선을 고정한 채, 미간을 깊게 찌푸린 막막한 표정.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 짙은 어둠 속 항구에 늘어선 배들을 둘러보며 미간을 깊게 찌푸린 막막한 시선.",
            "validator_reason": "'둘러보며'라는 시선의 연속 이동을 한 곳에 시선을 고정한 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "모포를 쓴 찰리의 굵은 금속 손가락이 바닥에 놓인 생선 바구니를 향해 조심스레 뻗어 나간 손끝.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "아시아계 생선 장수 아주머니의 거친 손이 찰리의 뻗은 손등을 툭 쳐내는 찰나.",
            "characters": [
              "아시아계 생선 장수 아주머니",
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "기겁한 찰리가 뻗었던 금속 손을 가슴 쪽으로 확 움츠려 바짝 붙인 채 굳어 있는 위태로운 자세.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "기겁한 찰리가 뻗었던 금속 손을 가슴 쪽으로 확 움츠리며 몸을 떠는 위태로운 자세.",
            "validator_reason": "'움츠리며 떠는' 연속 동작을 손을 가슴에 붙인 채 굳어 있는 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "부두 기둥에 낡은 밧줄을 단단히 쥐고 선 아시아계 선원 남성이 고개를 돌려 이현우 쪽을 힐끗 쳐다보는 찰나.",
            "characters": [
              "아시아계 선원 남성",
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "낡은 밧줄을 부두 기둥에 묶던 아시아계 선원 남성이 고개를 돌려 이현우 쪽을 힐끗 쳐다보는 찰나.",
            "validator_reason": "'묶던'이라는 진행형 동작을 밧줄을 쥔 상태로 고개를 돌린 고정 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "이현우가 선원을 향해 경계하듯 눈을 반짝이며, 모포 자락을 당겨 찰리의 거대한 얼굴을 다급히 가린 채 멈춘 손끝 클로즈업.",
            "characters": [
              "이현우",
              "찰리",
              "아시아계 선원 남성"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 선원을 향해 경계하듯 눈을 반짝이며 모포 자락으로 찰리의 거대한 얼굴을 다급히 가리는 손끝 클로즈업.",
            "validator_reason": "'가리는' 진행 동작을 모포를 당겨 얼굴을 가린 정지 상태의 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "이현우가 선원을 올려다보며 입술을 살짝 벌린 채 진지한 표정으로 대답하는 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "선원이 턱을 치켜들고 항구 구석의 낡은 배 쪽을 손가락으로 가리키는 찰나.",
            "characters": [
              "아시아계 선원 남성"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "선원의 등 뒤를 따라 이현우와 모포를 쓴 찰리가 좁은 부둣길을 걷는 도중, 한쪽 발을 내딛고 있는 mid-stride 뒷모습.",
            "characters": [
              "아시아계 선원 남성",
              "이현우",
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "선원의 등 뒤를 따라 이현우와 모포를 쓴 찰리가 좁은 부둣길을 조심스럽게 걷는 뒷모습.",
            "validator_reason": "'걷는' 이동 동작을 한쪽 발을 내딛은 상태의 mid-stride 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "낡은 소형 배 위에서 공구를 든 백인 혼혈 남성 크리스가 고개를 든 채 자신의 앞쪽을 빤히 쳐다보는 시선.",
            "characters": [
              "크리스",
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "낡은 소형 배 위에서 공구를 든 백인 혼혈 남성 크리스가 고개를 들어 다가오는 이현우 일행을 빤히 쳐다보는 시선.",
            "validator_reason": "'다가오는'이라는 타인의 이동을 관찰하는 진행 시간을 시선을 고정한 채 쳐다보는 한 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "배 앞에 멈춰 선 이현우가 크리스를 향해 턱을 치켜들고 굳은 표정으로 입술을 여는 찰나.",
            "characters": [
              "이현우",
              "크리스"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 배 앞까지 다가가 크리스를 향해 턱을 치켜들고 굳은 표정으로 입술을 여는 찰나.",
            "validator_reason": "'다가가 입술을 여는' 두 가지 연속 동작을 배 앞에 멈춰 서서 입술을 여는 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "크리스가 모포를 쓴 찰리의 거대한 덩치에 시선을 둔 채, 미간을 살짝 찌푸린 의아한 얼굴.",
            "characters": [
              "크리스",
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "크리스가 모포를 쓴 찰리의 거대한 덩치를 위아래로 훑어보며 미간을 살짝 찌푸린 의아한 얼굴.",
            "validator_reason": "'위아래로 훑어보며'라는 시선의 연속 이동을 한 곳에 시선을 둔 채 찌푸린 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "크리스가 턱을 배 안쪽으로 꼿꼿이 치켜든 채 무심한 표정으로 멈춰 있는 찰나.",
            "characters": [
              "크리스"
            ],
            "based_on_beat": 2,
            "original_description": "크리스가 턱을 배 안쪽으로 치켜들며 무심한 표정으로 고갯짓하는 찰나.",
            "validator_reason": "'치켜들며 고갯짓하는' 연속 동작을 턱을 치켜든 상태로 고정된 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "이현우가 낡은 배의 좁은 철제 난간을 움켜쥔 채, 한쪽 다리를 뻗어 갑판 위 허공에 띄운 역동적인 mid-action 구도.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 낡은 배의 좁은 철제 난간을 움켜쥐고 다리를 뻗어 갑판 위로 올라타는 역동적인 구도.",
            "validator_reason": "'다리를 뻗어 올라타는' 이동 동작을 난간을 쥐고 다리를 허공에 뻗은 mid-action 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "모포를 뒤집어쓴 거대한 찰리가 이현우의 뒤를 이어 배 안으로 묵직한 한쪽 발을 뻗어 내린 mid-stride 찰나.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "모포를 뒤집어쓴 거대한 찰리가 이현우의 뒤를 이어 배 안으로 묵직한 발을 내딛는 찰나.",
            "validator_reason": "'발을 내딛는' 진행 동작을 발을 허공으로 뻗어 내린 mid-stride 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "크리스의 낡은 소형 배가 모터에서 거품 일어나는 물보라를 세차게 뿜어내는 수면 클로즈업.",
            "characters": [
              "크리스"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "어두운 목포 항구를 등지고 낡은 배가 거친 바다를 향해 흰 물살을 가르며 나아가는 순간의 후면 외관.",
            "characters": [],
            "based_on_beat": 2,
            "original_description": "어두운 목포 항구를 등지고 낡은 배가 거친 바다를 향해 멀어져 가는 후면 외관.",
            "validator_reason": "'멀어져 가는'이라는 시간적 변화를 물살을 가르며 나아가는 도중의 한 찰나로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 79,
        "scene_heading": "79. 선원실 - N",
        "shots": [
          {
            "shot_index": 1,
            "description": "크리스가 낡은 선원실 문을 바깥으로 당겨 여는 힘이 실린 찰나.",
            "characters": [
              "크리스"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "작은 선원실 안, 이현우가 크리스를 향해 고개를 살짝 숙인 찰나.",
            "characters": [
              "이현우",
              "크리스"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "크리스가 선원실 문을 안으로 닫는 뒷모습.",
            "characters": [
              "크리스"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "좁은 선원실 소파에 다리를 뻗고 기댄 이현우의 평온한 전신.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "찰리가 이현우를 따라 좁은 소파 등받이 쪽으로 상체를 눕히는 역동적인 자세.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "이현우 옆에서 찰리가 등받이에 기댄 채 눈가 금속 부품을 아래로 떨군 묘한 표정.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "이현우가 두 눈을 감고 잠든 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "폭발음에 두 눈을 번쩍 치켜뜬 이현우가 상체를 펄쩍 일으켜 몸이 반쯤 허공에 떠오른 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "폭발음에 이현우가 두 눈을 번쩍 치켜뜨며 상체를 펄쩍 일으키는 찰나.",
            "validator_reason": "'치켜뜨며 일으키는'의 두 가지 동시 진행 동작을 두 눈을 뜬 결과 상태와 상체가 떠오른 mid-action 단일 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "기울어지는 선원실 바닥 위로 찰리의 거대한 금속 몸통이 벽 쪽으로 쏠려 허공에 뜬 위태로운 순간.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "벽에 부딪힌 이현우가 찰리를 향해 두 눈을 동그랗게 뜬 놀란 구도.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 80,
        "scene_heading": "80. 선박 위 - N (비)",
        "shots": [
          {
            "shot_index": 1,
            "description": "엄청난 폭우가 쏟아지는 어두운 선박 갑판 위, 이현우와 찰리가 문밖으로 한 발을 막 내디딘 자세의 mid-action 찰나.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "엄청난 폭우가 쏟아지는 어두운 선박 갑판 위, 이현우와 찰리가 문밖으로 발을 내딛는 찰나.",
            "validator_reason": "발을 내딛는 이동 동작을 명확한 정지 자세(mid-action)로 보존함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "아시아계 선원들이 거센 비바람 속 갑판 위를 내달리는 중인, 한 발은 지면을 딛고 다른 발은 막 들어 올린 자세의 역동적인 mid-action 찰나.",
            "characters": [
              "아시아계 선원들"
            ],
            "based_on_beat": 1,
            "original_description": "아시아계 선원들이 거센 비바람 속 갑판 위를 내달리는 역동적인 찰나.",
            "validator_reason": "달리는 동작을 한 찰나에 담기 위해 추진력이 보존된 mid-stride 자세를 추가함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "비바람 속 조타실 창문 너머로 크리스가 눈을 부릅뜨고 앞을 향해 입을 크게 벌린 얼굴.",
            "characters": [
              "크리스"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "거대한 파도가 낡은 선박 갑판 위를 맹렬히 덮치는 압도적인 전경.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "갑판에 쏟아진 바닷물에 휩쓸린 이현우의 상체가 난간 바깥 허공으로 확 꺾인 위태로운 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "찰리의 거대한 금속 손이 허공에 뜬 이현우의 손목을 빈틈없이 꽉 틀어쥔 타격감 있는 클로즈업.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "찰리가 다른 한 손으로 갑판의 두꺼운 철제 기둥을 꽉 움켜쥔 힘이 실린 구도.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "허공에 매달린 이현우가 쏟아지는 비를 맞은 채 찰리를 향해 고함치는 절박한 표정.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "허공에 매달린 이현우가 쏟아지는 비를 맞으며 찰리를 향해 고함치는 절박한 표정.",
            "validator_reason": "시간 연결어 '~맞으며'를 결과 상태인 '~맞은 채'로 수정하여 한 순간으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "조타실 안의 크리스가 창밖을 향해 동공을 크게 확장한 채 안색이 하얗게 질린 당황한 얼굴 클로즈업.",
            "characters": [
              "크리스"
            ],
            "based_on_beat": 3,
            "original_description": "조타실 안의 크리스가 창밖을 향해 동공을 크게 확장하며 안색이 하얗게 질린 당황한 얼굴 클로즈업.",
            "validator_reason": "동작의 진행을 나타내는 '~하며'를 제거하고 동시 고정 상태인 '~한 채'로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "산더미 같은 거대한 파도가 낡은 선박 측면을 향해 무서운 기세로 솟구쳐 오른 위압적인 순간.",
            "characters": [],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "엄청난 파도가 찰리와 이현우를 맹렬히 강타하고, 그 충격으로 짙은 물보라가 사방으로 튀어 오른 파괴적인 정지 찰나.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "엄청난 파도가 찰리와 이현우를 맹렬히 강타하며 짙은 물보라가 사방으로 튀어 오르는 파괴적인 찰나.",
            "validator_reason": "시간 흐름을 잇는 '~하며'를 제거하고 강타와 물보라를 동시에 존재하는 하나의 시각적 상태로 재작성함.",
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "물기둥 속에서 찰리의 금속 손아귀를 빠져나간 이현우의 손끝 클로즈업.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "거친 파도에 휩쓸린 이현우의 몸이 선박에서 벗어난 채 바다를 향해 추락 중인 공중의 mid-action 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "거친 파도에 휩쓸린 이현우의 몸이 선박에서 멀어지며 바다로 추락하는 공중의 찰나.",
            "validator_reason": "순차적 연속 동작인 '멀어지며 추락하는'을 선박에서 벗어난 상태로 추락 중인 하나의 mid-action 자세로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "칠흑 같은 바닷속, 물기포와 함께 이현우의 몸이 아래를 향해 푹 가라앉고 있는 자세의 수중 mid-action 구도.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 4,
            "original_description": "칠흑 같은 바닷속, 물기포와 함께 이현우의 몸이 아래를 향해 푹 가라앉는 구도.",
            "validator_reason": "가라앉는 이동 동작의 방향성을 보존하기 위해 명시적인 mid-action 묘사로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "어두운 물속 허공에서 찰리의 거대한 금속 몸체가 가라앉는 이현우를 향해 손을 뻗은 찰나.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "의식을 잃은 이현우가 두 눈을 감은 채 깊은 수면 아래로 고꾸라진 평온한 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "거대한 선박의 짐짝들과 함께 찰리와 이현우의 몸이 어두운 심해로 끝없이 가라앉고 있는 상태의 수중 mid-action 전경.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 4,
            "original_description": "거대한 선박의 짐짝들과 함께 찰리와 이현우의 몸이 어두운 심해로 끝없이 가라앉는 아득한 전경.",
            "validator_reason": "끝없이 가라앉는 이동 동작을 정지 찰나에 담기 위해 mid-action 상태 묘사로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 81,
        "scene_heading": "81. 임시보호소, 제주도 연구소 - 낮",
        "shots": [
          {
            "shot_index": 1,
            "description": "눈부신 형광등 불빛 아래 새하얀 침대에서 이현우가 두 눈을 번쩍 뜬 얼굴 클로즈업.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "새하얀 환자복을 입은 이현우가 상체를 힘겹게 반쯤 일으킨 자세로 멈춰 있는 구도.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "새하얀 환자복을 입은 이현우가 상체를 힘겹게 일으켜 세우는 도중의 구도.",
            "validator_reason": "일으켜 세우는 중이라는 동작 진행을 반쯤 일으켜 정지한 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "창문 밖으로 에메랄드빛 푸른 바다가 눈부시게 펼쳐진 깨끗한 병실 전경.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "이현우가 등 뒤를 향해 고개를 확 돌린 채 미간을 찌푸린 경계 어린 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 등 뒤를 향해 고개를 확 돌리며 미간을 찌푸린 경계 어린 얼굴.",
            "validator_reason": "고개를 돌리며 찌푸리는 연속 동작을 고개를 돌린 채 찌푸린 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "흰색 연구복을 입은 서지민이 이현우를 향해 옅은 미소를 머금고 있는 찰나.",
            "characters": [
              "서지민",
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "흰색 연구복을 입은 서지민이 이현우를 향해 옅은 미소를 띠는 찰나.",
            "validator_reason": "미소를 띠는 진행 동작을 미소를 머금은 고정된 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "이현우가 서지민을 향해 상체를 바짝 들이민 채 두 눈을 크게 치켜뜬 다급한 표정.",
            "characters": [
              "이현우",
              "서지민"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 서지민을 향해 상체를 바짝 들이밀며 두 눈을 크게 치켜뜬 다급한 표정.",
            "validator_reason": "들이밀며 치켜뜨는 연속 동작을 들이민 채 치켜뜬 동시 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "서지민이 양손 바닥을 앞으로 살짝 내민 채 부드러운 미소를 짓고 있는 찰나.",
            "characters": [
              "서지민"
            ],
            "based_on_beat": 2,
            "original_description": "서지민이 양손 바닥을 앞으로 살짝 내밀며 부드러운 미소를 짓는 찰나.",
            "validator_reason": "손을 내밀며 미소 짓는 연속 동작을 손을 내민 자세로 미소 짓는 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "새하얀 연구소 복도, 서지민의 뒤쪽에서 발걸음을 우뚝 멈추고 선 이현우의 전신.",
            "characters": [
              "서지민",
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "새하얀 연구소 복도, 서지민의 뒤를 따라 걷던 이현우가 발걸음을 우뚝 멈춰 선 전신.",
            "validator_reason": "따라 걷다가 멈춰 선다는 시간의 경과를 제외하고 멈춰 선 정지 자세로만 통일함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "이현우가 동공을 확장한 채 서지민을 향해 입을 반쯤 벌린 놀란 얼굴 클로즈업.",
            "characters": [
              "이현우",
              "서지민"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "서지민이 연구원 카드를 쥔 손을 복도 끝 자동문 패널에 바짝 맞댄 손끝 클로즈업.",
            "characters": [
              "서지민"
            ],
            "based_on_beat": 3,
            "original_description": "서지민이 연구원 카드를 쥔 손을 복도 끝 자동문 패널에 바짝 갖다 대는 손끝 클로즈업.",
            "validator_reason": "갖다 대는 접근 동작을 패널에 맞댄 결과 상태로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 82,
        "scene_heading": "82. 메인 연구센터/ 제주도 연구소 - D",
        "shots": [
          {
            "shot_index": 1,
            "description": "수많은 컴퓨터와 거대한 기계 장치, 열대 식물들이 빽빽하게 어우러진 웅장한 연구소 내부 전경.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "이현우가 거대한 원자력 발전소 같은 내부를 올려다보며 입을 쩍 벌린 경이로운 표정.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "서지민이 허공을 향해 한쪽 손을 뻗은 채 진지한 눈빛으로 이현우를 바라보며 입을 벌리고 있는 모습.",
            "characters": [
              "서지민",
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "서지민이 허공을 향해 한쪽 손을 뻗으며 이현우에게 진지한 눈빛으로 설명하는 찰나.",
            "validator_reason": "'설명하는'이라는 연속 동작을 '입을 벌린 채 바라보는' 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "이현우와 서지민이 뒤쪽을 향해 동시에 고개를 돌린 채 시선을 고정한 구도.",
            "characters": [
              "이현우",
              "서지민"
            ],
            "based_on_beat": 2,
            "original_description": "이현우와 서지민이 뒤쪽을 향해 동시에 고개를 휙 돌리는 구도.",
            "validator_reason": "'고개를 휙 돌리는'이라는 연속 동작을 '고개를 돌린 채 시선을 고정한' 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "세련된 흰색 연구복 차림의 50대 지소영이 두 사람을 향해 한쪽 발을 앞으로 내디디며 걷고 있는 위압적인 전신.",
            "characters": [
              "지소영"
            ],
            "based_on_beat": 2,
            "original_description": "세련된 흰색 연구복 차림의 50대 지소영이 두 사람을 향해 성큼성큼 걸어오는 위압적인 전신.",
            "validator_reason": "'걸어오는'이라는 이동 동작을 모션 방향이 드러나는 mid-action 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "서지민이 지소영을 향해 두 눈을 반짝이며 허리를 살짝 굽힌 정중한 자세.",
            "characters": [
              "서지민",
              "지소영"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "지소영이 이현우를 향해 한쪽 손을 뻗어 내민 채 멈춰 있는 손끝.",
            "characters": [
              "지소영",
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "지소영이 이현우를 향해 한쪽 손을 불쑥 내미는 손끝.",
            "validator_reason": "'내미는'이라는 연속 동작을 '뻗어 내민 채 멈춘' 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "이현우가 지소영의 손을 맞잡은 채 눈동자를 한쪽으로 치켜뜬 불안한 얼굴.",
            "characters": [
              "이현우",
              "지소영"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 지소영의 손을 맞잡은 채 눈동자를 좌우로 굴리는 불안한 얼굴.",
            "validator_reason": "'눈동자를 좌우로 굴리는'이라는 반복 움직임을 '눈동자를 한쪽으로 치켜뜬' 고정 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "둥근 유리 벽 너머 실험실 안, 아시아계 연구원들이 일제히 컴퓨터 모니터를 응시하는 집중한 구도.",
            "characters": [
              "아시아계 연구원들"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "차가운 스테인리스 침대 위에 찰리가 꼼짝 않고 누워 있는 거대한 전신.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "침대 위 찰리의 가슴팍을 향해 얇은 인공지능 기계 팔들이 붉은 레이저 빛을 쏘아 내리는 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "이현우가 누워 있는 찰리의 금속 팔을 두 손으로 꽉 움켜쥐고 있는 구도.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "실험실 안으로 뛰어 들어온 이현우가 누워 있는 찰리의 금속 팔을 두 손으로 꽉 움켜쥔 구도.",
            "validator_reason": "'뛰어 들어온'이라는 과거 사건의 시간 표현을 제거하고 '움켜쥐고 있는' 결과 상태 하나만 남김.",
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "지소영이 침대 옆에 서서 이현우를 빤히 내려다보며 희미하게 입꼬리를 올린 건조한 얼굴.",
            "characters": [
              "지소영",
              "이현우"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "이현우가 찰리를 내려다보며 미간에 깊은 주름을 잡은 걱정스러운 표정 클로즈업.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "지소영이 찰리를 향해 시선을 던진 채 무심하고 차갑게 입술을 닫은 굳은 얼굴.",
            "characters": [
              "지소영",
              "찰리"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "이현우가 지소영의 건조한 표정을 마주하며 턱을 빳빳하게 굳힌 위화감 섞인 구도.",
            "characters": [
              "이현우",
              "지소영"
            ],
            "based_on_beat": 4,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 83,
        "scene_heading": "제주도내의 임시보호소 - D",
        "shots": [
          {
            "shot_index": 1,
            "description": "임시보호소 방 안, 이현우와 서지민이 열린 문 안쪽으로 나란히 발을 내딛는 찰나.",
            "characters": [
              "이현우",
              "서지민"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "서지민이 손가락으로 방 한쪽을 가리키며 입술을 여는 구도.",
            "characters": [
              "서지민"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "이현우가 서지민을 향해 진지한 표정으로 묻는 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "이현우가 벽면의 유선 전화기 수화기를 귀에 바짝 댄 채 입을 크게 벌려 소리치는 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "서지민이 팔짱을 낀 채 전화하는 이현우를 물끄러미 바라보는 구도.",
            "characters": [
              "서지민",
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "이현우가 수화기를 꽉 쥔 채 안도하며 환하게 웃는 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "서지민의 검지손가락이 화상통화 기기의 스위치를 꾹 누르는 손끝 클로즈업.",
            "characters": [
              "서지민"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "이현우가 놀란 표정으로 서지민을 향해 눈인사를 보내는 찰나.",
            "characters": [
              "이현우",
              "서지민"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "모니터 화면 안, 환자복을 입은 앰버가 환하게 웃고 있는 클로즈업.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "모니터 화면 안, 앰버 옆으로 라울이 얼굴을 반쯤 불쑥 들이민 찰나.",
            "characters": [
              "앰버",
              "라울"
            ],
            "based_on_beat": 2,
            "original_description": "모니터 화면 안, 앰버 옆으로 라울이 얼굴을 불쑥 내미는 역동적인 찰나.",
            "validator_reason": "'내미는' 진행형 동작을 얼굴이 반쯤 들어온 특정 순간의 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "이현우가 모니터를 향해 애써 밝은 척 활짝 웃음 짓는 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "서지민이 벽에 기댄 채 이현우의 화상통화를 묵묵히 지켜보는 전신.",
            "characters": [
              "서지민",
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "모니터 화면 속 앰버가 눈을 동그랗게 뜨고 의아한 표정으로 묻는 구도.",
            "characters": [
              "앰버"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "이현우가 미간을 살짝 찌푸린 채 씁쓸한 표정으로 모니터 시선을 피하는 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "통화가 끊겨 까맣게 꺼진 빈 모니터 화면 클로즈업.",
            "characters": [],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "이현우가 푹신한 침대 위로 상체가 반쯤 기울어져 등이 매트리스에 닿기 직전인 mid-action 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 4,
            "original_description": "이현우가 푹신한 침대 위로 상체를 눕히며 쓰러지는 역동적인 찰나.",
            "validator_reason": "'눕히며 쓰러지는' 연속 동작 표현을 상체가 기울어진 채로 공중에 머무는 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "침대에 누운 이현우가 천장을 멍하니 바라보며 미간에 깊은 주름을 잡은 심란한 얼굴 클로즈업.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 4,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 84,
        "scene_heading": "메인 연구소 실험실 - N",
        "shots": [
          {
            "shot_index": 1,
            "description": "차가운 실험실 침대 위, 수많은 전선이 연결된 채 누워 있던 찰리의 두 눈에 푸른빛이 번쩍 켜지는 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "침대에서 상체를 일으킨 찰리가 자신의 금속 몸통에 붙은 전선들을 빤히 내려다보는 구도.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "찰리의 굵은 금속 손가락이 가슴에 붙은 전선을 꽉 쥐고 거칠게 잡아당겨 전선이 팽팽해진 손끝 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "찰리의 굵은 금속 손가락이 가슴에 붙은 전선을 꽉 쥐고 거칠게 뜯어내는 손끝 클로즈업.",
            "validator_reason": "연속 동작인 '뜯어내는'을 힘이 가해져 전선이 팽팽해진 mid-action 모먼트로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "찰리가 거대한 금속 손으로 출입구 유리 벽의 스위치를 꾹 누르는 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "열린 유리 벽 밖으로 찰리가 거대한 금속 다리를 조심스레 내디뎌 한쪽 발이 공중에 떠 있는 구도.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "열린 유리 벽 밖으로 찰리가 거대한 금속 다리를 조심스레 내딛는 구도.",
            "validator_reason": "이동 동작인 '내딛는'을 방향성이 담긴 mid-stride 자세로 보존함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "낯선 연구소 복도에서 찰리가 귀 쪽 금속 부품을 쫑긋 세운 채 멈춰 선 자세.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "깔끔하고 모던한 소장실 중앙, 낡은 피아노 앞에 앉은 지소영이 건반을 누르는 뒷모습.",
            "characters": [
              "지소영"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "멀리서 피아노를 치는 지소영의 뒷모습을 보며 찰리가 두 눈의 푸른 안광을 크게 확장한 찰나.",
            "characters": [
              "지소영",
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "지소영이 건반에서 손을 뗀 채 고개를 돌려 찰리 쪽을 바라보는 굳은 얼굴.",
            "characters": [
              "지소영",
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "기겁한 찰리가 소장실의 커다란 기둥 뒤로 거대한 금속 몸통을 맹렬히 밀어 넣어 반쯤 가려진 역동적인 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "기겁한 찰리가 소장실의 커다란 기둥 뒤로 거대한 금속 몸통을 맹렬히 숨기는 역동적인 찰나.",
            "validator_reason": "이동/추진 동작인 '숨기는'을 맹렬한 태도가 담긴 채 기둥에 반쯤 가려진 mid-action 자세로 보존함.",
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "지소영이 기둥 쪽을 향해 입꼬리를 부드럽게 올리며 옅게 미소 짓는 얼굴.",
            "characters": [
              "지소영"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "찰리가 기둥 옆으로 금속 고개를 빼꼼히 내밀어 지소영을 훔쳐보는 구도.",
            "characters": [
              "찰리",
              "지소영"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "찰리가 기둥에서 빠져나와 지소영을 향해 묵직하게 한쪽 발을 내디뎌 허공에 뜬 상태의 전신.",
            "characters": [
              "찰리",
              "지소영"
            ],
            "based_on_beat": 3,
            "original_description": "찰리가 기둥에서 빠져나와 지소영을 향해 묵직한 발걸음을 옮기는 전신.",
            "validator_reason": "이동 동작인 '발걸음을 옮기는'을 추진력 단서가 담긴 mid-stride 순간으로 보존함.",
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "지소영이 다가온 찰리를 올려다보며 눈가에 애절한 눈물이 맺힌 표정.",
            "characters": [
              "지소영",
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "찰리가 지소영의 늙은 얼굴을 빤히 내려다보며 두 눈의 안광 빛이 미세하게 흔들리는 집중한 구도.",
            "characters": [
              "찰리",
              "지소영"
            ],
            "based_on_beat": 3,
            "original_description": "찰리가 지소영의 늙은 얼굴을 빤히 내려다보며 두 눈의 안광을 미세하게 깜빡이는 집중한 구도.",
            "validator_reason": "되풀이되는 변화 동작인 '깜빡이는'을 빛이 흔들리는 위상의 한 순간으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "지소영의 얇은 손가락들이 피아노 건반 위를 유려하게 누르는 손끝 클로즈업.",
            "characters": [
              "지소영"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "피아노 선율을 듣는 찰리가 멍한 표정으로 낡은 금속 고개를 살짝 기울인 구도.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "찰리의 시야 인터페이스 속, 피아노를 치는 지소영의 얼굴 위로 어린 지소영의 얼굴 데이터가 정확히 겹쳐진 주관 시점 찰나.",
            "characters": [
              "찰리",
              "지소영"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "찰리가 두 눈의 푸른빛을 번쩍 치켜뜨며 입가 금속 부품을 확 벌린 놀란 얼굴 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 20,
            "description": "찰리가 피아노 앞의 지소영을 향해 거대한 두 팔을 뻗어 와락 감싸 안아 몸이 밀착된 역동적인 찰나.",
            "characters": [
              "찰리",
              "지소영"
            ],
            "based_on_beat": 4,
            "original_description": "찰리가 피아노 앞의 지소영을 향해 거대한 두 팔을 뻗어 와락 끌어안는 역동적인 찰나.",
            "validator_reason": "능동적 접촉 동작인 '끌어안는'을 힘이 가해져 몸이 밀착된 still moment로 보존함.",
            "character_ids": []
          },
          {
            "shot_index": 21,
            "description": "찰리의 거대한 금속 품에 안긴 지소영이 두 눈을 지그시 감은 채 평온한 미소를 짓는 감동적인 구도.",
            "characters": [
              "찰리",
              "지소영"
            ],
            "based_on_beat": 4,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 85,
        "scene_heading": "85. 연구소 메인센터 - D",
        "shots": [
          {
            "shot_index": 1,
            "description": "유리 벽 너머, 가슴과 팔에 여러 가닥의 굵은 전선을 붙인 찰리가 차가운 금속 의자에 꼿꼿이 앉아 있는 구도.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "유리 벽 바깥에서 마이크에 입을 바짝 댄 지소영이 찰리를 향해 입술을 여는 찰나.",
            "characters": [
              "지소영",
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "찰리가 자신의 가슴에 달린 둥근 링 부품을 빤히 내려다보는 시선.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "두 눈을 지그시 감은 찰리의 가슴 장갑판 중앙에서 둥근 링 부품이 맹렬히 회전하던 도중의 한 위치에서 도는 방향의 잔상을 남기며 포착된 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "두 눈을 지그시 감은 찰리의 가슴 장갑판 중앙에서 둥근 링 부품이 맹렬한 속도로 회전하는 클로즈업.",
            "validator_reason": "'회전하는'이라는 지속 동작을 링이 돌던 도중 잔상을 남기는 한 순간으로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "연구원 A가 모니터 화면에서 위로 치솟는 중의 한 높이에서 포착된 붉은색 그래프를 뚫어지게 응시하는 집중한 얼굴.",
            "characters": [
              "연구원 A"
            ],
            "based_on_beat": 2,
            "original_description": "연구원 A가 모니터 화면의 치솟는 붉은색 그래프를 뚫어지게 응시하는 집중한 얼굴.",
            "validator_reason": "'치솟는'이라는 변화 진행을 그래프가 오르던 중의 한 높이로 포착된 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "지소영이 모니터를 가리킨 채 입을 크게 벌려 지시하는 찰나.",
            "characters": [
              "지소영"
            ],
            "based_on_beat": 2,
            "original_description": "지소영이 모니터를 가리키며 입을 크게 벌려 지시하는 찰나.",
            "validator_reason": "'가리키며 지시하는'의 동시 진행 동작을 모니터를 가리킨 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "연구원 A의 양손이 컴퓨터 키보드 위를 빠르게 두드리던 도중 한 손가락이 키에 막 닿은 역동적인 손끝.",
            "characters": [
              "연구원 A"
            ],
            "based_on_beat": 2,
            "original_description": "연구원 A의 양손이 컴퓨터 키보드 위를 빠르게 두드리는 역동적인 손끝.",
            "validator_reason": "'두드리는'이라는 반복 동작을 키보드 키를 누르는 찰나의 자세로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "컴퓨터 모니터 화면 위로 '데이터 기록 중'이라는 글씨가 선명하게 떠오른 클로즈업.",
            "characters": [],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "유리 벽 안쪽의 찰리가 맹렬하게 회전하던 중의 한 위치에서 포착된 가슴 링을 굽어본 채 두 눈을 부릅뜬 집중한 얼굴.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "유리 벽 안쪽의 찰리가 맹렬하게 회전하는 가슴 링을 굽어보며 두 눈을 부릅뜬 집중한 얼굴.",
            "validator_reason": "'회전하는'과 '굽어보며'의 동시 진행을 링의 한 위치가 포착된 순간에 굽어보는 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "찰리의 가슴 링에서 눈부신 빛의 궤적이 원형으로 뿜어져 나오는 광속의 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "컴퓨터 모니터 화면 한가운데 'ERROR'라는 붉은 글씨가 켜져 강하게 붉은빛을 발하는 클로즈업.",
            "characters": [],
            "based_on_beat": 3,
            "original_description": "컴퓨터 모니터 화면 한가운데 'ERROR'라는 붉은 글씨가 거칠게 깜빡이는 클로즈업.",
            "validator_reason": "'깜빡이는'이라는 반복적 변화를 글씨가 켜진 채 빛을 발하는 한 순간의 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "찰리의 가슴 링에서 시커먼 연기가 훅 피어오르던 도중의 한 형태로 포착된 위태로운 순간.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "찰리의 가슴 링에서 시커먼 연기가 훅 피어오르는 위태로운 순간.",
            "validator_reason": "'피어오르는'이라는 변화 진행을 연기가 뿜어지던 도중의 한 형태로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "당황한 지소영이 연구원 A 쪽으로 고개를 확 돌리던 도중 턱이 반쯤 돌아간 구도.",
            "characters": [
              "지소영",
              "연구원 A"
            ],
            "based_on_beat": 3,
            "original_description": "당황한 지소영이 연구원 A 쪽으로 고개를 확 돌리는 구도.",
            "validator_reason": "'돌리는'이라는 이동/회전 동작을 고개가 반쯤 돌아간 mid-action 상태로 고정함.",
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "찰리가 가슴의 링을 멈춘 채 고개를 푹 숙인 무기력한 자태.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "지소영이 멈춰버린 찰리를 응시한 채 미간을 찌푸린 어두운 표정.",
            "characters": [
              "지소영",
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "지소영이 멈춰버린 찰리를 응시하며 미간을 찌푸린 어두운 표정.",
            "validator_reason": "'응시하며'라는 시간 진행 연결어를 응시한 상태의 단일 결과 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "식당 테이블 앞, 이현우가 수북이 쌓인 빵과 음식을 무심하게 내려다보는 구도.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "맞은편의 서지민이 샌드위치를 쥔 채 이현우를 쳐다보는 찰나.",
            "characters": [
              "서지민",
              "이현우"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "이현우가 서지민을 향해 고개를 비스듬히 치켜든 채 바라보는 시선.",
            "characters": [
              "이현우",
              "서지민"
            ],
            "based_on_beat": 4,
            "original_description": "이현우가 고개를 들어 서지민을 향해 턱을 비스듬히 치켜든 시선.",
            "validator_reason": "'고개를 들어'와 '치켜든'의 순차 동작을 고개를 비스듬히 치켜든 단일 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "서지민이 양손을 허공에 살짝 펼친 채 열정적으로 설명하는 입모양의 자세.",
            "characters": [
              "서지민"
            ],
            "based_on_beat": 4,
            "original_description": "서지민이 양손을 허공에 살짝 펼치며 열정적으로 설명하는 자세.",
            "validator_reason": "'펼치며 설명하는'의 동시 진행 동작을 손을 펼친 자세와 입을 벌린 단일 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 20,
            "description": "미간에 굵은 주름을 잡은 채 입을 반쯤 벌리고 얼어붙은 이현우의 표정.",
            "characters": [
              "이현우",
              "서지민"
            ],
            "based_on_beat": 4,
            "original_description": "서지민의 말을 듣던 이현우가 미간에 굵은 주름을 잡으며 입을 반쯤 벌린 얼어붙은 표정.",
            "validator_reason": "'듣던'과 '잡으며'의 시간 진행 표현을 주름을 잡고 입을 벌린 단일 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 21,
            "description": "서지민이 아차 싶어 입을 꾹 다문 채 동공이 굳어진 당황한 얼굴 클로즈업.",
            "characters": [
              "서지민"
            ],
            "based_on_beat": 4,
            "original_description": "서지민이 아차 싶어 입을 꾹 다문 채 동공을 미세하게 떠는 당황한 얼굴 클로즈업.",
            "validator_reason": "'떠는'이라는 반복 동작을 동공이 굳어진 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 22,
            "description": "이현우가 테이블을 두 손으로 짚고 상체를 반쯤 일으킨 채 입을 크게 벌려 고함치는 역동적인 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 4,
            "original_description": "이현우가 테이블을 두 손으로 짚고 상체를 벌떡 일으키며 입을 크게 벌려 고함치는 역동적인 찰나.",
            "validator_reason": "'짚고 일으키며'의 연속 동작을 두 손을 짚은 채 상체를 반쯤 일으킨 mid-action 순간으로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 86,
        "scene_heading": "86. 메인 센터 소장실 - N",
        "shots": [
          {
            "shot_index": 1,
            "description": "이현우가 소장실 문을 거칠게 밀어젖히는 역동적인 찰나.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "이현우가 지소영의 책상 앞에 선 채 두 주먹을 꽉 쥐고 쏘아붙이는 분노의 표정.",
            "characters": [
              "이현우",
              "지소영"
            ],
            "based_on_beat": 1,
            "original_description": "이현우가 지소영의 책상 앞까지 다가가 두 주먹을 꽉 쥔 채 쏘아붙이는 분노의 표정.",
            "validator_reason": "'다가가'라는 두 동작 사이의 시간 순서 표현을 제거하고 서 있는 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "당황한 지소영이 등 뒤를 따라 들어온 서지민 쪽으로 고개를 확 돌린 구도.",
            "characters": [
              "지소영",
              "서지민"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "서지민이 지소영의 시선을 피한 채 턱을 가슴 쪽으로 푹 숙인 미안한 얼굴.",
            "characters": [
              "서지민",
              "지소영"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "지소영이 이현우를 향해 양손 바닥을 앞으로 내밀며 부드럽게 미소 짓는 회유의 자세.",
            "characters": [
              "지소영",
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "이현우가 지소영을 향해 삿대질을 하며 눈에 핏대를 세운 격앙된 얼굴 클로즈업.",
            "characters": [
              "이현우",
              "지소영"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "지소영이 입을 꾹 다문 채 이마에 미세한 주름을 잡고 난감한 표정으로 굳어버린 구도.",
            "characters": [
              "지소영"
            ],
            "based_on_beat": 3,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 87,
        "scene_heading": "87. 특임대+ 유빅사 사무실 (교차) - N",
        "shots": [
          {
            "shot_index": 1,
            "description": "특임대 사무실 복도, 광택 나는 군화를 신은 한쪽 발이 앞을 향해 절도 있게 뻗은 채 허공에 떠 있는 발밑 클로즈업.",
            "characters": [
              "특임대원"
            ],
            "based_on_beat": 1,
            "original_description": "특임대 사무실 복도, 광택 나는 군화를 신은 발걸음이 앞을 향해 절도 있게 뻗어 나가는 발밑 클로즈업.",
            "validator_reason": "'뻗어 나가는'이라는 진행형 이동 동작을, 한쪽 발이 공중에 뜬 mid-action 정지 순간으로 수정하여 방향성을 보존함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "아시아계 특임대원이 이강준의 책상 위로 낡은 서류철을 불쑥 내민 손끝.",
            "characters": [
              "아시아계 특임대원",
              "이강준"
            ],
            "based_on_beat": 1,
            "original_description": "아시아계 특임대원이 이강준의 책상 위로 낡은 서류철을 불쑥 내미는 손끝.",
            "validator_reason": "'내미는'이라는 연속 동작을 '내민' 결과 상태의 정지 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "이강준이 건네받은 서류를 응시하며 미간을 좁힌 날카로운 얼굴.",
            "characters": [
              "이강준"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "이강준이 턱을 치켜들고 아시아계 특임대원을 매섭게 쏘아보는 위압적인 시선.",
            "characters": [
              "이강준",
              "아시아계 특임대원"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "이강준이 두 주먹을 책상 위에 꽉 쥔 채 앞으로 몸을 쑥 내민 결연한 구도.",
            "characters": [
              "이강준"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "어두운 회장실, 윤성찬이 커다란 오디오 스피커 쪽으로 한쪽 귀를 바짝 기울인 집중한 자세.",
            "characters": [
              "윤성찬"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "윤성찬이 오디오를 향해 입꼬리를 씩 올린 비열한 얼굴 클로즈업.",
            "characters": [
              "윤성찬"
            ],
            "based_on_beat": 3,
            "original_description": "윤성찬이 오디오를 향해 입꼬리를 씩 올리는 비열한 얼굴 클로즈업.",
            "validator_reason": "'올리는'이라는 변화 중인 표정을 '올린' 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "옆에 선 유빅사 용병대장을 빤히 쳐다보는 윤성찬의 시선.",
            "characters": [
              "윤성찬",
              "유빅사 용병대장"
            ],
            "based_on_beat": 3,
            "original_description": "윤성찬이 고개를 돌려 옆에 선 유빅사 용병대장을 빤히 쳐다보는 시선.",
            "validator_reason": "'고개를 돌려'와 '쳐다보는'의 두 연속 동작 중 '쳐다보는' 단일 상태만 남김.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "유빅사 용병대장이 윤성찬을 향해 고개를 살짝 숙인 뻣뻣한 구도.",
            "characters": [
              "유빅사 용병대장",
              "윤성찬"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "윤성찬이 검지손가락을 세워 자신의 입술에 댄 채 거만한 눈빛을 뿜어내는 찰나.",
            "characters": [
              "윤성찬"
            ],
            "based_on_beat": 4,
            "original_description": "윤성찬이 검지손가락을 세워 자신의 입술에 가져다 대며 거만한 눈빛을 뿜어내는 찰나.",
            "validator_reason": "'가져다 대며 뿜어내는'의 연속 동작을 '댄 채 뿜어내는' 동시 고정 상태로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 88,
        "scene_heading": "제주도 연구소 - D",
        "shots": [
          {
            "shot_index": 1,
            "description": "바다 한가운데 우뚝 솟은 거대한 연구소 건물 너머로 아침 해가 떠오르는 도중의 한 위치에 걸려 있는 평화로운 풍경.",
            "characters": [],
            "based_on_beat": 0,
            "original_description": "바다 한가운데 우뚝 솟은 거대한 연구소 건물 너머로 아침 해가 떠오르는 평화로운 풍경.",
            "validator_reason": "해가 떠오르는 연속 동작을 떠오르는 도중의 한 위치에 걸린 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "소장실 책상 위 낡은 가족사진 액자 속에서 남성과 어린 소녀가 환하게 웃고 있는 표면 클로즈업.",
            "characters": [
              "남성",
              "어린 소녀"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "지소영이 책상 앞 의자에 앉아 사진을 내려다보며 미간을 찌푸린 슬픈 얼굴.",
            "characters": [
              "지소영"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "연구소 복도, 이현우가 벽 모퉁이에 상체를 바짝 밀착시킨 채 긴장된 표정으로 앞을 살피는 구도.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "실험실 문이 틈새를 보이며 멈춰 있고, 연구원 A와 아시아계 연구원이 밖으로 한쪽 발을 막 내디딘 채 자세를 고정하고 있는 외관.",
            "characters": [
              "연구원 A",
              "아시아계 연구원"
            ],
            "based_on_beat": 1,
            "original_description": "굳게 닫힌 실험실 문이 열리며 연구원 A와 아시아계 연구원이 밖으로 발을 내딛는 외관.",
            "validator_reason": "문이 열리고 발을 내딛는 연속 동작을 문이 열린 틈으로 한 발을 내디딘 정지 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "모퉁이 뒤에 숨은 이현우가 입을 반쯤 벌린 채 두 눈을 크게 치켜뜬 충격받은 얼굴 클로즈업.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "차가운 스테인리스 침대 위에 거대한 금속 몸통이 단단히 결박된 찰리의 전신.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "찰리가 두 눈의 푸른빛을 켠 채 천장을 빤히 올려다보는 어리둥절한 표정.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "찰리가 두 눈의 푸른빛을 깜빡이며 천장을 빤히 올려다보는 어리둥절한 표정.",
            "validator_reason": "눈을 깜빡이는 반복 동작을 푸른빛이 켜진 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "지소영이 침대 옆에 서서 찰리의 낡은 금속 머리 위에 손을 얹은 채 가만히 맞닿아 있는 손끝.",
            "characters": [
              "지소영",
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "지소영이 침대 옆에 서서 찰리의 낡은 금속 머리를 부드럽게 쓰다듬는 손끝.",
            "validator_reason": "쓰다듬는 연속 동작을 머리에 손이 닿아 있는 정지 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "지소영이 찰리를 내려다보며 눈가에 눈물이 맺힌 애절한 얼굴.",
            "characters": [
              "지소영",
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "지소영을 향해 고개를 돌린 채 빤히 쳐다보는, 눈가 금속 부품이 아래로 살짝 내려간 구도.",
            "characters": [
              "찰리",
              "지소영"
            ],
            "based_on_beat": 2,
            "original_description": "찰리가 고개를 돌려 지소영을 빤히 쳐다보며 눈가 금속 부품을 아래로 살짝 내린 구도.",
            "validator_reason": "고개를 돌려 쳐다보는 순차 동작을 고개를 돌린 자세로 쳐다보는 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "지소영이 찰리에게서 시선을 피한 채 눈을 질끈 감고 고통스러운 표정을 짓는 클로즈업.",
            "characters": [
              "지소영",
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "실험실의 무거운 철문이 안으로 맹렬히 열려 젖혀지는 도중의 한 각도에서 멈춘 찰나.",
            "characters": [],
            "based_on_beat": 3,
            "original_description": "실험실의 무거운 철문이 안으로 맹렬히 열려 젖혀지는 찰나.",
            "validator_reason": "문이 열려 젖혀지는 변화를 정도를 지어내지 않고 열리는 도중의 한 각도에서 멈춘 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "열린 문 앞의 이현우가 두 주먹을 꽉 쥔 채 거친 숨을 몰아쉬듯 입을 살짝 벌리고 노려보는 위압적인 구도.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "열린 문 앞의 이현우가 두 주먹을 꽉 쥔 채 거친 숨을 내쉬며 노려보는 위압적인 구도.",
            "validator_reason": "숨을 내쉬는 연속 동작을 입을 벌린 정지 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "실험실 안의 지소영과 연구원 A, 서지민이 일제히 이현우 쪽으로 고개를 확 돌린 놀란 표정.",
            "characters": [
              "지소영",
              "연구원 A",
              "서지민",
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "서지민이 이현우를 향해 두 팔을 뻗은 채, 한 발은 바닥을 구르고 다른 발은 허공에 뜬 달려가는 도중의 역동적인 전신.",
            "characters": [
              "서지민",
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "서지민이 이현우를 향해 두 팔을 뻗고 다급하게 달려가는 역동적인 전신.",
            "validator_reason": "달려가는 연속 이동 동작을 한 발이 바닥을 차고 허공에 뜬 mid-stride 정지 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "이현우가 목에 핏대를 세운 채 지소영을 향해 입을 크게 벌려 고함치는 찰나.",
            "characters": [
              "이현우",
              "지소영"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "지소영이 출입구 쪽을 향해 단호하게 손가락을 뻗은 채 눈을 부릅뜬 굳은 얼굴.",
            "characters": [
              "지소영"
            ],
            "based_on_beat": 4,
            "original_description": "지소영이 출입구 쪽을 향해 단호하게 손가락을 뻗으며 눈을 부릅뜬 굳은 얼굴.",
            "validator_reason": "손가락을 뻗으며 부릅뜨는 두 연속 동작을 뻗은 채 부릅뜬 동시 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "연구원 A와 아시아계 연구원들이 이현우를 향해 양팔을 벌린 채 거리를 좁히듯 한 발을 앞으로 내디딘 긴장된 구도.",
            "characters": [
              "연구원 A",
              "아시아계 연구원",
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "연구원 A와 아시아계 연구원들이 이현우를 향해 양팔을 벌리며 거리를 좁혀오는 긴장된 구도.",
            "validator_reason": "양팔을 벌리며 거리를 좁히는 연속 동작을 팔을 벌린 채 한 발을 내디딘 mid-action 정지 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 20,
            "description": "이현우가 옆에 세워진 길쭉한 금속 스탠드를 두 손으로 꽉 움켜쥔 접촉의 찰나 손끝 클로즈업.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "original_description": "이현우가 옆에 세워진 길쭉한 금속 스탠드를 두 손으로 맹렬히 낚아채는 손끝 클로즈업.",
            "validator_reason": "낚아채는 연속 동작을 스탠드를 꽉 움켜쥔 접촉의 정지 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 21,
            "description": "이현우가 금속 스탠드를 연구원들을 향해 거칠게 휘두르는 궤적 중간에 멈춘 역동적인 찰나.",
            "characters": [
              "이현우",
              "연구원들"
            ],
            "based_on_beat": 3,
            "original_description": "이현우가 금속 스탠드를 연구원들을 향해 거칠게 휘두르는 도중의 역동적인 찰나.",
            "validator_reason": "휘두르는 동작을 궤적 중간에 멈춘 mid-action 자세로 명확히 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 22,
            "description": "이현우가 금속 스탠드를 꽉 쥔 채 지소영을 향해 턱을 치켜들고 분노로 일그러진 얼굴을 한 클로즈업.",
            "characters": [
              "이현우",
              "지소영"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 23,
            "description": "침대 위에 묶인 찰리가 두 눈의 푸른 안광을 크게 확장한 채 놀란 표정을 짓고 있는 구도.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 5,
            "original_description": "침대 위에 묶인 찰리가 이현우의 외침을 들으며 두 눈의 푸른 안광을 크게 확장한 놀란 표정.",
            "validator_reason": "외침을 들으며 안광을 확장하는 시간 진행 표현을 안광을 확장한 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 24,
            "description": "찰리가 침대에 결박된 양팔을 바깥으로 맹렬히 당기는 힘이 실린 자세.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 25,
            "description": "책상 서랍 안에서 시뻘건 스파크가 번쩍이는 그 순간, 검은 스턴건의 손잡이를 꽉 움켜쥔 연구원 A의 손끝 클로즈업.",
            "characters": [
              "연구원 A"
            ],
            "based_on_beat": 3,
            "original_description": "연구원 A가 책상 서랍 안에서 시뻘건 스파크가 튀는 검은 스턴건의 손잡이를 꽉 움켜쥔 손끝 클로즈업.",
            "validator_reason": "스파크가 튀는 반복 변화를 번쩍이는 한 순간의 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 26,
            "description": "찰리의 굵은 금속 손가락이 스테인리스 침대 바닥을 투박하게 내리치는 타격의 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 27,
            "description": "입을 살짝 벌린 채 연구원 A를 향해 고개를 숙여 끄덕인 자세로 멈춘 지소영의 찰나.",
            "characters": [
              "지소영",
              "연구원 A"
            ],
            "based_on_beat": 4,
            "original_description": "지소영이 깊은 한숨을 내쉬며 연구원 A를 향해 고개를 끄덕이는 찰나.",
            "validator_reason": "한숨을 내쉬며 고개를 끄덕이는 연속 동작을 고개를 끄덕인 자세로 멈춘 동시 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 28,
            "description": "연구원 A가 찰리의 양팔과 가슴을 옥죄고 있던 두꺼운 금속 잠금장치를 위로 젖힌 채 붙잡고 있는 손끝.",
            "characters": [
              "연구원 A",
              "찰리"
            ],
            "based_on_beat": 4,
            "original_description": "연구원 A가 찰리의 양팔과 가슴을 옥죄고 있던 두꺼운 금속 잠금장치를 위로 젖혀 푸는 손끝.",
            "validator_reason": "잠금장치를 젖혀 푸는 순차 동작을 위로 젖힌 상태에서 멈춘 정지 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 29,
            "description": "바닥에 내던져진 금속 스탠드 옆에서, 찰리의 침대 쪽을 향해 한 발로 바닥을 차고 반대쪽 발은 허공에 뜬 맹렬히 달려가는 도중의 역동적인 전신.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 5,
            "original_description": "이현우가 금속 스탠드를 바닥에 내던진 채 찰리의 침대 쪽으로 맹렬히 달려가는 역동적인 전신.",
            "validator_reason": "내던진 채 달려가는 연속 동작을 스탠드가 바닥에 있고 발이 허공에 뜬 mid-stride 정지 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 30,
            "description": "이현우가 찰리의 거대한 금속 팔을 두 손으로 꽉 움켜쥔 채 눈물범벅인 얼굴로 호소하는 애절한 표정.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 31,
            "description": "이현우를 내려다보는 시선으로 입가 금속 부품이 위로 올라간 채 따뜻한 미소를 머금은 찰리의 찰나.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 5,
            "original_description": "찰리가 이현우를 내려다보며 입가 금속 부품을 위로 올려 따뜻하게 미소 짓는 찰나.",
            "validator_reason": "내려다보며 부품을 올리고 미소 짓는 연속된 동작을 부품이 올라간 미소 지은 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 32,
            "description": "이현우가 고개를 푹 숙인 채 찰리의 금속 팔에 자신의 이마를 맞대고 오열하는 구도.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 33,
            "description": "찰리가 두 어깨를 늘어뜨린 채 이현우의 머리를 가만히 내려다보는 슬픈 얼굴.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 34,
            "description": "지소영이 의자에 풀썩 주저앉은 채 두 손으로 자신의 얼굴을 꽉 감싸 쥔 고통스러운 자세.",
            "characters": [
              "지소영"
            ],
            "based_on_beat": 5,
            "original_description": "지소영이 의자에 풀썩 주저앉아 두 손으로 자신의 얼굴을 꽉 감싸 쥔 고통스러운 자세.",
            "validator_reason": "주저앉아 감싸 쥐는 순차 동작을 주저앉은 상태에서 얼굴을 감싸 쥔 동시 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 35,
            "description": "서지민과 연구원 A가 고개를 푹 떨군 채 눈시울을 붉히는 굳은 표정.",
            "characters": [
              "서지민",
              "연구원 A"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 36,
            "description": "이현우가 의자에 앉은 지소영 쪽으로 고개를 확 돌린 채 애원하는 표정을 짓고 있는 얼굴.",
            "characters": [
              "이현우",
              "지소영"
            ],
            "based_on_beat": 5,
            "original_description": "이현우가 의자에 앉은 지소영 쪽으로 고개를 확 돌리며 애원하는 얼굴.",
            "validator_reason": "고개를 돌리며 애원하는 연속 동작을 고개를 돌린 고정 자세로 애원하는 표정으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 37,
            "description": "찰리의 굵은 금속 손가락 끝이 이현우의 눈물 젖은 뺨에 부드럽게 닿아 있는 손끝 클로즈업.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 5,
            "original_description": "찰리의 굵은 금속 손가락 끝이 이현우의 눈물 젖은 뺨을 부드럽게 쓰다듬는 손끝 클로즈업.",
            "validator_reason": "쓰다듬는 연속 동작을 뺨에 손가락이 닿아 있는 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 38,
            "description": "찰리가 두 눈의 푸른빛이 번쩍이는 순간, 이현우를 향해 결연하게 고개를 숙여 끄덕인 자세의 찰나.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 5,
            "original_description": "찰리가 두 눈의 푸른빛을 반짝이며 이현우를 향해 결연하게 고개를 끄덕이는 찰나.",
            "validator_reason": "빛을 반짝이며 고개를 끄덕이는 두 동작을 빛이 번쩍이는 순간에 고개를 끄덕인 자세로 멈춘 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 39,
            "description": "이현우가 두 눈을 동그랗게 뜬 채 뺨을 떠난 투명한 눈물방울이 바닥을 향해 떨어지며 공중에 떠 있는 순간.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 5,
            "original_description": "이현우가 두 눈을 동그랗게 뜬 채 뺨을 타고 흐르는 투명한 눈물이 바닥으로 떨어지는 순간.",
            "validator_reason": "눈물이 흐르고 떨어지는 연속 변화를 눈물방울이 공중에 떠 있는 찰나의 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 40,
            "description": "찰리가 이현우를 향해 한쪽 눈가 금속 부품이 아래로 내려간 채 찡긋하는 유쾌한 표정을 지은 클로즈업.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 5,
            "original_description": "찰리가 이현우를 향해 한쪽 눈가 금속 부품을 내리며 찡긋거리는 유쾌한 표 클로즈업.",
            "validator_reason": "부품을 내리며 찡긋거리는 연속 동작을 부품이 내려간 고정 표정으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 41,
            "description": "실험실 천장의 붉은 경광등이 눈부신 섬광을 내뿜는 최고조의 밝기에서 멈춘 찰나.",
            "characters": [],
            "based_on_beat": 6,
            "original_description": "실험실 천장의 붉은 경광등이 눈부신 섬광을 내뿜으며 요란하게 번쩍이는 찰나.",
            "validator_reason": "섬광을 내뿜으며 번쩍이는 변화를 최고조로 밝아진 한 순간의 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 42,
            "description": "지소영이 의자에서 상체를 펄쩍 일으킨 채 천장 쪽을 올려다보고 있는 당황한 구도.",
            "characters": [
              "지소영"
            ],
            "based_on_beat": 6,
            "original_description": "지소영이 의자에서 상체를 펄쩍 일으키며 천장 쪽을 올려다보는 당황한 구도.",
            "validator_reason": "상체를 일으키며 올려다보는 연속 동작을 일으킨 채 올려다보는 동시 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 43,
            "description": "두 눈을 크게 치켜뜬 채 천장 쪽을 향해 시선을 고정하고 놀란 표정을 짓고 있는 서지민과 연구원 A.",
            "characters": [
              "서지민",
              "연구원 A"
            ],
            "based_on_beat": 6,
            "original_description": "서지민과 연구원 A가 천장과 주변을 두리번거리며 두 눈을 크게 치켜뜬 놀란 표정.",
            "validator_reason": "천장과 주변을 두리번거리는 반복 동작을 한 곳에 시선을 고정한 놀란 표정의 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 44,
            "description": "땀범벅이 된 연구원 C가 열린 문 안으로 다급하게 뛰어 들어오기 위해 뒷발로 문턱을 밀어내고 몸이 공중에 막 떠오른 찰나.",
            "characters": [
              "연구원 C"
            ],
            "based_on_beat": 6,
            "original_description": "땀범벅이 된 연구원 C가 열린 문 안으로 다급하게 뛰어 들어오는 공중의 찰나.",
            "validator_reason": "뛰어 들어오는 이동 동작을 뒷발로 문턱을 차고 공중에 떠 있는 mid-action 정지 자세로 구체화함.",
            "character_ids": []
          },
          {
            "shot_index": 45,
            "description": "연구원 C가 손가락으로 밖을 뻗어 가리킨 채 입을 크게 벌리고 소리치는 듯한 다급한 얼굴.",
            "characters": [
              "연구원 C"
            ],
            "based_on_beat": 6,
            "original_description": "연구원 C가 손가락으로 밖을 가리키며 입을 크게 벌려 소리치는 다급한 얼굴.",
            "validator_reason": "가리키며 소리치는 연속 동작을 손가락을 뻗은 채 입을 벌린 고정 자세로 수정함.",
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 89,
        "scene_heading": "교차. 제주도 해변가 + 연구실, 제주도 연구소 - D",
        "shots": [
          {
            "shot_index": 1,
            "description": "해변가로 맹렬히 돌진해 오는 낡은 특임대 상륙선들의 전면 외관.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "상륙선에서 아시아계 특임대원들과 이강준이 모래사장으로 뛰어내리는 역동적인 공중 찰나.",
            "characters": [
              "아시아계 특임대원들",
              "이강준"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "공중에서 수많은 소형 나비드론 떼가 이강준 일행을 향해 맹렬히 날아오는 구도.",
            "characters": [
              "이강준",
              "이강준 일행"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "이강준과 아시아계 특임대원들이 쏟아지는 나비드론 떼를 향해 소총을 정확히 겨눈 위압적인 구도.",
            "characters": [
              "이강준",
              "아시아계 특임대원들"
            ],
            "based_on_beat": 1,
            "original_description": "이강준과 아시아계 특임대원들이 소총을 들어 쏟아지는 나비드론 떼를 정확히 겨눈 위압적인 구도.",
            "validator_reason": "'소총을 들어 겨눈'의 연속 동작을 소총을 겨누고 있는 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "나비드론 렌즈에서 뿜어진 붉은 스캐너 빛이 이강준의 굳은 얼굴에 머문 찰나.",
            "characters": [
              "이강준"
            ],
            "based_on_beat": 1,
            "original_description": "나비드론 렌즈에서 뿜어진 붉은 스캐너 빛이 이강준의 굳은 얼굴을 훑고 지나가는 찰나.",
            "validator_reason": "'훑고 지나가는'의 시간 진행을 빛이 얼굴에 닿아 있는 한 순간의 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "이강준이 턱을 치켜든 채 무전기에 입을 바짝 대고 매섭게 쏘아붙이듯 입을 벌린 얼굴 클로즈업.",
            "characters": [
              "이강준"
            ],
            "based_on_beat": 1,
            "original_description": "이강준이 턱을 치켜든 채 무전기에 입을 바짝 대고 매섭게 쏘아붙이는 얼굴 클로즈업.",
            "validator_reason": "'대고 쏘아붙이는'의 연속 진행을 무전기에 댄 채 쏘아붙이듯 입을 벌린 고정 표정으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "연구소 통제실 대형 모니터 화면 가득 무표정한 이강준의 얼굴이 선명하게 뜬 구도.",
            "characters": [
              "이강준"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "모니터를 응시하는 지소영이 미간을 찌푸린 채 단호한 표정으로 입술을 연 찰나.",
            "characters": [
              "지소영"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "연구원 C가 다급한 표정으로 지소영의 곁을 향해 상체를 기울인 긴장된 자세.",
            "characters": [
              "연구원 C",
              "지소영"
            ],
            "based_on_beat": 1,
            "original_description": "연구원 C가 다급한 표정으로 지소영의 곁으로 상체를 기울이는 긴장된 자세.",
            "validator_reason": "'기울이는'의 진행 동작을 상체를 기울인 결과 상태의 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "지소영이 연구원 C를 향해 고개를 돌린 채 매섭게 지시하듯 입을 벌린 굳은 얼굴.",
            "characters": [
              "지소영",
              "연구원 C"
            ],
            "based_on_beat": 1,
            "original_description": "지소영이 연구원 C를 향해 고개를 확 돌려 매섭게 지시하는 굳은 얼굴.",
            "validator_reason": "'돌려 지시하는'의 연속 동작을 고개를 돌린 채 입을 벌려 지시하는 고정 표정으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "허공에 떠 있는 나비드론 기체 하단에서 작은 기관총 총구가 밖으로 불쑥 튀어나온 클로즈업.",
            "characters": [],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "이강준의 권총 총구에서 화염이 번쩍 뿜어져 나오는 맹렬한 격발의 순간.",
            "characters": [
              "이강준"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "이강준의 총탄에 맞은 나비드론이 공중에서 산산조각 나며 불꽃 파편을 튀기는 파괴적인 찰나.",
            "characters": [
              "이강준"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "수많은 나비드론의 총구에서 아시아계 특임대원들을 향해 불꽃이 맹렬히 뿜어져 나오는 구도.",
            "characters": [
              "아시아계 특임대원들"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "아시아계 특임대원들이 소총을 어깨에 밀착한 채 나비드론을 향해 맹렬히 사격하며 총구 화염을 뿜어내는 역동적인 전경.",
            "characters": [
              "아시아계 특임대원들"
            ],
            "based_on_beat": 1,
            "original_description": "아시아계 특임대원들이 소총을 어깨에 대고 나비드론을 향해 맹렬한 사격을 퍼붓는 역동적인 전경.",
            "validator_reason": "'대고 퍼붓는'의 두 동작을 어깨에 밀착한 채 총구 화염을 뿜어내는 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "통제실 유리창 파편과 함께 제어 시스템 위로 맹렬히 처박히는 불타는 나비드론의 타격 찰나.",
            "characters": [],
            "based_on_beat": 2,
            "original_description": "불타는 나비드론 하나가 통제실 유리창을 뚫고 제어 시스템 위로 맹렬히 처박히는 타격의 찰나.",
            "validator_reason": "'뚫고 처박히는'의 순차 동작을 제어 시스템에 처박히는 단일 타격 순간(mid-impact)으로 축약함.",
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "폭발하는 제어 시스템 앞에서 지소영이 두 팔을 들어 올려 얼굴을 다급히 가린 방어적인 자세.",
            "characters": [
              "지소영"
            ],
            "based_on_beat": 2,
            "original_description": "폭발하는 제어 시스템 앞에서 지소영이 두 팔을 올려 얼굴을 다급히 가리는 방어적인 자세.",
            "validator_reason": "'올려 가리는'의 동작 진행을 두 팔로 얼굴을 가린 결과 상태의 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "이현우가 지소영을 향해 목에 핏대를 세운 채 고함치는 다급한 얼굴.",
            "characters": [
              "이현우",
              "지소영"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 19,
            "description": "지소영이 두 눈을 동그랗게 뜬 채 이현우를 향해 양손을 허공에 든 강한 거부의 찰나.",
            "characters": [
              "지소영",
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "지소영이 두 눈을 동그랗게 뜨고 이현우를 향해 양손을 휘젓는 강한 거부의 찰나.",
            "validator_reason": "'뜨고 휘젓는'의 반복 동작을 눈을 뜬 채 양손을 허공에 든 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 20,
            "description": "서지민이 검은색 소형 무선 수신기를 이현우의 가슴 앞으로 불쑥 내민 손끝.",
            "characters": [
              "서지민",
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "서지민이 검은색 소형 무선 수신기를 이현우의 가슴 앞으로 불쑥 내미는 손끝.",
            "validator_reason": "'내미는'의 진행 동작을 가슴 앞으로 내민 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 21,
            "description": "이현우가 옷깃에 수신기를 단단히 쥔 채 서지민을 빤히 쳐다보는 구도.",
            "characters": [
              "이현우",
              "서지민"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 22,
            "description": "이현우가 찰리를 향해 한쪽 눈을 질끈 감아 찡긋거리는 여유로운 얼굴.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "이현우가 찰리를 향해 한쪽 눈을 질끈 감았다 뜨며 찡긋거리는 여유로운 얼굴.",
            "validator_reason": "'감았다 뜨며 찡긋거리는'의 연속 동작을 한쪽 눈을 감은 한 순간의 멈춘 표정으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 23,
            "description": "찰리가 두 눈에 푸른빛을 반짝인 채 이현우를 향해 결연하게 고개를 숙여 끄덕인 찰나.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 2,
            "original_description": "찰리가 두 눈의 푸른빛을 반짝이며 이현우를 향해 결연하게 고개를 끄덕이는 찰나.",
            "validator_reason": "'반짝이며 끄덕이는'의 진행을 고개를 숙여 끄덕인 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 24,
            "description": "어두운 연구소 계단을 맹렬히 뛰어오르며 한쪽 발이 허공에 떠 있는 이현우와 찰리의 역동적인 뒷모습.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "이현우와 찰리가 어두운 연구소 계단을 맹렬히 뛰어 올라가는 역동적인 뒷모습.",
            "validator_reason": "'뛰어 올라가는'의 이동 동작에 한 발이 허공에 뜬 상태를 부여해 mid-action으로 보존함.",
            "character_ids": []
          },
          {
            "shot_index": 25,
            "description": "거대한 안테나와 원형 스피커가 세워진 옥상 잔디밭 위, 이현우와 찰리가 막 발을 내디뎌 지면에 닿은 전신 구도.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "거대한 안테나와 원형 스피커가 세워진 옥상 잔디밭 위, 이현우와 찰리가 발을 내딛는 전신 구도.",
            "validator_reason": "'내딛는'의 진행 동작을 발이 지면에 닿은 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 26,
            "description": "이현우가 옷깃의 수신기에 입을 바짝 댄 채 눈을 부릅뜨고 맹렬히 외치는 표정.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 27,
            "description": "거센 바람을 일으키며 옥상 상공을 향해 기수를 아래로 꺾고 맹렬히 하강 중인 회색 군용 전투기의 위압적인 외관.",
            "characters": [],
            "based_on_beat": 3,
            "original_description": "회색 군용 전투기가 거센 바람을 일으키며 옥상 상공으로 맹렬히 하강하는 위압적인 외관.",
            "validator_reason": "'하강하는'의 이동 동작에 기수를 꺾은 motion direction을 부여하여 mid-action으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 28,
            "description": "전투기에서 관자놀이에 스위치가 달린 코카시안 백인 남성형 병사들이 옥상으로 맹렬히 뛰어내리는 공중의 찰나.",
            "characters": [
              "코카시안 백인 남성형 병사들"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 29,
            "description": "옥상에 착지한 코카시안 백인 남성형 병사들이 거대한 스피커를 올려다보며 미간을 찌푸린 어리둥절한 얼굴.",
            "characters": [
              "코카시안 백인 남성형 병사들"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 30,
            "description": "이현우가 찰리를 향해 손가락을 뻗은 채 입을 크게 벌린 다급한 찰나.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "이현우가 찰리를 향해 손가락을 뻗으며 입을 크게 벌린 다급한 찰나.",
            "validator_reason": "'뻗으며 벌린'의 연속 동작을 손가락을 뻗은 상태로 입을 벌린 고정 모습으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 31,
            "description": "찰리가 거대한 스피커 단자에 자신의 금속 손가락을 꽂은 채 가슴을 쫙 편 역동적인 자세.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 32,
            "description": "강력한 음파 공격을 받은 코카시안 백인 남성형 병사가 두 손으로 귀를 막은 채 눈이 뒤집힌 기괴한 얼굴 클로즈업.",
            "characters": [
              "코카시안 백인 남성형 병사"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 33,
            "description": "수많은 코카시안 백인 남성형 인공지능 병사들이 옥상 바닥을 향해 무방비 상태로 푹 고꾸라진 위태로운 구도.",
            "characters": [
              "코카시안 백인 남성형 인공지능 병사들"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 34,
            "description": "쓰러진 병사들의 화면에 시선을 고정한 채 동공을 크게 확장하고 안색이 하얗게 질린 이강준의 얼굴.",
            "characters": [
              "이강준"
            ],
            "based_on_beat": 3,
            "original_description": "쓰러진 병사들의 화면을 보며 이강준이 동공을 크게 확장한 채 안색이 하얗게 질린 얼굴.",
            "validator_reason": "'보며 확장한'의 두 동작을 시선을 고정한 결과 상태로 통합 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 35,
            "description": "이현우와 찰리가 허공에서 서로의 손바닥을 맹렬하게 마주치는 하이파이브의 순간.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 36,
            "description": "옥상 바닥 곳곳에 맹렬한 유탄이 떨어지며 거대한 화염과 파편이 치솟는 파괴적인 찰나.",
            "characters": [],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 37,
            "description": "폭발 화염을 피해 옥상 바닥 위를 구르는 도중 잔뜩 웅크린 이현우와 찰리의 날렵한 자세.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 4,
            "original_description": "이현우와 찰리가 폭발 화염을 피해 옥상 바닥 위를 구르며 몸을 숨기는 날렵한 자세.",
            "validator_reason": "'구르며 숨기는'의 이동 및 목적 동작을 구르는 도중 웅크린 mid-action 상태로 멈춤.",
            "character_ids": []
          },
          {
            "shot_index": 38,
            "description": "유빅사 로고가 찍힌 검은색 무장 헬기 편대가 기수를 숙인 채 먹구름 낀 하늘을 가르며 맹렬히 돌진 중인 웅장한 전경.",
            "characters": [],
            "based_on_beat": 4,
            "original_description": "유빅사 로고가 찍힌 검은색 무장 헬기 편대가 먹구름 낀 하늘을 가르며 돌진해 오는 웅장한 전경.",
            "validator_reason": "'가르며 돌진해 오는'의 이동 동작에 기수를 숙인 motion direction을 추가해 mid-action으로 멈춤.",
            "character_ids": []
          },
          {
            "shot_index": 39,
            "description": "무장 헬기 조종석 안, 윤성찬이 창밖 아래를 향해 비릿하게 입꼬리를 올린 비열한 얼굴.",
            "characters": [
              "윤성찬"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 40,
            "description": "연구소 통제실 대형 모니터 화면에 윤성찬의 거만한 얼굴이 뜬 클로즈업.",
            "characters": [
              "윤성찬"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 41,
            "description": "모니터 속 윤성찬이 턱을 치켜든 채 조롱하듯 혀를 내민 찰나.",
            "characters": [
              "윤성찬"
            ],
            "based_on_beat": 5,
            "original_description": "모니터 속 윤성찬이 턱을 치켜들고 조롱하듯 혀를 내미는 찰나.",
            "validator_reason": "'치켜들고 내미는'의 순차 동작을 턱을 치켜든 채 혀를 내민 결과 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 42,
            "description": "지소영이 모니터를 향해 주먹을 꽉 쥔 채 눈에 핏대를 세우고 입을 크게 벌려 고함치는 분노의 표정.",
            "characters": [
              "지소영"
            ],
            "based_on_beat": 5,
            "original_description": "지소영이 모니터를 향해 주먹을 꽉 쥔 채 눈에 핏대를 세우고 고함치는 분노의 표정.",
            "validator_reason": "'세우고 고함치는'의 진행 동작을 입을 크게 벌린 고정 표정으로 구체화함.",
            "character_ids": []
          },
          {
            "shot_index": 43,
            "description": "모니터 속 윤성찬이 두 눈을 부릅뜨고 분노로 일그러진 험악한 얼굴.",
            "characters": [
              "윤성찬"
            ],
            "based_on_beat": 5,
            "character_ids": []
          },
          {
            "shot_index": 44,
            "description": "무장 헬기 하단의 기관포에서 연구소를 향해 맹렬한 불꽃이 뿜어져 나오는 격발의 순간.",
            "characters": [],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 45,
            "description": "연구소 외벽이 산산조각 나며 거대한 콘크리트 파편들이 사방으로 튀어 오르는 파괴적인 찰나.",
            "characters": [],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 46,
            "description": "폭발한 유탄의 날카로운 파편이 옥상 바닥의 이현우 복부에 정통으로 박히며 붉은 피가 튀는 타격의 순간.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 47,
            "description": "복부를 움켜쥐고 고통스럽게 입을 벌린 채 바닥을 향해 상체가 무너져 내리는 이현우의 위태로운 구도.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 6,
            "original_description": "복부를 움켜쥔 이현우가 고통스럽게 입을 벌린 채 바닥으로 힘없이 쓰러지는 위태로운 구도.",
            "validator_reason": "'쓰러지는'의 진행 동작을 상체가 바닥을 향해 무너져 내리는 mid-action 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 48,
            "description": "거친 흙먼지를 일으키며 옥상 잔디밭 위로 육중한 스키드를 막 내리찍은 윤성찬의 헬기 찰나.",
            "characters": [
              "윤성찬"
            ],
            "based_on_beat": 6,
            "original_description": "윤성찬의 헬기가 옥상 잔디밭 위로 거친 흙먼지를 일으키며 육중하게 착지하는 찰나.",
            "validator_reason": "'착지하는'의 진행 동작을 스키드가 지면에 닿은 타격의 순간으로 멈춤.",
            "character_ids": []
          },
          {
            "shot_index": 49,
            "description": "열린 헬기 문밖으로 내린 상태로 바닥에 쓰러진 이현우를 향해 시선을 던지며 환하게 웃는 윤성찬의 비열한 얼굴.",
            "characters": [
              "윤성찬",
              "이현우"
            ],
            "based_on_beat": 6,
            "original_description": "헬기 문을 열고 내린 윤성찬이 바닥에 쓰러진 이현우를 보며 환하게 웃는 비열한 얼굴.",
            "validator_reason": "'열고 내린'과 '보며 웃는'의 연속 흐름을 헬기 밖으로 내린 후 시선을 고정한 한 순간으로 통합함.",
            "character_ids": []
          },
          {
            "shot_index": 50,
            "description": "윤성찬을 향해 고개를 돌린 채 매섭게 시선을 맞추며 두 눈의 푸른 안광을 맹렬히 빛내는 찰리의 클로즈업.",
            "characters": [
              "찰리",
              "윤성찬"
            ],
            "based_on_beat": 6,
            "original_description": "찰리가 고개를 돌려 윤성찬을 매섭게 응시하며 두 눈의 푸른 안광을 맹렬히 빛내는 클로즈업.",
            "validator_reason": "'돌려 응시하며'의 순차 동작을 고개를 돌린 고정 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 51,
            "description": "찰리의 낡은 가슴 중앙에 달린 둥근 링 부품이 서서히 회전하며 푸른빛을 발산하는 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 52,
            "description": "코카시안 백인 유빅사 용병들이 찰리를 향해 일제히 소총을 격발하며 시뻘건 총구 화염을 뿜어내는 순간.",
            "characters": [
              "코카시안 백인 유빅사 용병들",
              "찰리"
            ],
            "based_on_beat": 6,
            "original_description": "코카시안 백인 유빅사 용병들이 찰리를 향해 일제히 소총을 발사하여 시뻘건 총구 화염이 번쩍이는 순간.",
            "validator_reason": "'발사하여 번쩍이는'의 인과 관계를 총을 격발하며 화염을 뿜어내는 단일 찰나로 축약함.",
            "character_ids": []
          },
          {
            "shot_index": 53,
            "description": "찰리 주변의 허공에서 역으로 튕겨 나간 총탄들이 용병들의 가슴팍에 정통으로 꽂힌 맹렬한 타격의 찰나.",
            "characters": [
              "용병들",
              "찰리"
            ],
            "based_on_beat": 6,
            "original_description": "용병들이 쏜 총탄들이 찰리 주변의 허공에서 튕겨 나가며 용병들의 가슴팍에 도로 꽂히는 맹렬한 타격의 찰나.",
            "validator_reason": "'튕겨 나가며 꽂히는' 두 개의 사건을 가슴에 꽂히는 타격의 순간(mid-impact)으로 합침.",
            "character_ids": []
          },
          {
            "shot_index": 54,
            "description": "동공을 크게 확장한 채 입을 반쯤 벌린 윤성찬의 얼어붙은 표정.",
            "characters": [
              "윤성찬"
            ],
            "based_on_beat": 6,
            "original_description": "윤성찬이 동공을 크게 확장하며 입을 반쯤 벌린 얼어붙은 표정.",
            "validator_reason": "'확장하며 벌린'의 동시 진행을 확장한 고정 표정으로 멈춤.",
            "character_ids": []
          },
          {
            "shot_index": 55,
            "description": "찰리의 가슴 링이 맹렬한 속도로 회전하며 눈부신 푸른 소용돌이를 일으킨 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 56,
            "description": "통제실 모니터 화면의 에너지 그래프가 붉은색 한계치를 뚫고 수직으로 맹렬히 솟구친 이미지.",
            "characters": [],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 57,
            "description": "지소영이 모니터를 보며 두 손으로 입을 꽉 틀어막은 충격받은 얼굴.",
            "characters": [
              "지소영"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 58,
            "description": "찰리의 가슴 링에서 밤하늘을 찢을 듯한 거대한 새하얀 광선 기둥이 수직으로 치솟는 압도적인 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 6,
            "character_ids": []
          },
          {
            "shot_index": 59,
            "description": "새하얀 광선에 휩싸인 찰리가 바닥에 쓰러진 이현우를 빤히 내려다보는 구도.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 7,
            "character_ids": []
          },
          {
            "shot_index": 60,
            "description": "찰리와 시선을 맞춘 채 눈물 고인 눈으로 입술을 파르르 떠는 이현우의 얼굴 클로즈업.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 7,
            "original_description": "이현우가 찰리와 시선을 마주치며 눈물 고인 눈으로 입술을 파르르 떠는 얼굴 클로즈업.",
            "validator_reason": "'마주치며 떠는'의 진행을 시선을 고정한 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 61,
            "description": "찰리의 회상 속, 쓰레기 더미 아래서 낡은 금속 고릴라 로봇 찰리의 굵은 손가락 하나가 위로 살짝 들린 채 멈춘 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 7,
            "original_description": "찰리의 회상 속, 쓰레기 더미 아래서 낡은 금속 고릴라 로봇 찰리의 굵은 손가락 하나가 위로 까딱 튕겨 오르는 클로즈업.",
            "validator_reason": "'튕겨 오르는'의 움직이는 상태를 손가락이 들린 고정 상태로 멈춤.",
            "character_ids": []
          },
          {
            "shot_index": 62,
            "description": "찰리의 회상 속, 파티장에서 앰버의 한쪽 손을 꽉 쥔 채 한 발로 바닥을 딛고 빙글 도는 원심력이 담긴 찰리의 역동적인 찰나.",
            "characters": [
              "찰리",
              "앰버"
            ],
            "based_on_beat": 7,
            "original_description": "찰리의 회상 속, 파티장에서 찰리가 앰버의 한쪽 손을 꽉 쥔 채 허공에서 빙글 도는 역동적인 찰나.",
            "validator_reason": "'빙글 도는' 동작을 멈추기 위해 지면에 닿은 발과 원심력을 묘사하여 mid-action으로 보존함.",
            "character_ids": []
          },
          {
            "shot_index": 63,
            "description": "찰리의 회상 속, 낡은 도서관 벽면에 파란색 크레파스를 대고 선을 긋는 도중인 찰리의 뒷모습.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 7,
            "original_description": "찰리의 회상 속, 낡은 도서관 벽면에 파란색 크레파스로 선을 긋는 찰리의 뒷모습.",
            "validator_reason": "'선을 긋는' 진행 동작을 벽에 댄 채 멈춘 한 순간으로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 64,
            "description": "찰리의 회상 속, 비 내리는 낡은 캠핑카 천장 아래서 찰리가 앰버 옆에 앉아 푸른빛을 내는 거대한 자태.",
            "characters": [
              "찰리",
              "앰버"
            ],
            "based_on_beat": 7,
            "character_ids": []
          },
          {
            "shot_index": 65,
            "description": "현재의 옥상, 찰리가 입가 금속 부품을 달싹인 채 이현우를 향해 애틋한 표정을 짓고 있는 찰나.",
            "characters": [
              "찰리",
              "이현우"
            ],
            "based_on_beat": 7,
            "original_description": "현재의 옥상, 찰리가 입가 금속 부품을 달싹이며 이현우를 향해 애틋한 표정을 짓는 찰나.",
            "validator_reason": "'달싹이며 짓는'의 연속 동작을 부품을 달싹인 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 66,
            "description": "이현우가 두 주먹을 꽉 쥔 채 하늘을 향해 목에 핏대를 세우고 입을 크게 벌려 절규하는 광기 어린 얼굴.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 7,
            "original_description": "이현우가 두 주먹을 꽉 쥔 채 하늘을 향해 목에 핏대를 세우고 절규하는 광기 어린 얼굴.",
            "validator_reason": "'세우고 절규하는'의 흐름을 입을 벌린 고정 표정으로 멈춤.",
            "character_ids": []
          },
          {
            "shot_index": 67,
            "description": "새하얀 섬광이 옥상 전체를 눈부시게 집어삼켜 화면을 하얗게 뒤덮은 맹렬한 순간.",
            "characters": [],
            "based_on_beat": 7,
            "original_description": "새하얀 섬광이 옥상 전체를 눈부시게 집어삼키며 화면이 완전히 타들어 가는 맹렬한 순간.",
            "validator_reason": "'집어삼키며 타들어 가는'의 인과 흐름을 화면이 뒤덮인 단일 타격 순간으로 통합함.",
            "character_ids": []
          },
          {
            "shot_index": 68,
            "description": "섬광이 걷힌 후, 옥상 바닥에 검게 그을리고 산산조각 난 찰리의 흉측한 몸통 잔해만 덩그러니 남은 전경.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 8,
            "character_ids": []
          },
          {
            "shot_index": 69,
            "description": "찰리의 잔해를 향해 비틀거리듯 한쪽 발을 내디딘 이현우의 위태로운 전신.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 8,
            "original_description": "이현우가 찰리의 잔해를 향해 비틀거리며 다가가는 위태로운 전신.",
            "validator_reason": "'비틀거리며 다가가는'의 이동 동작을 발을 내디딘 mid-action으로 멈춤.",
            "character_ids": []
          },
          {
            "shot_index": 70,
            "description": "잔해 속에 남은 찰리의 두 눈에서 희미한 푸른빛이 켜진 채 머문 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 8,
            "original_description": "잔해 속에 남은 찰리의 두 눈에서 희미한 푸른빛이 깜빡거리는 클로즈업.",
            "validator_reason": "'깜빡거리는'의 되풀이 위상을 빛이 켜진 한 고정 위상으로 포착함.",
            "character_ids": []
          },
          {
            "shot_index": 71,
            "description": "이현우가 찰리의 잔해 앞에 무릎을 꿇은 채 눈물범벅인 얼굴로 고개를 한쪽으로 세차게 꺾은 찰나.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 8,
            "original_description": "이현우가 찰리의 잔해 앞에 무릎을 꿇은 채 눈물범벅인 얼굴로 세차게 고개를 젓는 찰나.",
            "validator_reason": "'고개를 젓는'의 반복 동작을 고개가 꺾인 한 찰나의 정지 자세로 멈춤.",
            "character_ids": []
          },
          {
            "shot_index": 72,
            "description": "찰리의 눈가에서 푸른 안광이 완전히 꺼져버린 적막한 얼굴.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 8,
            "original_description": "찰리의 눈가에서 희미하게 빛나던 푸른 안광이 팟 하고 완전히 꺼져버린 적막한 얼굴.",
            "validator_reason": "'빛나던 안광이 꺼져버린'의 완료 전후 변화를 꺼진 완료 상태 하나만 남겨 멈춤.",
            "character_ids": []
          },
          {
            "shot_index": 73,
            "description": "이현우가 찰리의 차가운 금속 잔해 위로 상체를 엎드린 채 오열하는 슬픈 뒷모습.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 8,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 90,
        "scene_heading": "제주도 어느 연구소 실내 - N",
        "shots": [
          {
            "shot_index": 1,
            "description": "어두운 연구소 안, 대형 모니터 화면 가득 세계 각국의 도심과 그 안에 선 찰리의 모습이 나타난 전경.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "모니터 아래 제단 모양의 테이블 위에 찰리의 부서진 금속 부품들이 어지럽게 널브러진 구도.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "상처투성이인 이현우가 테이블 앞 의자에 앉아 부서진 금속 부품들을 하염없이 내려다보는 쓸쓸한 뒷모습.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "이현우의 등 뒤에 선 지소영이 한 손으로 그의 어깨를 부드럽게 감싸 쥔 자세.",
            "characters": [
              "지소영",
              "이현우"
            ],
            "based_on_beat": 1,
            "original_description": "지소영이 이현우의 등 뒤로 다가와 한 손으로 그의 어깨를 부드럽게 감싸 쥐는 찰나.",
            "validator_reason": "'다가와'라는 연속 동작을 제거하고 뒤에 서서 어깨를 감싸 쥔 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "지소영이 작은 금속 칩을 이현우의 가슴 앞으로 조심스레 내미는 손끝 클로즈업.",
            "characters": [
              "지소영",
              "이현우"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "이현우가 지소영이 내민 칩을 두 손으로 받아 쥔 채 고개를 들어 올려다보는 시선.",
            "characters": [
              "이현우",
              "지소영"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "지소영이 이현우 옆의 의자에 앉아 옅은 미소를 띠며 입술을 여는 얼굴.",
            "characters": [
              "지소영",
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "이현우가 손에 쥔 칩을 빤히 내려다보며 허탈한 표정으로 얼어붙은 구도.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "지소영의 검지손가락이 책상 위의 작은 버튼을 꾹 누르는 손끝 클로즈업.",
            "characters": [
              "지소영"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "대형 모니터 화면이 푸른 제주도 바다 풍경으로 눈부시게 바뀐 찰나.",
            "characters": [],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 11,
            "description": "연구소 허공에 푸른빛으로 찰리의 거대한 홀로그램 형상이 떠오른 경이로운 전경.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "character_ids": []
          },
          {
            "shot_index": 12,
            "description": "홀로그램 찰리를 향해 양팔을 벌린 채 한쪽 발이 허공에 떠 있는 질주 중인 mid-stride 자세의 앰버와 라울 홀로그램 형상.",
            "characters": [
              "찰리",
              "앰버",
              "라울"
            ],
            "based_on_beat": 4,
            "original_description": "홀로그램 찰리를 향해 앰버와 라울의 홀로그램 형상이 양팔을 벌린 채 전력 질주하는 역동적인 찰나.",
            "validator_reason": "전력 질주하는 이동 동작을 방향성이 보존된 mid-stride 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 13,
            "description": "자리에서 일어난 이현우가 허공에 뜬 홀로그램 찰리를 향해 성큼 한 발을 내디딘 구도.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 4,
            "original_description": "의자에 앉아 있던 이현우가 상체를 벌떡 일으키며 허공에 뜬 홀로그램 찰리를 향해 성큼 다가서는 구도.",
            "validator_reason": "'상체를 일으키며 다가서는' 두 연속 동작을 일어선 채 한 발을 내디딘 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 14,
            "description": "이현우가 눈물 고인 눈으로 입꼬리를 올리며 환하게 미소 짓는 얼굴 클로즈업.",
            "characters": [
              "이현우"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 15,
            "description": "이현우가 홀로그램 찰리의 거대한 손을 향해 자신의 손을 조심스레 뻗는 손끝.",
            "characters": [
              "이현우",
              "찰리"
            ],
            "based_on_beat": 4,
            "character_ids": []
          },
          {
            "shot_index": 16,
            "description": "홀로그램 찰리가 지소영, 이현우, 홀로그램 앰버 쪽을 응시한 채 입가 금속 부품을 아래로 찌그러뜨린 감격한 표정.",
            "characters": [
              "찰리",
              "지소영",
              "이현우",
              "앰버"
            ],
            "based_on_beat": 4,
            "original_description": "홀로그램 찰리가 지소영, 이현우, 홀로그램 앰버를 번갈아 쳐다보며 입가 금속 부품을 아래로 찌그러뜨린 감격한 표정.",
            "validator_reason": "'번갈아 쳐다보며'라는 시간 진행이 있는 시선 이동을 한 방향을 응시하는 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 17,
            "description": "허공에 떠오른 금속 부품들이 서로 반쯤 맞물려 있는 경이로운 찰나.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 5,
            "original_description": "수술대 위에 널브러져 있던 금속 부품들이 허공으로 떠오르며 서로 맞물려 조립되는 경이로운 찰나.",
            "validator_reason": "'떠오르며 맞물려 조립되는' 연속적 진행 상태를 반쯤 맞물려 고정된 한 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 18,
            "description": "수술대 위에 온전한 몸으로 누운 찰리가 두 눈을 지그시 감은 평온한 얼굴 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 5,
            "character_ids": []
          }
        ]
      },
      {
        "scene_index": 91,
        "scene_heading": "에필로그 / 어느 바다 섬바위 – D 자막: 한 달 후",
        "shots": [
          {
            "shot_index": 1,
            "description": "에메랄드빛 투명한 바닷물 아래로 작은 물고기들이 꼬리지느러미를 꺾은 추진 자세로 고정된 고요한 수면 클로즈업.",
            "characters": [],
            "based_on_beat": 1,
            "original_description": "에메랄드빛 투명한 바닷물 아래로 작은 물고기들이 유유히 헤엄치는 고요한 수면 클로즈업.",
            "validator_reason": "'유유히 헤엄치는' 연속 수영 동작을 꼬리지느러미를 꺾어 추진 방향을 보존한 mid-action 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 2,
            "description": "찰리의 거대한 금속 주먹이 수면을 때려 하얀 물보라가 솟구친 타격의 순간.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 1,
            "original_description": "찰리의 거대한 금속 주먹이 수면 위를 맹렬히 내리치며 하얀 물보라를 일으키는 타격의 순간.",
            "validator_reason": "'내리치며 일으키는' 동시 진행 동작을 주먹이 수면을 때려 물보라가 솟구친 결과 상태의 한 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 3,
            "description": "튀어 오르는 물보라 속에서 앰버와 라울이 양손으로 작은 그물을 쥔 채 활짝 웃는 역동적인 구도.",
            "characters": [
              "앰버",
              "라울"
            ],
            "based_on_beat": 1,
            "character_ids": []
          },
          {
            "shot_index": 4,
            "description": "해변가 낡은 나무 식탁 위로 이현우와 서지민이 양손에 쥔 접시 바닥이 식탁에 막 닿은 평화로운 전경.",
            "characters": [
              "이현우",
              "서지민"
            ],
            "based_on_beat": 1,
            "original_description": "해변가 낡은 나무 식탁 위로 이현우와 서지민이 음식이 담긴 접시를 나란히 내려놓는 평화로운 전경.",
            "validator_reason": "'내려놓는' 동작을 접시 바닥이 식탁에 막 닿은 순간의 고정된 자세로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 5,
            "description": "물속에 선 찰리의 거대한 금속 어깨 위에 아기 새의 두 발톱이 막 닿아 날개가 위로 펼쳐진 찰나.",
            "characters": [
              "찰리",
              "아기 새"
            ],
            "based_on_beat": 1,
            "original_description": "허공에서 날아온 B-200이 키운 아기 새가 물속에 선 찰리의 거대한 금속 어깨 위로 사뿐히 내려앉은 찰나.",
            "validator_reason": "'날아온', '내려앉은' 순차적 시간 흐름을 발톱이 닿아 날개가 펼쳐진 단일 정지 찰나로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 6,
            "description": "찰리가 물속 깊이 시선을 꽂은 채 미간을 찌푸린 집중한 얼굴.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "character_ids": []
          },
          {
            "shot_index": 7,
            "description": "물 밖으로 텅 빈 두 손을 들어 올린 채 입가 금속 부품을 아래로 푹 떨군 시무룩한 찰리의 자태.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 2,
            "original_description": "찰리가 물 밖으로 텅 빈 두 손을 들어 올리며 입가 금속 부품을 아래로 푹 떨군 시무룩한 자태.",
            "validator_reason": "'들어 올리며 떨군' 동시 진행 동작을 '들어 올린 채 떨군' 고정 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 8,
            "description": "두 눈의 푸른 안광을 번쩍 뿜어낸 채 수면을 뚫어지게 응시하는 찰리의 날카로운 고정 자세.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "찰리가 다시 수면을 뚫어지게 응시하며 두 눈의 푸른 안광을 번쩍 빛내는 날카로운 찰나.",
            "validator_reason": "'응시하며 빛내는' 진행 동작을 안광을 뿜어낸 채 응시하는 결과 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 9,
            "description": "찰리의 낡은 가슴 중앙에 달린 둥근 링 부품이 서서히 회전하는 방향이 읽히게 한 위치에서 멈춘 클로즈업.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "찰리의 낡은 가슴 중앙에 달린 둥근 링 부품이 서서히 회전하며 웅웅거리는 진동을 시작한 클로즈업.",
            "validator_reason": "'서서히 회전하며'라는 연속적인 변화를 회전 방향이 읽히도록 멈춘 정지 상태로 수정함.",
            "character_ids": []
          },
          {
            "shot_index": 10,
            "description": "눈에 보이지 않을 만큼 맹렬히 도는 방향이 읽히게 한 위치에서 멈춘 찰리의 가슴 링이 눈부신 빛을 뿜어내는 긴장된 순간.",
            "characters": [
              "찰리"
            ],
            "based_on_beat": 3,
            "original_description": "찰리의 가슴 링이 눈에 보이지 않을 만큼 맹렬한 속도로 돌아가며 눈부신 빛을 뿜어내는 긴장된 순간.",
            "validator_reason": "'돌아가며 뿜어내는' 변화 진행 과정을 맹렬히 도는 방향이 읽히게 멈춰 고정된 순간으로 수정함.",
            "character_ids": []
          }
        ]
      }
    ],
    "total_shots": 1718,
    "changed_shots": 818
  },
  "step_id": "shot_validator",
  "run_id": "fed7395b-e304-436d-9cb7-78ac0e53dacd",
  "resolved_model": "gemini-pro",
  "updated_at": "2026-09-17T11:23:18.382343+00:00",
  "schema_version": 1,
  "project_config_snapshot": {}
}