{
  "factory_id": "A01",
  "design_revision": 2,
  "design_story": "강온은 프레스의 긴 이송축과 용접의 넓은 셀 배열이 직각으로 만나는 구조부품 공장이다. 남서 원료 도크에서 풀린 코일은 높은 프레스동을 동쪽으로 통과한다. 북동쪽 용접동은 여섯 로봇 지그를 두 줄로 마주 놓고, 최종검사·순서 출하동이 그 아래로 돌출한다. 코일 보관과 금형 수리는 프레스 시작점, 치수 계측은 출하 직전에 배치한다. 외관에서는 톱니 지붕 프레스동과 붉은 용접동의 서로 다른 높이가 보이며 완제품 대차가 대량 상자 랙 대신 출하 전면에 줄을 선다. 두 코일 레벨러와 블랭킹 프레스는 각각 남북 방향으로 정렬하여 강판을 연속 공급한다. 블랭킹 이후 분리된 판재부터 형성 프레스와 용접 셀 사이의 전용 운반차를 쓴다.",
  "site": {
    "width": 150,
    "depth": 109
  },
  "buildings": [
    {
      "id": "press",
      "name": "코일→다단 프레스 고천장동",
      "role": "production",
      "polygon": [
        [
          14,
          46
        ],
        [
          87.5,
          46
        ],
        [
          87.5,
          67.0
        ],
        [
          14,
          67.0
        ]
      ],
      "height": 14,
      "roof": {
        "type": "sawtooth",
        "axis": "x",
        "pitch": 0.16
      },
      "facade": {
        "color": [
          0.64,
          0.69,
          0.7
        ],
        "accent": [
          0.15,
          0.29,
          0.38
        ],
        "material": "metal",
        "window_band_height": 0.85
      }
    },
    {
      "id": "weld",
      "name": "로봇 적재·너트·스폿 용접동",
      "role": "production",
      "polygon": [
        [
          93.5,
          46
        ],
        [
          134.0,
          46
        ],
        [
          134.0,
          81.2
        ],
        [
          93.5,
          81.2
        ]
      ],
      "height": 10,
      "roof": {
        "type": "barrel",
        "axis": "x",
        "pitch": 0.16
      },
      "facade": {
        "color": [
          0.54,
          0.32,
          0.26
        ],
        "accent": [
          0.15,
          0.29,
          0.38
        ],
        "material": "metal",
        "window_band_height": 0.85
      }
    },
    {
      "id": "inspect",
      "name": "치수검사·순서 대차 출하동",
      "role": "production",
      "polygon": [
        [
          93.5,
          86.2
        ],
        [
          138.0,
          86.2
        ],
        [
          138.0,
          94.2
        ],
        [
          93.5,
          94.2
        ]
      ],
      "height": 7,
      "roof": {
        "type": "shed",
        "axis": "x",
        "pitch": 0.16
      },
      "facade": {
        "color": [
          0.7,
          0.73,
          0.72
        ],
        "accent": [
          0.15,
          0.29,
          0.38
        ],
        "material": "metal",
        "window_band_height": 0.85
      }
    },
    {
      "id": "coil",
      "name": "코일·블랭크 입고 창고",
      "role": "warehouse",
      "polygon": [
        [
          14,
          15
        ],
        [
          48,
          15
        ],
        [
          48,
          40
        ],
        [
          14,
          40
        ]
      ],
      "height": 7.5,
      "roof": {
        "type": "gable",
        "axis": "y",
        "pitch": 0.15
      },
      "facade": {
        "color": [
          0.59,
          0.65,
          0.64
        ],
        "accent": [
          0.17,
          0.32,
          0.34
        ],
        "material": "metal",
        "window_band_height": 0.85
      }
    },
    {
      "id": "support",
      "name": "금형·치수·교대 지원동",
      "role": "support",
      "polygon": [
        [
          54,
          15
        ],
        [
          96.0,
          15
        ],
        [
          96.0,
          40.0
        ],
        [
          54,
          40.0
        ]
      ],
      "height": 5.5,
      "roof": {
        "type": "flat",
        "axis": "x",
        "pitch": 0.1
      },
      "facade": {
        "color": [
          0.65,
          0.45,
          0.34
        ],
        "accent": [
          0.2,
          0.28,
          0.3
        ],
        "material": "brick",
        "window_band_height": 0.85
      }
    },
    {
      "id": "dispatch-stock",
      "name": "차체 대차 납품 버퍼",
      "role": "warehouse",
      "polygon": [
        [
          102.0,
          14
        ],
        [
          138.0,
          14
        ],
        [
          138.0,
          40
        ],
        [
          102.0,
          40
        ]
      ],
      "height": 7.5,
      "roof": {
        "type": "gable",
        "axis": "y",
        "pitch": 0.15
      },
      "facade": {
        "color": [
          0.62,
          0.67,
          0.64
        ],
        "accent": [
          0.22,
          0.32,
          0.32
        ],
        "material": "metal",
        "window_band_height": 0.85
      }
    }
  ],
  "zones": [
    {
      "id": "press",
      "name": "코일→다단 프레스 고천장동",
      "role": "process",
      "building_id": "press",
      "x": 14,
      "y": 46,
      "width": 73.5,
      "depth": 21.0,
      "stage_ids": [
        "S01",
        "S02",
        "S03"
      ],
      "fixtures": [
        {
          "id": "press-bin_rack-01",
          "type": "bin_rack",
          "x": 44.75,
          "y": 47.2,
          "width": 2,
          "depth": 1,
          "height": 2.5,
          "count": 1,
          "label": "프레스 금형 클램프·이송 흡착컵 1"
        },
        {
          "id": "press-bin_rack-02",
          "type": "bin_rack",
          "x": 47.4,
          "y": 47.2,
          "width": 2,
          "depth": 1,
          "height": 2.5,
          "count": 1,
          "label": "프레스 금형 클램프·이송 흡착컵 2"
        },
        {
          "id": "press-bin_rack-03",
          "type": "bin_rack",
          "x": 50.05,
          "y": 47.2,
          "width": 2,
          "depth": 1,
          "height": 2.5,
          "count": 1,
          "label": "프레스 금형 클램프·이송 흡착컵 3"
        },
        {
          "id": "press-bin_rack-04",
          "type": "bin_rack",
          "x": 52.7,
          "y": 47.2,
          "width": 2,
          "depth": 1,
          "height": 2.5,
          "count": 1,
          "label": "프레스 금형 클램프·이송 흡착컵 4"
        },
        {
          "id": "press-bin_rack-05",
          "type": "bin_rack",
          "x": 55.35,
          "y": 47.2,
          "width": 2,
          "depth": 1,
          "height": 2.5,
          "count": 1,
          "label": "프레스 금형 클램프·이송 흡착컵 5"
        },
        {
          "id": "press-workbench-01",
          "type": "workbench",
          "x": 15.6,
          "y": 47.0,
          "width": 2,
          "depth": 0.8,
          "height": 1,
          "count": 1,
          "label": "금형 셋업 1"
        },
        {
          "id": "press-workbench-02",
          "type": "workbench",
          "x": 16.0,
          "y": 48.4,
          "width": 2,
          "depth": 0.8,
          "height": 1,
          "count": 1,
          "label": "금형 셋업 2"
        },
        {
          "id": "press-workbench-03",
          "type": "workbench",
          "x": 26.5,
          "y": 46.9,
          "width": 2,
          "depth": 0.8,
          "height": 1,
          "count": 1,
          "label": "금형 셋업 3"
        },
        {
          "id": "press-worktable-01",
          "type": "worktable",
          "x": 58.275,
          "y": 62.525,
          "width": 1.25,
          "depth": 0.65,
          "height": 1.0,
          "count": 1,
          "label": "프레스 셀별 이송 흡착컵 점검대 1"
        },
        {
          "id": "press-worktable-02",
          "type": "worktable",
          "x": 58.275,
          "y": 60.575,
          "width": 1.25,
          "depth": 0.65,
          "height": 1.0,
          "count": 1,
          "label": "프레스 셀별 이송 흡착컵 점검대 2"
        },
        {
          "id": "press-worktable-03",
          "type": "worktable",
          "x": 43.925,
          "y": 56.675,
          "width": 1.25,
          "depth": 0.65,
          "height": 1.0,
          "count": 1,
          "label": "프레스 셀별 이송 흡착컵 점검대 3"
        },
        {
          "id": "press-worktable-04",
          "type": "worktable",
          "x": 72.625,
          "y": 56.675,
          "width": 1.25,
          "depth": 0.65,
          "height": 1.0,
          "count": 1,
          "label": "프레스 셀별 이송 흡착컵 점검대 4"
        }
      ]
    },
    {
      "id": "weld",
      "name": "로봇 적재·너트·스폿 용접동",
      "role": "process",
      "building_id": "weld",
      "x": 93.5,
      "y": 46,
      "width": 40.5,
      "depth": 35.2,
      "stage_ids": [
        "S04",
        "S05",
        "S06"
      ],
      "fixtures": [
        {
          "id": "weld-worktable-01",
          "type": "worktable",
          "x": 95.1,
          "y": 47.0,
          "width": 2,
          "depth": 0.8,
          "height": 1,
          "count": 1,
          "label": "용접 지그 마스터·팁 교체 1"
        },
        {
          "id": "weld-worktable-02",
          "type": "worktable",
          "x": 100.7,
          "y": 47.0,
          "width": 2,
          "depth": 0.8,
          "height": 1,
          "count": 1,
          "label": "용접 지그 마스터·팁 교체 2"
        },
        {
          "id": "weld-worktable-03",
          "type": "worktable",
          "x": 103.5,
          "y": 47.0,
          "width": 2,
          "depth": 0.8,
          "height": 1,
          "count": 1,
          "label": "용접 지그 마스터·팁 교체 3"
        },
        {
          "id": "weld-worktable-04",
          "type": "worktable",
          "x": 106.3,
          "y": 47.0,
          "width": 2,
          "depth": 0.8,
          "height": 1,
          "count": 1,
          "label": "용접 지그 마스터·팁 교체 4"
        },
        {
          "id": "weld-product_bins-01",
          "type": "product_bins",
          "x": 108.7,
          "y": 47.0,
          "width": 1.2,
          "depth": 0.8,
          "height": 1,
          "count": 1,
          "label": "용접 너트·소형 브래킷 1"
        },
        {
          "id": "weld-product_bins-02",
          "type": "product_bins",
          "x": 110.7,
          "y": 47.0,
          "width": 1.2,
          "depth": 0.8,
          "height": 1,
          "count": 1,
          "label": "용접 너트·소형 브래킷 2"
        },
        {
          "id": "weld-product_bins-03",
          "type": "product_bins",
          "x": 116.7,
          "y": 47.0,
          "width": 1.2,
          "depth": 0.8,
          "height": 1,
          "count": 1,
          "label": "용접 너트·소형 브래킷 3"
        },
        {
          "id": "weld-product_bins-04",
          "type": "product_bins",
          "x": 118.7,
          "y": 47.0,
          "width": 1.2,
          "depth": 0.8,
          "height": 1,
          "count": 1,
          "label": "용접 너트·소형 브래킷 4"
        },
        {
          "id": "weld-product_bins-05",
          "type": "product_bins",
          "x": 120.7,
          "y": 47.0,
          "width": 1.2,
          "depth": 0.8,
          "height": 1,
          "count": 1,
          "label": "용접 너트·소형 브래킷 5"
        },
        {
          "id": "weld-product_bins-06",
          "type": "product_bins",
          "x": 122.7,
          "y": 47.0,
          "width": 1.2,
          "depth": 0.8,
          "height": 1,
          "count": 1,
          "label": "용접 너트·소형 브래킷 6"
        },
        {
          "id": "weld-product_bins-07",
          "type": "product_bins",
          "x": 121.375,
          "y": 76.175,
          "width": 1.25,
          "depth": 0.65,
          "height": 1.0,
          "count": 1,
          "label": "용접 셀별 브래킷 공급대차 1"
        },
        {
          "id": "weld-product_bins-08",
          "type": "product_bins",
          "x": 100.875,
          "y": 80.075,
          "width": 1.25,
          "depth": 0.65,
          "height": 1.0,
          "count": 1,
          "label": "용접 셀별 브래킷 공급대차 2"
        },
        {
          "id": "weld-product_bins-09",
          "type": "product_bins",
          "x": 121.375,
          "y": 68.375,
          "width": 1.25,
          "depth": 0.65,
          "height": 1.0,
          "count": 1,
          "label": "용접 셀별 브래킷 공급대차 3"
        },
        {
          "id": "weld-product_bins-10",
          "type": "product_bins",
          "x": 113.175,
          "y": 76.175,
          "width": 1.25,
          "depth": 0.65,
          "height": 1.0,
          "count": 1,
          "label": "용접 셀별 브래킷 공급대차 4"
        },
        {
          "id": "weld-product_bins-11",
          "type": "product_bins",
          "x": 113.175,
          "y": 68.375,
          "width": 1.25,
          "depth": 0.65,
          "height": 1.0,
          "count": 1,
          "label": "용접 셀별 브래킷 공급대차 5"
        }
      ]
    },
    {
      "id": "inspect",
      "name": "치수검사·순서 대차 출하동",
      "role": "process",
      "building_id": "inspect",
      "x": 93.5,
      "y": 86.2,
      "width": 44.5,
      "depth": 8.0,
      "stage_ids": [
        "S07",
        "S08"
      ],
      "fixtures": [
        {
          "id": "inspect-worktable-01",
          "type": "worktable",
          "x": 95.0,
          "y": 87.2,
          "width": 1.8,
          "depth": 0.8,
          "height": 1,
          "count": 1,
          "label": "차종별 마스터 게이지 1"
        },
        {
          "id": "inspect-worktable-02",
          "type": "worktable",
          "x": 100.2,
          "y": 87.2,
          "width": 1.8,
          "depth": 0.8,
          "height": 1,
          "count": 1,
          "label": "차종별 마스터 게이지 2"
        },
        {
          "id": "inspect-dock_staging-01",
          "type": "dock_staging",
          "x": 119.2,
          "y": 87.55,
          "width": 2.2,
          "depth": 1.5,
          "height": 1.4,
          "count": 1,
          "label": "순서 출하 전용 대차 1"
        },
        {
          "id": "inspect-dock_staging-02",
          "type": "dock_staging",
          "x": 119.2,
          "y": 90.35,
          "width": 2.2,
          "depth": 1.5,
          "height": 1.4,
          "count": 1,
          "label": "순서 출하 전용 대차 2"
        }
      ]
    },
    {
      "id": "coil",
      "name": "코일·블랭크 입고 창고",
      "role": "warehouse",
      "building_id": "coil",
      "x": 14,
      "y": 15,
      "width": 34,
      "depth": 25,
      "stage_ids": [],
      "fixtures": [
        {
          "id": "coil-floor_pallets-01",
          "type": "floor_pallets",
          "x": 15.7,
          "y": 16.35,
          "width": 2.2,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 강판 코일 크래들 1"
        },
        {
          "id": "coil-floor_pallets-02",
          "type": "floor_pallets",
          "x": 18.7,
          "y": 16.35,
          "width": 2.2,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 강판 코일 크래들 2"
        },
        {
          "id": "coil-floor_pallets-03",
          "type": "floor_pallets",
          "x": 21.7,
          "y": 16.35,
          "width": 2.2,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 강판 코일 크래들 3"
        },
        {
          "id": "coil-floor_pallets-04",
          "type": "floor_pallets",
          "x": 24.7,
          "y": 16.35,
          "width": 2.2,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 강판 코일 크래들 4"
        },
        {
          "id": "coil-floor_pallets-05",
          "type": "floor_pallets",
          "x": 27.7,
          "y": 16.35,
          "width": 2.2,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 강판 코일 크래들 5"
        },
        {
          "id": "coil-floor_pallets-06",
          "type": "floor_pallets",
          "x": 30.7,
          "y": 16.35,
          "width": 2.2,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 강판 코일 크래들 6"
        },
        {
          "id": "coil-floor_pallets-07",
          "type": "floor_pallets",
          "x": 33.7,
          "y": 16.35,
          "width": 2.2,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 강판 코일 크래들 7"
        },
        {
          "id": "coil-floor_pallets-08",
          "type": "floor_pallets",
          "x": 36.7,
          "y": 16.35,
          "width": 2.2,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 강판 코일 크래들 8"
        },
        {
          "id": "coil-floor_pallets-09",
          "type": "floor_pallets",
          "x": 39.7,
          "y": 16.35,
          "width": 2.2,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 강판 코일 크래들 9"
        },
        {
          "id": "coil-floor_pallets-10",
          "type": "floor_pallets",
          "x": 42.7,
          "y": 16.35,
          "width": 2.2,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 강판 코일 크래들 10"
        },
        {
          "id": "coil-floor_pallets-11",
          "type": "floor_pallets",
          "x": 45.7,
          "y": 16.35,
          "width": 2.2,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 강판 코일 크래들 11"
        },
        {
          "id": "coil-floor_pallets-12",
          "type": "floor_pallets",
          "x": 15.7,
          "y": 19.15,
          "width": 2.2,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 강판 코일 크래들 12"
        },
        {
          "id": "coil-floor_pallets-13",
          "type": "floor_pallets",
          "x": 18.7,
          "y": 19.15,
          "width": 2.2,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 강판 코일 크래들 13"
        },
        {
          "id": "coil-floor_pallets-14",
          "type": "floor_pallets",
          "x": 21.7,
          "y": 19.15,
          "width": 2.2,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 강판 코일 크래들 14"
        },
        {
          "id": "coil-floor_pallets-15",
          "type": "floor_pallets",
          "x": 24.7,
          "y": 19.15,
          "width": 2.2,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 강판 코일 크래들 15"
        },
        {
          "id": "coil-floor_pallets-16",
          "type": "floor_pallets",
          "x": 27.7,
          "y": 19.15,
          "width": 2.2,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 강판 코일 크래들 16"
        },
        {
          "id": "coil-floor_pallets-17",
          "type": "floor_pallets",
          "x": 30.7,
          "y": 19.15,
          "width": 2.2,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 강판 코일 크래들 17"
        },
        {
          "id": "coil-floor_pallets-18",
          "type": "floor_pallets",
          "x": 33.7,
          "y": 19.15,
          "width": 2.2,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 강판 코일 크래들 18"
        },
        {
          "id": "coil-floor_pallets-19",
          "type": "floor_pallets",
          "x": 36.7,
          "y": 19.15,
          "width": 2.2,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 강판 코일 크래들 19"
        },
        {
          "id": "coil-floor_pallets-20",
          "type": "floor_pallets",
          "x": 39.7,
          "y": 19.15,
          "width": 2.2,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 강판 코일 크래들 20"
        },
        {
          "id": "coil-bin_rack-01",
          "type": "bin_rack",
          "x": 44.75,
          "y": 19.9,
          "width": 2,
          "depth": 1,
          "height": 2.5,
          "count": 1,
          "label": "블랭크 반환 팔레트 1"
        },
        {
          "id": "coil-bin_rack-02",
          "type": "bin_rack",
          "x": 15.6,
          "y": 23.6,
          "width": 2,
          "depth": 1,
          "height": 2.5,
          "count": 1,
          "label": "블랭크 반환 팔레트 2"
        },
        {
          "id": "coil-bin_rack-03",
          "type": "bin_rack",
          "x": 18.25,
          "y": 23.6,
          "width": 2,
          "depth": 1,
          "height": 2.5,
          "count": 1,
          "label": "블랭크 반환 팔레트 3"
        },
        {
          "id": "coil-bin_rack-04",
          "type": "bin_rack",
          "x": 20.9,
          "y": 23.6,
          "width": 2,
          "depth": 1,
          "height": 2.5,
          "count": 1,
          "label": "블랭크 반환 팔레트 4"
        },
        {
          "id": "coil-bin_rack-05",
          "type": "bin_rack",
          "x": 23.55,
          "y": 23.6,
          "width": 2,
          "depth": 1,
          "height": 2.5,
          "count": 1,
          "label": "블랭크 반환 팔레트 5"
        },
        {
          "id": "coil-bin_rack-06",
          "type": "bin_rack",
          "x": 26.2,
          "y": 23.6,
          "width": 2,
          "depth": 1,
          "height": 2.5,
          "count": 1,
          "label": "블랭크 반환 팔레트 6"
        },
        {
          "id": "coil-bin_rack-07",
          "type": "bin_rack",
          "x": 28.85,
          "y": 23.6,
          "width": 2,
          "depth": 1,
          "height": 2.5,
          "count": 1,
          "label": "블랭크 반환 팔레트 7"
        },
        {
          "id": "coil-bin_rack-08",
          "type": "bin_rack",
          "x": 31.5,
          "y": 23.6,
          "width": 2,
          "depth": 1,
          "height": 2.5,
          "count": 1,
          "label": "블랭크 반환 팔레트 8"
        }
      ]
    },
    {
      "id": "a01-office",
      "name": "생산·품질 사무실",
      "role": "office",
      "building_id": "support",
      "x": 54,
      "y": 15,
      "width": 16.8,
      "depth": 12.5,
      "stage_ids": [],
      "fixtures": [
        {
          "id": "a01-office-office_desks-01",
          "type": "office_desks",
          "x": 55.85,
          "y": 16.4,
          "width": 2.5,
          "depth": 1.6,
          "height": 1.2,
          "count": 1,
          "label": "생산계획·품질 대응 1"
        },
        {
          "id": "a01-office-office_desks-02",
          "type": "office_desks",
          "x": 59.15,
          "y": 16.4,
          "width": 2.5,
          "depth": 1.6,
          "height": 1.2,
          "count": 1,
          "label": "생산계획·품질 대응 2"
        },
        {
          "id": "a01-office-office_desks-03",
          "type": "office_desks",
          "x": 62.45,
          "y": 16.4,
          "width": 2.5,
          "depth": 1.6,
          "height": 1.2,
          "count": 1,
          "label": "생산계획·품질 대응 3"
        }
      ]
    },
    {
      "id": "a01-staff",
      "name": "교대 탈의·휴게",
      "role": "staff",
      "building_id": "support",
      "x": 70.8,
      "y": 15,
      "width": 12.6,
      "depth": 12.5,
      "stage_ids": [],
      "fixtures": [
        {
          "id": "a01-staff-locker_bank-01",
          "type": "locker_bank",
          "x": 72.3,
          "y": 15.85,
          "width": 1.8,
          "depth": 0.5,
          "height": 1.8,
          "count": 1,
          "label": "교대 개인 보관함 1"
        },
        {
          "id": "a01-staff-locker_bank-02",
          "type": "locker_bank",
          "x": 74.9,
          "y": 15.85,
          "width": 1.8,
          "depth": 0.5,
          "height": 1.8,
          "count": 1,
          "label": "교대 개인 보관함 2"
        },
        {
          "id": "a01-staff-locker_bank-03",
          "type": "locker_bank",
          "x": 77.5,
          "y": 15.85,
          "width": 1.8,
          "depth": 0.5,
          "height": 1.8,
          "count": 1,
          "label": "교대 개인 보관함 3"
        },
        {
          "id": "a01-staff-locker_bank-04",
          "type": "locker_bank",
          "x": 80.1,
          "y": 15.85,
          "width": 1.8,
          "depth": 0.5,
          "height": 1.8,
          "count": 1,
          "label": "교대 개인 보관함 4"
        },
        {
          "id": "a01-staff-worktable-01",
          "type": "worktable",
          "x": 72.2,
          "y": 18.1,
          "width": 1.6,
          "depth": 0.8,
          "height": 1,
          "count": 1,
          "label": "휴게 테이블 1"
        }
      ]
    },
    {
      "id": "a01-lab",
      "name": "차체 마스터 치수실",
      "role": "laboratory",
      "building_id": "support",
      "x": 83.4,
      "y": 15,
      "width": 12.6,
      "depth": 12.5,
      "stage_ids": [],
      "fixtures": [
        {
          "id": "a01-lab-lab_bench-01",
          "type": "lab_bench",
          "x": 84.9,
          "y": 16.0,
          "width": 1.8,
          "depth": 0.8,
          "height": 1.2,
          "count": 1,
          "label": "차체 마스터 치수실 1"
        },
        {
          "id": "a01-lab-lab_bench-02",
          "type": "lab_bench",
          "x": 87.5,
          "y": 16.0,
          "width": 1.8,
          "depth": 0.8,
          "height": 1.2,
          "count": 1,
          "label": "차체 마스터 치수실 2"
        },
        {
          "id": "a01-lab-lab_bench-03",
          "type": "lab_bench",
          "x": 90.1,
          "y": 16.0,
          "width": 1.8,
          "depth": 0.8,
          "height": 1.2,
          "count": 1,
          "label": "차체 마스터 치수실 3"
        }
      ]
    },
    {
      "id": "a01-maint",
      "name": "금형 분해·팁 드레싱",
      "role": "maintenance",
      "building_id": "support",
      "x": 54,
      "y": 27.5,
      "width": 21.0,
      "depth": 12.5,
      "stage_ids": [],
      "fixtures": [
        {
          "id": "a01-maint-workbench-01",
          "type": "workbench",
          "x": 55.6,
          "y": 28.55,
          "width": 2,
          "depth": 0.9,
          "height": 1,
          "count": 1,
          "label": "금형 분해·팁 드레싱 1"
        },
        {
          "id": "a01-maint-workbench-02",
          "type": "workbench",
          "x": 58.4,
          "y": 28.55,
          "width": 2,
          "depth": 0.9,
          "height": 1,
          "count": 1,
          "label": "금형 분해·팁 드레싱 2"
        },
        {
          "id": "a01-maint-workbench-03",
          "type": "workbench",
          "x": 61.2,
          "y": 28.55,
          "width": 2,
          "depth": 0.9,
          "height": 1,
          "count": 1,
          "label": "금형 분해·팁 드레싱 3"
        },
        {
          "id": "a01-maint-bin_rack-01",
          "type": "bin_rack",
          "x": 65.3,
          "y": 28.6,
          "width": 1.8,
          "depth": 0.8,
          "height": 2.2,
          "count": 1,
          "label": "정비 예비품 1"
        },
        {
          "id": "a01-maint-bin_rack-02",
          "type": "bin_rack",
          "x": 67.75,
          "y": 28.6,
          "width": 1.8,
          "depth": 0.8,
          "height": 2.2,
          "count": 1,
          "label": "정비 예비품 2"
        },
        {
          "id": "a01-maint-bin_rack-03",
          "type": "bin_rack",
          "x": 70.2,
          "y": 28.6,
          "width": 1.8,
          "depth": 0.8,
          "height": 2.2,
          "count": 1,
          "label": "정비 예비품 3"
        }
      ]
    },
    {
      "id": "a01-utility",
      "name": "공압·배전·냉각",
      "role": "utility",
      "building_id": "support",
      "x": 75.0,
      "y": 27.5,
      "width": 21.0,
      "depth": 12.5,
      "stage_ids": [],
      "fixtures": [
        {
          "id": "a01-utility-compressor-01",
          "type": "compressor",
          "x": 76.85,
          "y": 28.85,
          "width": 2.5,
          "depth": 1.5,
          "height": 2,
          "count": 1,
          "label": "공압 공급 1"
        },
        {
          "id": "a01-utility-chiller-01",
          "type": "chiller",
          "x": 80.9,
          "y": 29.0,
          "width": 3,
          "depth": 1.8,
          "height": 2.3,
          "count": 1,
          "label": "공정 냉각 1"
        },
        {
          "id": "a01-utility-electrical_bank-01",
          "type": "electrical_bank",
          "x": 85.55,
          "y": 28.45,
          "width": 1.5,
          "depth": 0.7,
          "height": 2,
          "count": 1,
          "label": "공정 배전 1"
        },
        {
          "id": "a01-utility-electrical_bank-02",
          "type": "electrical_bank",
          "x": 87.85,
          "y": 28.45,
          "width": 1.5,
          "depth": 0.7,
          "height": 2,
          "count": 1,
          "label": "공정 배전 2"
        },
        {
          "id": "a01-utility-electrical_bank-03",
          "type": "electrical_bank",
          "x": 90.15,
          "y": 28.45,
          "width": 1.5,
          "depth": 0.7,
          "height": 2,
          "count": 1,
          "label": "공정 배전 3"
        }
      ]
    },
    {
      "id": "dispatch-stock",
      "name": "차체 대차 납품 버퍼",
      "role": "warehouse",
      "building_id": "dispatch-stock",
      "x": 102.0,
      "y": 14,
      "width": 36.0,
      "depth": 26,
      "stage_ids": [],
      "fixtures": [
        {
          "id": "dispatch-stock-floor_pallets-01",
          "type": "floor_pallets",
          "x": 103.8,
          "y": 15.35,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 1"
        },
        {
          "id": "dispatch-stock-floor_pallets-02",
          "type": "floor_pallets",
          "x": 107.0,
          "y": 15.35,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 2"
        },
        {
          "id": "dispatch-stock-floor_pallets-03",
          "type": "floor_pallets",
          "x": 110.2,
          "y": 15.35,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 3"
        },
        {
          "id": "dispatch-stock-floor_pallets-04",
          "type": "floor_pallets",
          "x": 113.4,
          "y": 15.35,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 4"
        },
        {
          "id": "dispatch-stock-floor_pallets-05",
          "type": "floor_pallets",
          "x": 116.6,
          "y": 15.35,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 5"
        },
        {
          "id": "dispatch-stock-floor_pallets-06",
          "type": "floor_pallets",
          "x": 119.7,
          "y": 23.25,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 6"
        },
        {
          "id": "dispatch-stock-floor_pallets-07",
          "type": "floor_pallets",
          "x": 123.0,
          "y": 15.35,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 7"
        },
        {
          "id": "dispatch-stock-floor_pallets-08",
          "type": "floor_pallets",
          "x": 126.2,
          "y": 15.35,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 8"
        },
        {
          "id": "dispatch-stock-floor_pallets-09",
          "type": "floor_pallets",
          "x": 129.4,
          "y": 15.35,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 9"
        },
        {
          "id": "dispatch-stock-floor_pallets-10",
          "type": "floor_pallets",
          "x": 132.6,
          "y": 15.35,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 10"
        },
        {
          "id": "dispatch-stock-floor_pallets-11",
          "type": "floor_pallets",
          "x": 135.8,
          "y": 15.35,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 11"
        },
        {
          "id": "dispatch-stock-floor_pallets-12",
          "type": "floor_pallets",
          "x": 103.8,
          "y": 18.15,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 12"
        },
        {
          "id": "dispatch-stock-floor_pallets-13",
          "type": "floor_pallets",
          "x": 107.0,
          "y": 18.15,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 13"
        },
        {
          "id": "dispatch-stock-floor_pallets-14",
          "type": "floor_pallets",
          "x": 110.2,
          "y": 18.15,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 14"
        },
        {
          "id": "dispatch-stock-floor_pallets-15",
          "type": "floor_pallets",
          "x": 113.4,
          "y": 18.15,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 15"
        },
        {
          "id": "dispatch-stock-floor_pallets-16",
          "type": "floor_pallets",
          "x": 116.6,
          "y": 18.15,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 16"
        },
        {
          "id": "dispatch-stock-floor_pallets-17",
          "type": "floor_pallets",
          "x": 122.7,
          "y": 23.25,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 17"
        },
        {
          "id": "dispatch-stock-floor_pallets-18",
          "type": "floor_pallets",
          "x": 123.0,
          "y": 18.15,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 18"
        },
        {
          "id": "dispatch-stock-floor_pallets-19",
          "type": "floor_pallets",
          "x": 126.2,
          "y": 18.15,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 19"
        },
        {
          "id": "dispatch-stock-floor_pallets-20",
          "type": "floor_pallets",
          "x": 129.4,
          "y": 18.15,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 20"
        },
        {
          "id": "dispatch-stock-floor_pallets-21",
          "type": "floor_pallets",
          "x": 132.6,
          "y": 18.15,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 21"
        },
        {
          "id": "dispatch-stock-floor_pallets-22",
          "type": "floor_pallets",
          "x": 135.8,
          "y": 18.15,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 22"
        },
        {
          "id": "dispatch-stock-floor_pallets-23",
          "type": "floor_pallets",
          "x": 103.8,
          "y": 20.95,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 23"
        },
        {
          "id": "dispatch-stock-floor_pallets-24",
          "type": "floor_pallets",
          "x": 107.0,
          "y": 20.95,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 24"
        },
        {
          "id": "dispatch-stock-floor_pallets-25",
          "type": "floor_pallets",
          "x": 110.2,
          "y": 20.95,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 25"
        },
        {
          "id": "dispatch-stock-floor_pallets-26",
          "type": "floor_pallets",
          "x": 113.4,
          "y": 20.95,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 26"
        },
        {
          "id": "dispatch-stock-floor_pallets-27",
          "type": "floor_pallets",
          "x": 116.6,
          "y": 20.95,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 27"
        },
        {
          "id": "dispatch-stock-floor_pallets-28",
          "type": "floor_pallets",
          "x": 119.8,
          "y": 20.95,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 28"
        },
        {
          "id": "dispatch-stock-floor_pallets-29",
          "type": "floor_pallets",
          "x": 123.0,
          "y": 20.95,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 29"
        },
        {
          "id": "dispatch-stock-floor_pallets-30",
          "type": "floor_pallets",
          "x": 126.2,
          "y": 20.95,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 30"
        },
        {
          "id": "dispatch-stock-floor_pallets-31",
          "type": "floor_pallets",
          "x": 129.4,
          "y": 20.95,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 31"
        },
        {
          "id": "dispatch-stock-floor_pallets-32",
          "type": "floor_pallets",
          "x": 132.6,
          "y": 20.95,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 32"
        },
        {
          "id": "dispatch-stock-floor_pallets-33",
          "type": "floor_pallets",
          "x": 135.8,
          "y": 20.95,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 33"
        },
        {
          "id": "dispatch-stock-floor_pallets-34",
          "type": "floor_pallets",
          "x": 103.8,
          "y": 23.75,
          "width": 2.4,
          "depth": 1.5,
          "height": 1.8,
          "count": 1,
          "label": "차종별 차체 전용대 34"
        }
      ]
    }
  ],
  "equipment": [
    {
      "stage_id": "S01",
      "index": 0,
      "x": 20.0,
      "y": 52.5,
      "angle": 1.5707963267948966
    },
    {
      "stage_id": "S01",
      "index": 1,
      "x": 30.5,
      "y": 52.5,
      "angle": 1.5707963267948966
    },
    {
      "stage_id": "S02",
      "index": 0,
      "x": 20.0,
      "y": 62.5,
      "angle": 1.5707963267948966
    },
    {
      "stage_id": "S02",
      "index": 1,
      "x": 30.5,
      "y": 62.5,
      "angle": 1.5707963267948966
    },
    {
      "stage_id": "S03",
      "index": 0,
      "x": 44.0,
      "y": 62.0,
      "angle": 0
    },
    {
      "stage_id": "S03",
      "index": 1,
      "x": 53.5,
      "y": 62.0,
      "angle": 0
    },
    {
      "stage_id": "S03",
      "index": 2,
      "x": 63.0,
      "y": 62.0,
      "angle": 0
    },
    {
      "stage_id": "S03",
      "index": 3,
      "x": 72.5,
      "y": 62.0,
      "angle": 0
    },
    {
      "stage_id": "S03",
      "index": 4,
      "x": 82.0,
      "y": 62.0,
      "angle": 0
    },
    {
      "stage_id": "S04",
      "index": 0,
      "x": 98.0,
      "y": 50.0,
      "angle": 0
    },
    {
      "stage_id": "S04",
      "index": 1,
      "x": 105.5,
      "y": 50.0,
      "angle": 0
    },
    {
      "stage_id": "S04",
      "index": 2,
      "x": 113.0,
      "y": 50.0,
      "angle": 0
    },
    {
      "stage_id": "S05",
      "index": 0,
      "x": 123.5,
      "y": 50.0,
      "angle": 0
    },
    {
      "stage_id": "S05",
      "index": 1,
      "x": 130.0,
      "y": 50.0,
      "angle": 0
    },
    {
      "stage_id": "S05",
      "index": 2,
      "x": 123.5,
      "y": 57.2,
      "angle": 0
    },
    {
      "stage_id": "S05",
      "index": 3,
      "x": 130.0,
      "y": 57.2,
      "angle": 0
    },
    {
      "stage_id": "S06",
      "index": 0,
      "x": 98.5,
      "y": 67.7,
      "angle": 0
    },
    {
      "stage_id": "S06",
      "index": 1,
      "x": 107.9,
      "y": 67.7,
      "angle": 0
    },
    {
      "stage_id": "S06",
      "index": 2,
      "x": 117.3,
      "y": 67.7,
      "angle": 0
    },
    {
      "stage_id": "S06",
      "index": 3,
      "x": 98.5,
      "y": 76.7,
      "angle": 0
    },
    {
      "stage_id": "S06",
      "index": 4,
      "x": 107.9,
      "y": 76.7,
      "angle": 0
    },
    {
      "stage_id": "S06",
      "index": 5,
      "x": 117.3,
      "y": 76.7,
      "angle": 0
    },
    {
      "stage_id": "S07",
      "index": 0,
      "x": 98.0,
      "y": 90.2,
      "angle": 0
    },
    {
      "stage_id": "S07",
      "index": 1,
      "x": 105.5,
      "y": 90.2,
      "angle": 0
    },
    {
      "stage_id": "S07",
      "index": 2,
      "x": 113.0,
      "y": 90.2,
      "angle": 0
    },
    {
      "stage_id": "S08",
      "index": 0,
      "x": 124.5,
      "y": 90.2,
      "angle": 0
    },
    {
      "stage_id": "S08",
      "index": 1,
      "x": 133.0,
      "y": 90.2,
      "angle": 0
    }
  ],
  "robots": [
    {
      "definition_index": 0,
      "instance_index": 0,
      "stage_id": "S03",
      "x": 44.0,
      "y": 66.25,
      "angle": -1.5707963267948966,
      "task_station": "다단 성형 프레스 1호의 북측 작업면. 블랭크를 금형 사이 옮긴다."
    },
    {
      "definition_index": 0,
      "instance_index": 1,
      "stage_id": "S03",
      "x": 53.5,
      "y": 66.25,
      "angle": -1.5707963267948966,
      "task_station": "다단 성형 프레스 2호의 북측 작업면. 블랭크를 금형 사이 옮긴다."
    },
    {
      "definition_index": 0,
      "instance_index": 2,
      "stage_id": "S03",
      "x": 63.0,
      "y": 66.25,
      "angle": -1.5707963267948966,
      "task_station": "다단 성형 프레스 3호의 북측 작업면. 블랭크를 금형 사이 옮긴다."
    },
    {
      "definition_index": 0,
      "instance_index": 3,
      "stage_id": "S03",
      "x": 72.5,
      "y": 66.25,
      "angle": -1.5707963267948966,
      "task_station": "다단 성형 프레스 4호의 북측 작업면. 블랭크를 금형 사이 옮긴다."
    },
    {
      "definition_index": 0,
      "instance_index": 4,
      "stage_id": "S03",
      "x": 82.0,
      "y": 66.25,
      "angle": -1.5707963267948966,
      "task_station": "다단 성형 프레스 5호의 북측 작업면. 블랭크를 금형 사이 옮긴다."
    },
    {
      "definition_index": 0,
      "instance_index": 5,
      "stage_id": "S03",
      "x": 82.0,
      "y": 57.75,
      "angle": 1.5707963267948966,
      "task_station": "다단 성형 프레스 5호의 남측 작업면. 블랭크를 금형 사이 옮긴다."
    },
    {
      "definition_index": 1,
      "instance_index": 0,
      "stage_id": "S06",
      "x": 98.5,
      "y": 63.95,
      "angle": 1.5707963267948966,
      "task_station": "구조부품 스폿 용접 1호의 남측 작업면. 차체 보강 지그의 지정 점을 접합한다."
    },
    {
      "definition_index": 1,
      "instance_index": 1,
      "stage_id": "S06",
      "x": 98.5,
      "y": 71.45,
      "angle": -1.5707963267948966,
      "task_station": "구조부품 스폿 용접 1호의 북측 작업면. 차체 보강 지그의 지정 점을 접합한다."
    },
    {
      "definition_index": 1,
      "instance_index": 2,
      "stage_id": "S06",
      "x": 107.9,
      "y": 63.95,
      "angle": 1.5707963267948966,
      "task_station": "구조부품 스폿 용접 2호의 남측 작업면. 차체 보강 지그의 지정 점을 접합한다."
    },
    {
      "definition_index": 1,
      "instance_index": 3,
      "stage_id": "S06",
      "x": 107.9,
      "y": 71.45,
      "angle": -1.5707963267948966,
      "task_station": "구조부품 스폿 용접 2호의 북측 작업면. 차체 보강 지그의 지정 점을 접합한다."
    },
    {
      "definition_index": 1,
      "instance_index": 4,
      "stage_id": "S06",
      "x": 117.3,
      "y": 63.95,
      "angle": 1.5707963267948966,
      "task_station": "구조부품 스폿 용접 3호의 남측 작업면. 차체 보강 지그의 지정 점을 접합한다."
    },
    {
      "definition_index": 1,
      "instance_index": 5,
      "stage_id": "S06",
      "x": 117.3,
      "y": 71.45,
      "angle": -1.5707963267948966,
      "task_station": "구조부품 스폿 용접 3호의 북측 작업면. 차체 보강 지그의 지정 점을 접합한다."
    },
    {
      "definition_index": 1,
      "instance_index": 6,
      "stage_id": "S06",
      "x": 98.5,
      "y": 72.95,
      "angle": 1.5707963267948966,
      "task_station": "구조부품 스폿 용접 4호의 남측 작업면. 차체 보강 지그의 지정 점을 접합한다."
    },
    {
      "definition_index": 1,
      "instance_index": 7,
      "stage_id": "S06",
      "x": 98.5,
      "y": 80.45,
      "angle": -1.5707963267948966,
      "task_station": "구조부품 스폿 용접 4호의 북측 작업면. 차체 보강 지그의 지정 점을 접합한다."
    },
    {
      "definition_index": 1,
      "instance_index": 8,
      "stage_id": "S06",
      "x": 107.9,
      "y": 72.95,
      "angle": 1.5707963267948966,
      "task_station": "구조부품 스폿 용접 5호의 남측 작업면. 차체 보강 지그의 지정 점을 접합한다."
    },
    {
      "definition_index": 1,
      "instance_index": 9,
      "stage_id": "S06",
      "x": 107.9,
      "y": 80.45,
      "angle": -1.5707963267948966,
      "task_station": "구조부품 스폿 용접 5호의 북측 작업면. 차체 보강 지그의 지정 점을 접합한다."
    },
    {
      "definition_index": 1,
      "instance_index": 10,
      "stage_id": "S06",
      "x": 117.3,
      "y": 72.95,
      "angle": 1.5707963267948966,
      "task_station": "구조부품 스폿 용접 6호의 남측 작업면. 차체 보강 지그의 지정 점을 접합한다."
    },
    {
      "definition_index": 1,
      "instance_index": 11,
      "stage_id": "S06",
      "x": 117.3,
      "y": 80.45,
      "angle": -1.5707963267948966,
      "task_station": "구조부품 스폿 용접 6호의 북측 작업면. 차체 보강 지그의 지정 점을 접합한다."
    },
    {
      "definition_index": 2,
      "instance_index": 0,
      "stage_id": "S04",
      "x": 98.0,
      "y": 46.75,
      "angle": 1.5707963267948966,
      "task_station": "성형품 로봇 적재 1호의 남측 작업면. 차종별 완제품 대차를 출하 대기로 옮긴다."
    },
    {
      "definition_index": 2,
      "instance_index": 1,
      "stage_id": "S04",
      "x": 113.0,
      "y": 46.75,
      "angle": 1.5707963267948966,
      "task_station": "성형품 로봇 적재 3호의 남측 작업면. 차종별 완제품 대차를 출하 대기로 옮긴다."
    },
    {
      "definition_index": 2,
      "instance_index": 2,
      "stage_id": "S07",
      "x": 98.0,
      "y": 86.95,
      "angle": 1.5707963267948966,
      "task_station": "차체 치수·접합 검사 1호의 남측 작업면. 차종별 완제품 대차를 출하 대기로 옮긴다."
    },
    {
      "definition_index": 2,
      "instance_index": 3,
      "stage_id": "S08",
      "x": 133.0,
      "y": 86.95,
      "angle": 1.5707963267948966,
      "task_station": "순서 출하 대차 포장 2호의 남측 작업면. 차종별 완제품 대차를 출하 대기로 옮긴다."
    }
  ],
  "logistics": [
    {
      "id": "S01→S02",
      "kind": "conveyor",
      "from": "S01:0",
      "to": "S02:0",
      "points": [
        [
          20,
          52.5,
          1.1
        ],
        [
          20,
          62.5,
          1.1
        ]
      ],
      "width": 1.2,
      "routing_note": "수직으로 나란한 레벨러와 블랭킹 프레스 사이의 연속 강판 공급. 블랭킹 이전의 코일 스트립을 지게차로 옮기지 않는다.",
      "authored_transport": true
    },
    {
      "id": "S02→S03",
      "kind": "forklift",
      "from": "S02:1",
      "to": "S03:0",
      "points": [
        [
          34.82,
          62.0,
          0.1
        ],
        [
          39.18,
          62.0,
          0.1
        ]
      ],
      "width": 2.4,
      "routing_note": "해당 생산 셀의 명시 수송 대표 경로. 다른 병렬 셀의 실제 분기 포트는 별도 형상 검토한다.",
      "handover_method": "external_machine_side_staging",
      "handover_note": "차량 중심선은 설비 footprint 바깥에 정차한다. 장비 측 인계대·적재 자세와 지게차 포크/AMR 도킹 상세는 실제 형상 검수 대상이다."
    },
    {
      "id": "S03→S04",
      "kind": "forklift",
      "from": "S03:4",
      "to": "S04:0",
      "points": [
        [
          82.0,
          57.68,
          0.1
        ],
        [
          82.0,
          50.0,
          0.1
        ],
        [
          94.18,
          50.0,
          0.1
        ]
      ],
      "width": 2.4,
      "routing_note": "해당 생산 셀의 명시 수송 대표 경로. 다른 병렬 셀의 실제 분기 포트는 별도 형상 검토한다.",
      "handover_method": "external_machine_side_staging",
      "handover_note": "차량 중심선은 설비 footprint 바깥에 정차한다. 장비 측 인계대·적재 자세와 지게차 포크/AMR 도킹 상세는 실제 형상 검수 대상이다."
    },
    {
      "id": "S04→S05",
      "kind": "forklift",
      "from": "S04:2",
      "to": "S05:0",
      "points": [
        [
          116.82,
          50.0,
          0.1
        ],
        [
          120.18,
          50.0,
          0.1
        ]
      ],
      "width": 2.4,
      "routing_note": "해당 생산 셀의 명시 수송 대표 경로. 다른 병렬 셀의 실제 분기 포트는 별도 형상 검토한다.",
      "handover_method": "external_machine_side_staging",
      "handover_note": "차량 중심선은 설비 footprint 바깥에 정차한다. 장비 측 인계대·적재 자세와 지게차 포크/AMR 도킹 상세는 실제 형상 검수 대상이다."
    },
    {
      "id": "S05→S06",
      "kind": "forklift",
      "from": "S05:2",
      "to": "S06:2",
      "points": [
        [
          120.18,
          57.2,
          0.1
        ],
        [
          117.3,
          57.2,
          0.1
        ],
        [
          117.3,
          63.88,
          0.1
        ]
      ],
      "width": 2.4,
      "routing_note": "해당 생산 셀의 명시 수송 대표 경로. 다른 병렬 셀의 실제 분기 포트는 별도 형상 검토한다.",
      "handover_method": "external_machine_side_staging",
      "handover_note": "차량 중심선은 설비 footprint 바깥에 정차한다. 장비 측 인계대·적재 자세와 지게차 포크/AMR 도킹 상세는 실제 형상 검수 대상이다."
    },
    {
      "id": "S06→S07",
      "kind": "forklift",
      "from": "S06:3",
      "to": "S07:0",
      "points": [
        [
          97.88,
          80.52,
          0.1
        ],
        [
          97.88,
          86.88,
          0.1
        ]
      ],
      "width": 2.4,
      "routing_note": "해당 생산 셀의 명시 수송 대표 경로. 다른 병렬 셀의 실제 분기 포트는 별도 형상 검토한다.",
      "handover_method": "external_machine_side_staging",
      "handover_note": "차량 중심선은 설비 footprint 바깥에 정차한다. 장비 측 인계대·적재 자세와 지게차 포크/AMR 도킹 상세는 실제 형상 검수 대상이다."
    },
    {
      "id": "S07→S08",
      "kind": "forklift",
      "from": "S07:2",
      "to": "S08:0",
      "points": [
        [
          116.7806,
          92.52,
          0.1
        ],
        [
          120.2194,
          92.52,
          0.1
        ]
      ],
      "width": 2.4,
      "routing_note": "해당 생산 셀의 명시 수송 대표 경로. 다른 병렬 셀의 실제 분기 포트는 별도 형상 검토한다.",
      "handover_method": "external_machine_side_staging",
      "handover_note": "차량 중심선은 설비 footprint 바깥에 정차한다. 장비 측 인계대·적재 자세와 지게차 포크/AMR 도킹 상세는 실제 형상 검수 대상이다."
    },
    {
      "id": "원료 도크→입고 인계 1",
      "kind": "forklift",
      "width": 2.4,
      "from": "raw-dock",
      "to": "coil",
      "points": [
        [
          14,
          27.5,
          0.1
        ],
        [
          18.0,
          27.5,
          0.1
        ]
      ],
      "routing_note": "원/종점 실좌표와 수송 폭을 명시한 단방향 대표 인계 경로. 교차부 운영·차량 선회는 별도 검수한다."
    },
    {
      "id": "입고 인계→초공정 1",
      "kind": "forklift",
      "width": 2.4,
      "from": "coil",
      "to": "S01:0",
      "points": [
        [
          18.0,
          27.5,
          0.1
        ],
        [
          23.62,
          27.5,
          0.1
        ],
        [
          23.62,
          45.8014,
          0.1
        ]
      ],
      "routing_note": "원/종점 실좌표와 수송 폭을 명시한 단방향 대표 인계 경로. 교차부 운영·차량 선회는 별도 검수한다.",
      "handover_method": "external_machine_side_staging",
      "handover_note": "차량 중심선은 설비 footprint 바깥에 정차한다. 장비 측 인계대·적재 자세와 지게차 포크/AMR 도킹 상세는 실제 형상 검수 대상이다."
    },
    {
      "id": "최종검사→출하 대기 2",
      "kind": "forklift",
      "width": 2.4,
      "from": "S08:0",
      "to": "dispatch-stock",
      "points": [
        [
          124.5,
          86.88,
          0.1
        ],
        [
          124.5,
          82.67,
          0.1
        ],
        [
          139.47,
          82.67,
          0.1
        ],
        [
          139.47,
          12.53,
          0.1
        ],
        [
          120.0,
          12.53,
          0.1
        ],
        [
          120.0,
          18.0,
          0.1
        ]
      ],
      "routing_note": "원/종점 실좌표와 수송 폭을 명시한 단방향 대표 인계 경로. 교차부 운영·차량 선회는 별도 검수한다.",
      "handover_method": "external_machine_side_staging",
      "handover_note": "차량 중심선은 설비 footprint 바깥에 정차한다. 장비 측 인계대·적재 자세와 지게차 포크/AMR 도킹 상세는 실제 형상 검수 대상이다."
    },
    {
      "id": "출하 대기→완제품 도크 2",
      "kind": "forklift",
      "width": 2.4,
      "from": "dispatch-stock",
      "to": "shipping-dock",
      "points": [
        [
          120.0,
          18.0,
          0.1
        ],
        [
          120.0,
          14,
          0.1
        ]
      ],
      "routing_note": "원/종점 실좌표와 수송 폭을 명시한 단방향 대표 인계 경로. 교차부 운영·차량 선회는 별도 검수한다."
    },
    {
      "id": "정문→교대 탈의·휴게",
      "kind": "pedestrian",
      "width": 1.2,
      "from": "gate",
      "to": "a01-staff",
      "points": [
        [
          75.0,
          7,
          0.1
        ],
        [
          81.82,
          7,
          0.1
        ],
        [
          81.82,
          21.0,
          0.1
        ],
        [
          77.3,
          21.0,
          0.1
        ]
      ],
      "routing_note": "원/종점 실좌표와 수송 폭을 명시한 단방향 대표 인계 경로. 교차부 운영·차량 선회는 별도 검수한다."
    },
    {
      "id": "지원동 보행 a01-staff→a01-office",
      "kind": "pedestrian",
      "width": 1.2,
      "from": "a01-staff",
      "to": "a01-office",
      "points": [
        [
          77.3,
          21.0,
          0.1
        ],
        [
          62.5,
          21.0,
          0.1
        ]
      ],
      "routing_note": "원/종점 실좌표와 수송 폭을 명시한 단방향 대표 인계 경로. 교차부 운영·차량 선회는 별도 검수한다."
    },
    {
      "id": "지원동 보행 a01-staff→a01-lab",
      "kind": "pedestrian",
      "width": 1.2,
      "from": "a01-staff",
      "to": "a01-lab",
      "points": [
        [
          77.3,
          21.0,
          0.1
        ],
        [
          89.9,
          21.0,
          0.1
        ]
      ],
      "routing_note": "원/종점 실좌표와 수송 폭을 명시한 단방향 대표 인계 경로. 교차부 운영·차량 선회는 별도 검수한다."
    },
    {
      "id": "지원동 보행 a01-staff→a01-maint",
      "kind": "pedestrian",
      "width": 1.2,
      "from": "a01-staff",
      "to": "a01-maint",
      "points": [
        [
          77.3,
          21.0,
          0.1
        ],
        [
          71.92,
          21.0,
          0.1
        ],
        [
          71.92,
          33.5,
          0.1
        ],
        [
          64.5,
          33.5,
          0.1
        ]
      ],
      "routing_note": "원/종점 실좌표와 수송 폭을 명시한 단방향 대표 인계 경로. 교차부 운영·차량 선회는 별도 검수한다."
    },
    {
      "id": "지원동 보행 a01-staff→a01-utility",
      "kind": "pedestrian",
      "width": 1.2,
      "from": "a01-staff",
      "to": "a01-utility",
      "points": [
        [
          77.3,
          21.0,
          0.1
        ],
        [
          74.07,
          21.0,
          0.1
        ],
        [
          74.07,
          33.5,
          0.1
        ],
        [
          85.5,
          33.5,
          0.1
        ]
      ],
      "routing_note": "원/종점 실좌표와 수송 폭을 명시한 단방향 대표 인계 경로. 교차부 운영·차량 선회는 별도 검수한다."
    },
    {
      "id": "코일 공급 2열→블랭킹",
      "kind": "conveyor",
      "from": "S01:1",
      "to": "S02:1",
      "points": [
        [
          30.5,
          52.5,
          1.1
        ],
        [
          30.5,
          62.5,
          1.1
        ]
      ],
      "width": 1.2,
      "routing_note": "수직으로 나란한 레벨러와 블랭킹 프레스 사이의 연속 강판 공급. 블랭킹 이전의 코일 스트립을 지게차로 옮기지 않는다.",
      "authored_transport": true
    }
  ],
  "yard": {
    "roads": [
      {
        "points": [
          [
            7,
            7
          ],
          [
            143,
            7
          ],
          [
            143,
            102
          ],
          [
            7,
            102
          ],
          [
            7,
            7
          ]
        ],
        "width": 6
      }
    ],
    "docks": [
      {
        "x": 14,
        "y": 27.5,
        "angle": -1.5707963267948966,
        "building_id": "coil",
        "role": "원료·구매부품 입고 도크 — 코일·블랭크 입고 창고 도크"
      },
      {
        "x": 120.0,
        "y": 14,
        "angle": 0,
        "building_id": "dispatch-stock",
        "role": "차체 대차 납품 버퍼 출하"
      }
    ],
    "parking": [
      {
        "x": 15,
        "y": 100.2,
        "angle": 0,
        "count": 20
      }
    ],
    "gate": {
      "x": 75.0,
      "y": 7
    },
    "fence": true
  },
  "landmarks": [
    "긴 프레스 톱니 지붕과 14m 높은 외벽",
    "북동쪽 적갈색 배럴 지붕 용접동",
    "용접동 끝에서 직각으로 돌출하는 순서 출하동",
    "서남쪽 코일 크래들과 금형 정비동",
    "차체 대차 납품 버퍼을 갖춘 실제 랙·전용대 출하 전면"
  ],
  "openings": [
    {
      "id": "opening-1",
      "building_id": "press",
      "x": 87.5,
      "y": 46.8,
      "width": 3.0,
      "height": 4.3,
      "axis": "y",
      "connects": [
        "S03",
        "S04"
      ]
    },
    {
      "id": "opening-2",
      "building_id": "press",
      "x": 87.5,
      "y": 46.8,
      "width": 3.0,
      "height": 4.3,
      "axis": "y",
      "connects": [
        "S03",
        "S04"
      ],
      "zone_id": "press"
    },
    {
      "id": "opening-3",
      "building_id": "weld",
      "x": 93.5,
      "y": 46.8,
      "width": 3.0,
      "height": 4.3,
      "axis": "y",
      "connects": [
        "S03",
        "S04"
      ]
    },
    {
      "id": "opening-4",
      "building_id": "weld",
      "x": 93.5,
      "y": 46.8,
      "width": 3.0,
      "height": 4.3,
      "axis": "y",
      "connects": [
        "S03",
        "S04"
      ],
      "zone_id": "weld"
    },
    {
      "id": "opening-5",
      "building_id": "weld",
      "x": 134.0,
      "y": 46.8,
      "width": 3.0,
      "height": 4.3,
      "axis": "y",
      "connects": [
        "S06",
        "S07"
      ]
    },
    {
      "id": "opening-6",
      "building_id": "weld",
      "x": 134.0,
      "y": 46.8,
      "width": 3.0,
      "height": 4.3,
      "axis": "y",
      "connects": [
        "S06",
        "S07"
      ],
      "zone_id": "weld"
    },
    {
      "id": "opening-7",
      "building_id": "inspect",
      "x": 93.5,
      "y": 87.0,
      "width": 3.0,
      "height": 4.3,
      "axis": "y",
      "connects": [
        "S06",
        "S07"
      ]
    },
    {
      "id": "opening-8",
      "building_id": "inspect",
      "x": 93.5,
      "y": 87.0,
      "width": 3.0,
      "height": 4.3,
      "axis": "y",
      "connects": [
        "S06",
        "S07"
      ],
      "zone_id": "inspect"
    },
    {
      "id": "routing-r1-009",
      "building_id": "press",
      "x": 87.5,
      "y": 50.0,
      "width": 3.2,
      "height": 3.5,
      "sill_height": 0,
      "axis": "y",
      "connects": [
        "S03:4",
        "S04:0"
      ],
      "kind": "material_door"
    },
    {
      "id": "routing-r1-010",
      "building_id": "weld",
      "x": 93.5,
      "y": 50.0,
      "width": 3.2,
      "height": 3.5,
      "sill_height": 0,
      "axis": "y",
      "connects": [
        "S03:4",
        "S04:0"
      ],
      "kind": "material_door"
    },
    {
      "id": "routing-r1-011",
      "building_id": "press",
      "x": 87.5,
      "y": 50.0,
      "width": 3.2,
      "height": 3.5,
      "sill_height": 0,
      "axis": "y",
      "connects": [
        "S03:4",
        "S04:0"
      ],
      "kind": "material_door",
      "zone_id": "press"
    },
    {
      "id": "routing-r1-012",
      "building_id": "weld",
      "x": 93.5,
      "y": 50.0,
      "width": 3.2,
      "height": 3.5,
      "sill_height": 0,
      "axis": "y",
      "connects": [
        "S03:4",
        "S04:0"
      ],
      "kind": "material_door",
      "zone_id": "weld"
    },
    {
      "id": "routing-r1-013",
      "building_id": "weld",
      "x": 97.88,
      "y": 81.2,
      "width": 3.2,
      "height": 3.5,
      "sill_height": 0,
      "axis": "x",
      "connects": [
        "S06:3",
        "S07:0"
      ],
      "kind": "material_door"
    },
    {
      "id": "routing-r1-014",
      "building_id": "inspect",
      "x": 97.88,
      "y": 86.2,
      "width": 3.2,
      "height": 3.5,
      "sill_height": 0,
      "axis": "x",
      "connects": [
        "S06:3",
        "S07:0"
      ],
      "kind": "material_door"
    },
    {
      "id": "routing-r1-015",
      "building_id": "weld",
      "x": 97.88,
      "y": 81.2,
      "width": 3.2,
      "height": 3.5,
      "sill_height": 0,
      "axis": "x",
      "connects": [
        "S06:3",
        "S07:0"
      ],
      "kind": "material_door",
      "zone_id": "weld"
    },
    {
      "id": "routing-r1-016",
      "building_id": "inspect",
      "x": 97.88,
      "y": 86.2,
      "width": 3.2,
      "height": 3.5,
      "sill_height": 0,
      "axis": "x",
      "connects": [
        "S06:3",
        "S07:0"
      ],
      "kind": "material_door",
      "zone_id": "inspect"
    },
    {
      "id": "routing-r1-017",
      "building_id": "coil",
      "x": 14,
      "y": 27.5,
      "width": 3.2,
      "height": 3.5,
      "sill_height": 0,
      "axis": "y",
      "connects": [
        "raw-dock",
        "coil"
      ],
      "kind": "material_door"
    },
    {
      "id": "routing-r1-018",
      "building_id": "press",
      "x": 23.62,
      "y": 46,
      "width": 3.2,
      "height": 3.5,
      "sill_height": 0,
      "axis": "x",
      "connects": [
        "coil",
        "S01:0"
      ],
      "kind": "material_door"
    },
    {
      "id": "routing-r1-019",
      "building_id": "coil",
      "x": 23.62,
      "y": 40,
      "width": 3.2,
      "height": 3.5,
      "sill_height": 0,
      "axis": "x",
      "connects": [
        "coil",
        "S01:0"
      ],
      "kind": "material_door"
    },
    {
      "id": "routing-r1-020",
      "building_id": "press",
      "x": 23.62,
      "y": 46,
      "width": 3.2,
      "height": 3.5,
      "sill_height": 0,
      "axis": "x",
      "connects": [
        "coil",
        "S01:0"
      ],
      "kind": "material_door",
      "zone_id": "press"
    },
    {
      "id": "routing-r1-021",
      "building_id": "inspect",
      "x": 124.5,
      "y": 86.2,
      "width": 3.2,
      "height": 3.5,
      "sill_height": 0,
      "axis": "x",
      "connects": [
        "S08:0",
        "dispatch-stock"
      ],
      "kind": "material_door"
    },
    {
      "id": "routing-r1-022",
      "building_id": "inspect",
      "x": 124.5,
      "y": 86.2,
      "width": 3.2,
      "height": 3.5,
      "sill_height": 0,
      "axis": "x",
      "connects": [
        "S08:0",
        "dispatch-stock"
      ],
      "kind": "material_door",
      "zone_id": "inspect"
    },
    {
      "id": "routing-r1-023",
      "building_id": "dispatch-stock",
      "x": 120.0,
      "y": 14,
      "width": 3.2,
      "height": 3.5,
      "sill_height": 0,
      "axis": "x",
      "connects": [
        "S08:0",
        "dispatch-stock"
      ],
      "kind": "material_door"
    },
    {
      "id": "routing-r1-024",
      "building_id": "support",
      "x": 81.82,
      "y": 15,
      "width": 1.75,
      "height": 2.4,
      "sill_height": 0,
      "axis": "x",
      "connects": [
        "gate",
        "a01-staff"
      ],
      "kind": "pedestrian_door"
    },
    {
      "id": "routing-r1-025",
      "building_id": "support",
      "x": 81.82,
      "y": 15,
      "width": 1.75,
      "height": 2.4,
      "sill_height": 0,
      "axis": "x",
      "connects": [
        "gate",
        "a01-staff"
      ],
      "kind": "pedestrian_door",
      "zone_id": "a01-staff"
    },
    {
      "id": "routing-r1-026",
      "building_id": "support",
      "x": 70.8,
      "y": 21.0,
      "width": 1.75,
      "height": 2.4,
      "sill_height": 0,
      "axis": "y",
      "connects": [
        "a01-staff",
        "a01-office"
      ],
      "kind": "pedestrian_door",
      "zone_id": "a01-office"
    },
    {
      "id": "routing-r1-027",
      "building_id": "support",
      "x": 70.8,
      "y": 21.0,
      "width": 1.75,
      "height": 2.4,
      "sill_height": 0,
      "axis": "y",
      "connects": [
        "a01-staff",
        "a01-office"
      ],
      "kind": "pedestrian_door",
      "zone_id": "a01-staff"
    },
    {
      "id": "routing-r1-028",
      "building_id": "support",
      "x": 83.4,
      "y": 21.0,
      "width": 1.75,
      "height": 2.4,
      "sill_height": 0,
      "axis": "y",
      "connects": [
        "a01-staff",
        "a01-lab"
      ],
      "kind": "pedestrian_door",
      "zone_id": "a01-staff"
    },
    {
      "id": "routing-r1-029",
      "building_id": "support",
      "x": 83.4,
      "y": 21.0,
      "width": 1.75,
      "height": 2.4,
      "sill_height": 0,
      "axis": "y",
      "connects": [
        "a01-staff",
        "a01-lab"
      ],
      "kind": "pedestrian_door",
      "zone_id": "a01-lab"
    },
    {
      "id": "routing-r1-030",
      "building_id": "support",
      "x": 71.92,
      "y": 27.5,
      "width": 1.75,
      "height": 2.4,
      "sill_height": 0,
      "axis": "x",
      "connects": [
        "a01-staff",
        "a01-maint"
      ],
      "kind": "pedestrian_door",
      "zone_id": "a01-staff"
    },
    {
      "id": "routing-r1-031",
      "building_id": "support",
      "x": 71.92,
      "y": 27.5,
      "width": 1.75,
      "height": 2.4,
      "sill_height": 0,
      "axis": "x",
      "connects": [
        "a01-staff",
        "a01-maint"
      ],
      "kind": "pedestrian_door",
      "zone_id": "a01-maint"
    },
    {
      "id": "routing-r1-032",
      "building_id": "support",
      "x": 74.07,
      "y": 27.5,
      "width": 1.75,
      "height": 2.4,
      "sill_height": 0,
      "axis": "x",
      "connects": [
        "a01-staff",
        "a01-utility"
      ],
      "kind": "pedestrian_door",
      "zone_id": "a01-staff"
    },
    {
      "id": "routing-r1-033",
      "building_id": "support",
      "x": 74.07,
      "y": 27.5,
      "width": 1.75,
      "height": 2.4,
      "sill_height": 0,
      "axis": "x",
      "connects": [
        "a01-staff",
        "a01-utility"
      ],
      "kind": "pedestrian_door",
      "zone_id": "a01-maint"
    },
    {
      "id": "routing-r1-034",
      "building_id": "support",
      "x": 75.0,
      "y": 33.5,
      "width": 1.75,
      "height": 2.4,
      "sill_height": 0,
      "axis": "y",
      "connects": [
        "a01-staff",
        "a01-utility"
      ],
      "kind": "pedestrian_door",
      "zone_id": "a01-maint"
    },
    {
      "id": "routing-r1-035",
      "building_id": "support",
      "x": 75.0,
      "y": 33.5,
      "width": 1.75,
      "height": 2.4,
      "sill_height": 0,
      "axis": "y",
      "connects": [
        "a01-staff",
        "a01-utility"
      ],
      "kind": "pedestrian_door",
      "zone_id": "a01-utility"
    }
  ],
  "density": {
    "intent": "설비 바닥 838.00㎡ / 제조 구획 3325.10㎡ = 25.20%. 개별 생산 셀의 서비스 간격·공정 인계와 실제 원부자재·정비·검사 시설을 먼저 구성했다. 빈 바닥을 채우기 위한 임의 장식 상자를 사용하지 않는다.",
    "production_area_m2": 3325.1000000000004,
    "storage_area_m2": 1786.0,
    "support_area_m2": 1050.0,
    "circulation_area_m2": 0
  },
  "authoring_note": "개별 배치안. 형상·동작·피난·법정 안전설계 검수 및 시각 검수는 별도 수행해야 하며 공개 릴리스 승인 아님.",
  "routing_revision": 2,
  "routing_design_note": "S01/S02를 같은 남북 축의 2개 연속 급송 라인으로 정렬. 강판 스트립 급회전·지게차 표기를 제거."
}
