{
 "method": {
  "alignment": "rebuild moved so its walls' bounding-box centre lies on the answer key's",
  "halfTurn": false,
  "maxMatchDistanceMetres": 4,
  "matching": "per class, nearest part centres first, each part once",
  "classes": {
   "shelf": "rack",
   "conveyor": "bench",
   "cabinet": "bench"
  },
  "positionErrorOverall": "matched parts of every class except zones, windows and rooflights"
 },
 "hall": {
  "answer": {
   "width": 60,
   "depth": 40,
   "area": 2400,
   "wallHeight": 9
  },
  "rebuild": {
   "width": 60,
   "depth": 40,
   "area": 2400,
   "wallHeight": 8.6
  },
  "error": {
   "width": 0,
   "depth": 0,
   "widthPercent": 0,
   "depthPercent": 0,
   "areaPercent": 0,
   "wallHeight": -0.4
  }
 },
 "columns": {
  "answer": {
   "count": 24,
   "xLines": [
    0.5,
    7.5,
    15,
    22.5,
    30,
    37.5,
    45,
    52.5,
    59.5
   ],
   "zLines": [
    0.5,
    10,
    20,
    30,
    39.5
   ],
   "xSpacing": {
    "n": 8,
    "median": 7.5,
    "p95": 7.5,
    "max": 7.5
   },
   "zSpacing": {
    "n": 4,
    "median": 9.75,
    "p95": 10,
    "max": 10
   }
  },
  "rebuild": {
   "count": 24,
   "xLines": [
    0.4,
    7.54,
    15.02,
    22.52,
    30.02,
    37.5,
    44.98,
    52.46,
    59.41
   ],
   "zLines": [
    0.38,
    10.04,
    20.01,
    30,
    39.63
   ],
   "xSpacing": {
    "n": 8,
    "median": 7.48,
    "p95": 7.5,
    "max": 7.5
   },
   "zSpacing": {
    "n": 4,
    "median": 9.81,
    "p95": 9.99,
    "max": 9.99
   }
  }
 },
 "openings": {
  "answer": [
   {
    "id": "dock-1",
    "kind": "dock_door",
    "x": 43,
    "z": 39.85,
    "width": 3,
    "height": 3.5
   },
   {
    "id": "dock-2",
    "kind": "dock_door",
    "x": 49,
    "z": 39.85,
    "width": 3,
    "height": 3.5
   },
   {
    "id": "dock-3",
    "kind": "dock_door",
    "x": 55,
    "z": 39.85,
    "width": 3,
    "height": 3.5
   },
   {
    "id": "door-entrance",
    "kind": "door",
    "x": 5,
    "z": 39.85,
    "width": 1,
    "height": 2.1
   },
   {
    "id": "door-office",
    "kind": "door",
    "x": 9.5,
    "z": 31.93,
    "width": 1,
    "height": 2.1
   },
   {
    "id": "door-fire-n",
    "kind": "door",
    "x": 26,
    "z": 0.15,
    "width": 1.2,
    "height": 2.1
   },
   {
    "id": "door-fire-e",
    "kind": "door",
    "x": 59.85,
    "z": 12,
    "width": 1.2,
    "height": 2.1
   }
  ],
  "rebuild": [
   {
    "id": "dock-1",
    "kind": "dock_door",
    "x": 42.99,
    "z": 39.81,
    "width": 2.99,
    "height": 3
   },
   {
    "id": "dock-2",
    "kind": "dock_door",
    "x": 48.97,
    "z": 39.81,
    "width": 2.98,
    "height": 3
   },
   {
    "id": "dock-3",
    "kind": "dock_door",
    "x": 54.96,
    "z": 39.81,
    "width": 2.99,
    "height": 3
   },
   {
    "id": "door-office-s",
    "kind": "door",
    "x": 5.05,
    "z": 39.81,
    "width": 0.96,
    "height": 2.1
   },
   {
    "id": "door-office-n",
    "kind": "door",
    "x": 9.55,
    "z": 31.93,
    "width": 0.96,
    "height": 2.1
   },
   {
    "id": "door-n",
    "kind": "door",
    "x": 26.02,
    "z": 0.19,
    "width": 1.16,
    "height": 2.1
   },
   {
    "id": "door-e",
    "kind": "door",
    "x": 59.81,
    "z": 12.03,
    "width": 1.2,
    "height": 2.1
   }
  ]
 },
 "counts": {
  "byClass": [
   {
    "class": "bench",
    "answer": 8,
    "rebuild": 8
   },
   {
    "class": "column",
    "answer": 24,
    "rebuild": 24
   },
   {
    "class": "desk",
    "answer": 2,
    "rebuild": 2
   },
   {
    "class": "dock_door",
    "answer": 3,
    "rebuild": 3
   },
   {
    "class": "dock_leveler",
    "answer": 3,
    "rebuild": 3
   },
   {
    "class": "door",
    "answer": 4,
    "rebuild": 4
   },
   {
    "class": "partition",
    "answer": 2,
    "rebuild": 0
   },
   {
    "class": "rack",
    "answer": 16,
    "rebuild": 16
   },
   {
    "class": "wall",
    "answer": 4,
    "rebuild": 6
   },
   {
    "class": "zone",
    "answer": 8,
    "rebuild": 8
   }
  ],
  "byKind": [
   {
    "kind": "cabinet",
    "answer": 0,
    "rebuild": 1
   },
   {
    "kind": "column",
    "answer": 24,
    "rebuild": 24
   },
   {
    "kind": "conveyor",
    "answer": 3,
    "rebuild": 0
   },
   {
    "kind": "desk",
    "answer": 2,
    "rebuild": 2
   },
   {
    "kind": "dock_door",
    "answer": 3,
    "rebuild": 3
   },
   {
    "kind": "dock_leveler",
    "answer": 3,
    "rebuild": 3
   },
   {
    "kind": "door",
    "answer": 4,
    "rebuild": 4
   },
   {
    "kind": "partition",
    "answer": 2,
    "rebuild": 0
   },
   {
    "kind": "rack",
    "answer": 16,
    "rebuild": 4
   },
   {
    "kind": "shelf",
    "answer": 0,
    "rebuild": 12
   },
   {
    "kind": "table",
    "answer": 5,
    "rebuild": 0
   },
   {
    "kind": "wall",
    "answer": 4,
    "rebuild": 6
   },
   {
    "kind": "workbench",
    "answer": 0,
    "rebuild": 7
   },
   {
    "kind": "zone",
    "answer": 8,
    "rebuild": 8
   }
  ],
  "parts": {
   "answer": 74,
   "rebuild": 74
  }
 },
 "overall": {
  "matched": 60,
  "positionError": {
   "n": 60,
   "median": 0.07,
   "p95": 0.14,
   "max": 0.17
  },
  "turnError": {
   "n": 60,
   "median": 0,
   "p95": 90,
   "max": 90
  },
  "machineFacingError": null
 },
 "classes": {
  "column": {
   "answer": 24,
   "rebuild": 24,
   "matched": 24,
   "missing": 0,
   "extra": 0,
   "positionError": {
    "n": 24,
    "median": 0.12,
    "p95": 0.17,
    "max": 0.17
   },
   "turnError": {
    "n": 24,
    "median": 0,
    "p95": 90,
    "max": 90
   },
   "sizeError": {
    "long": {
     "n": 24,
     "median": 0.34,
     "p95": 0.4,
     "max": 0.4
    },
    "short": {
     "n": 24,
     "median": 0.06,
     "p95": 0.36,
     "max": 0.4
    },
    "height": {
     "n": 24,
     "median": 0,
     "p95": 0,
     "max": 0
    }
   },
   "pairs": [
    {
     "answer": "col-24",
     "answerLabel": "Column 24",
     "rebuild": "column-115",
     "rebuildLabel": "Perimeter column",
     "distance": 0.09
    },
    {
     "answer": "col-23",
     "answerLabel": "Column 23",
     "rebuild": "column-113",
     "rebuildLabel": "Perimeter column",
     "distance": 0.09
    },
    {
     "answer": "col-3",
     "answerLabel": "Column 3",
     "rebuild": "column-110",
     "rebuildLabel": "Perimeter column",
     "distance": 0.09
    },
    {
     "answer": "col-4",
     "answerLabel": "Column 4",
     "rebuild": "column-114",
     "rebuildLabel": "Perimeter column",
     "distance": 0.09
    },
    {
     "answer": "col-5",
     "answerLabel": "Column 5",
     "rebuild": "column-111",
     "rebuildLabel": "Perimeter column",
     "distance": 0.09
    },
    {
     "answer": "col-21",
     "answerLabel": "Column 21",
     "rebuild": "column-103",
     "rebuildLabel": "Perimeter column",
     "distance": 0.1
    },
    {
     "answer": "col-22",
     "answerLabel": "Column 22",
     "rebuild": "column-112",
     "rebuildLabel": "Perimeter column",
     "distance": 0.1
    },
    {
     "answer": "col-20",
     "answerLabel": "Column 20",
     "rebuild": "column-100",
     "rebuildLabel": "Perimeter column",
     "distance": 0.1
    },
    {
     "answer": "col-19",
     "answerLabel": "Column 19",
     "rebuild": "column-99",
     "rebuildLabel": "Perimeter column",
     "distance": 0.1
    },
    {
     "answer": "col-6",
     "answerLabel": "Column 6",
     "rebuild": "column-106",
     "rebuildLabel": "Perimeter column",
     "distance": 0.11
    },
    {
     "answer": "col-7",
     "answerLabel": "Column 7",
     "rebuild": "column-107",
     "rebuildLabel": "Perimeter column",
     "distance": 0.11
    },
    {
     "answer": "col-8",
     "answerLabel": "Column 8",
     "rebuild": "column-108",
     "rebuildLabel": "Perimeter column",
     "distance": 0.12
    },
    {
     "answer": "col-2",
     "answerLabel": "Column 2",
     "rebuild": "column-105",
     "rebuildLabel": "Perimeter column",
     "distance": 0.12
    },
    {
     "answer": "col-15",
     "answerLabel": "Column 15",
     "rebuild": "column-97",
     "rebuildLabel": "Perimeter column",
     "distance": 0.13
    },
    {
     "answer": "col-16",
     "answerLabel": "Column 16",
     "rebuild": "column-s-44.747",
     "rebuildLabel": "Perimeter column",
     "distance": 0.13
    },
    {
     "answer": "col-12",
     "answerLabel": "Column 12",
     "rebuild": "column-95",
     "rebuildLabel": "Perimeter column",
     "distance": 0.13
    },
    {
     "answer": "col-13",
     "answerLabel": "Column 13",
     "rebuild": "column-102",
     "rebuildLabel": "Perimeter column",
     "distance": 0.13
    },
    {
     "answer": "col-14",
     "answerLabel": "Column 14",
     "rebuild": "column-96",
     "rebuildLabel": "Perimeter column",
     "distance": 0.13
    },
    {
     "answer": "col-11",
     "answerLabel": "Column 11",
     "rebuild": "column-98",
     "rebuildLabel": "Perimeter column",
     "distance": 0.14
    },
    {
     "answer": "col-17",
     "answerLabel": "Column 17",
     "rebuild": "column-s-52.226",
     "rebuildLabel": "Perimeter column",
     "distance": 0.14
    },
    {
     "answer": "col-1",
     "answerLabel": "Column 1",
     "rebuild": "column-88",
     "rebuildLabel": "Perimeter column",
     "distance": 0.14
    },
    {
     "answer": "col-10",
     "answerLabel": "Column 10",
     "rebuild": "column-89",
     "rebuildLabel": "Perimeter column",
     "distance": 0.16
    },
    {
     "answer": "col-9",
     "answerLabel": "Column 9",
     "rebuild": "column-91",
     "rebuildLabel": "Perimeter column",
     "distance": 0.17
    },
    {
     "answer": "col-18",
     "answerLabel": "Column 18",
     "rebuild": "column-90",
     "rebuildLabel": "Perimeter column",
     "distance": 0.17
    }
   ],
   "missingParts": [],
   "extraParts": []
  },
  "door": {
   "answer": 4,
   "rebuild": 4,
   "matched": 4,
   "missing": 0,
   "extra": 0,
   "positionError": {
    "n": 4,
    "median": 0.05,
    "p95": 0.07,
    "max": 0.07
   },
   "turnError": {
    "n": 4,
    "median": 0,
    "p95": 0,
    "max": 0
   },
   "sizeError": {
    "long": {
     "n": 4,
     "median": 0.04,
     "p95": 0.04,
     "max": 0.04
    },
    "short": {
     "n": 4,
     "median": 0.08,
     "p95": 0.08,
     "max": 0.08
    },
    "height": {
     "n": 4,
     "median": 0,
     "p95": 0,
     "max": 0
    }
   },
   "pairs": [
    {
     "answer": "door-fire-n",
     "answerLabel": "FIRE EXIT",
     "rebuild": "door-n",
     "rebuildLabel": "North personnel door",
     "distance": 0.04
    },
    {
     "answer": "door-office",
     "answerLabel": "Office door",
     "rebuild": "door-office-n",
     "rebuildLabel": "Office internal door",
     "distance": 0.05
    },
    {
     "answer": "door-fire-e",
     "answerLabel": "FIRE EXIT 2",
     "rebuild": "door-e",
     "rebuildLabel": "East personnel door",
     "distance": 0.05
    },
    {
     "answer": "door-entrance",
     "answerLabel": "ENTRANCE",
     "rebuild": "door-office-s",
     "rebuildLabel": "Office external door",
     "distance": 0.07
    }
   ],
   "missingParts": [],
   "extraParts": []
  },
  "dock_door": {
   "answer": 3,
   "rebuild": 3,
   "matched": 3,
   "missing": 0,
   "extra": 0,
   "positionError": {
    "n": 3,
    "median": 0.05,
    "p95": 0.06,
    "max": 0.06
   },
   "turnError": {
    "n": 3,
    "median": 0,
    "p95": 0,
    "max": 0
   },
   "sizeError": {
    "long": {
     "n": 3,
     "median": 0.01,
     "p95": 0.02,
     "max": 0.02
    },
    "short": {
     "n": 3,
     "median": 0.08,
     "p95": 0.08,
     "max": 0.08
    },
    "height": {
     "n": 3,
     "median": 0.5,
     "p95": 0.5,
     "max": 0.5
    }
   },
   "pairs": [
    {
     "answer": "dock-1",
     "answerLabel": "DOCK 1",
     "rebuild": "dock-1",
     "rebuildLabel": "Dock door 1",
     "distance": 0.04
    },
    {
     "answer": "dock-2",
     "answerLabel": "DOCK 2",
     "rebuild": "dock-2",
     "rebuildLabel": "Dock door 2",
     "distance": 0.05
    },
    {
     "answer": "dock-3",
     "answerLabel": "DOCK 3",
     "rebuild": "dock-3",
     "rebuildLabel": "Dock door 3",
     "distance": 0.06
    }
   ],
   "missingParts": [],
   "extraParts": []
  },
  "partition": {
   "answer": 2,
   "rebuild": 0,
   "matched": 0,
   "missing": 2,
   "extra": 0,
   "positionError": null,
   "turnError": null,
   "sizeError": {
    "long": null,
    "short": null,
    "height": null
   },
   "pairs": [],
   "missingParts": [
    {
     "id": "office-n",
     "kind": "partition",
     "label": "Office partition N",
     "centre": {
      "x": 6.15,
      "z": 31.93
     },
     "size": [
      11.7,
      0.15,
      3
     ]
    },
    {
     "id": "office-e",
     "kind": "partition",
     "label": "Office partition E",
     "centre": {
      "x": 11.92,
      "z": 35.85
     },
     "size": [
      0.15,
      7.7,
      3
     ]
    }
   ],
   "extraParts": []
  },
  "rack": {
   "answer": 16,
   "rebuild": 16,
   "matched": 16,
   "missing": 0,
   "extra": 0,
   "positionError": {
    "n": 16,
    "median": 0.07,
    "p95": 0.07,
    "max": 0.07
   },
   "turnError": {
    "n": 16,
    "median": 0,
    "p95": 0,
    "max": 0
   },
   "sizeError": {
    "long": {
     "n": 16,
     "median": 0,
     "p95": 0,
     "max": 0
    },
    "short": {
     "n": 16,
     "median": 0,
     "p95": 0,
     "max": 0
    },
    "height": {
     "n": 16,
     "median": 0,
     "p95": 0,
     "max": 0
    }
   },
   "pairs": [
    {
     "answer": "pr-2",
     "answerLabel": "PR2",
     "rebuild": "PR2",
     "rebuildLabel": "PR2",
     "distance": 0.05
    },
    {
     "answer": "pr-3",
     "answerLabel": "PR3",
     "rebuild": "PR3",
     "rebuildLabel": "PR3",
     "distance": 0.05
    },
    {
     "answer": "pr-4",
     "answerLabel": "PR4",
     "rebuild": "PR4",
     "rebuildLabel": "PR4",
     "distance": 0.05
    },
    {
     "answer": "pr-1",
     "answerLabel": "PR1",
     "rebuild": "PR1",
     "rebuildLabel": "PR1",
     "distance": 0.05
    },
    {
     "answer": "shelf-r12",
     "answerLabel": "R12",
     "rebuild": "R12",
     "rebuildLabel": "R12",
     "distance": 0.07
    },
    {
     "answer": "shelf-r01",
     "answerLabel": "R01",
     "rebuild": "R01",
     "rebuildLabel": "R01",
     "distance": 0.07
    },
    {
     "answer": "shelf-r02",
     "answerLabel": "R02",
     "rebuild": "R02",
     "rebuildLabel": "R02",
     "distance": 0.07
    },
    {
     "answer": "shelf-r03",
     "answerLabel": "R03",
     "rebuild": "R03",
     "rebuildLabel": "R03",
     "distance": 0.07
    },
    {
     "answer": "shelf-r04",
     "answerLabel": "R04",
     "rebuild": "R04",
     "rebuildLabel": "R04",
     "distance": 0.07
    },
    {
     "answer": "shelf-r05",
     "answerLabel": "R05",
     "rebuild": "R05",
     "rebuildLabel": "R05",
     "distance": 0.07
    },
    {
     "answer": "shelf-r06",
     "answerLabel": "R06",
     "rebuild": "R06",
     "rebuildLabel": "R06",
     "distance": 0.07
    },
    {
     "answer": "shelf-r07",
     "answerLabel": "R07",
     "rebuild": "R07",
     "rebuildLabel": "R07",
     "distance": 0.07
    },
    {
     "answer": "shelf-r08",
     "answerLabel": "R08",
     "rebuild": "R08",
     "rebuildLabel": "R08",
     "distance": 0.07
    },
    {
     "answer": "shelf-r09",
     "answerLabel": "R09",
     "rebuild": "R09",
     "rebuildLabel": "R09",
     "distance": 0.07
    },
    {
     "answer": "shelf-r10",
     "answerLabel": "R10",
     "rebuild": "R10",
     "rebuildLabel": "R10",
     "distance": 0.07
    },
    {
     "answer": "shelf-r11",
     "answerLabel": "R11",
     "rebuild": "R11",
     "rebuildLabel": "R11",
     "distance": 0.07
    }
   ],
   "missingParts": [],
   "extraParts": []
  },
  "bench": {
   "answer": 8,
   "rebuild": 8,
   "matched": 8,
   "missing": 0,
   "extra": 0,
   "positionError": {
    "n": 8,
    "median": 0.03,
    "p95": 0.07,
    "max": 0.07
   },
   "turnError": {
    "n": 8,
    "median": 0,
    "p95": 0,
    "max": 0
   },
   "sizeError": {
    "long": {
     "n": 8,
     "median": 0,
     "p95": 0.02,
     "max": 0.02
    },
    "short": {
     "n": 8,
     "median": 0,
     "p95": 0,
     "max": 0
    },
    "height": {
     "n": 8,
     "median": 0.05,
     "p95": 0.35,
     "max": 0.35
    }
   },
   "pairs": [
    {
     "answer": "pack-1",
     "answerLabel": "PACK 1",
     "rebuild": "pack-1",
     "rebuildLabel": "PACK 1",
     "distance": 0
    },
    {
     "answer": "pack-2",
     "answerLabel": "PACK 2",
     "rebuild": "pack-2",
     "rebuildLabel": "PACK 2",
     "distance": 0
    },
    {
     "answer": "pack-3",
     "answerLabel": "PACK 3",
     "rebuild": "pack-3",
     "rebuildLabel": "PACK 3",
     "distance": 0
    },
    {
     "answer": "pack-4",
     "answerLabel": "PACK 4",
     "rebuild": "pack-4",
     "rebuildLabel": "PACK 4",
     "distance": 0
    },
    {
     "answer": "table-meet",
     "answerLabel": "Meeting table",
     "rebuild": "office-cabinet",
     "rebuildLabel": "Office cabinet (unlabelled)",
     "distance": 0.05
    },
    {
     "answer": "pd-a",
     "answerLabel": "P&D A",
     "rebuild": "pd-a",
     "rebuildLabel": "P&D A",
     "distance": 0.07
    },
    {
     "answer": "pd-b",
     "answerLabel": "P&D B",
     "rebuild": "pd-b",
     "rebuildLabel": "P&D B",
     "distance": 0.07
    },
    {
     "answer": "pd-c",
     "answerLabel": "P&D C",
     "rebuild": "pd-c",
     "rebuildLabel": "P&D C",
     "distance": 0.07
    }
   ],
   "missingParts": [],
   "extraParts": []
  },
  "dock_leveler": {
   "answer": 3,
   "rebuild": 3,
   "matched": 3,
   "missing": 0,
   "extra": 0,
   "positionError": {
    "n": 3,
    "median": 0.04,
    "p95": 0.04,
    "max": 0.04
   },
   "turnError": {
    "n": 3,
    "median": 0,
    "p95": 0,
    "max": 0
   },
   "sizeError": {
    "long": {
     "n": 3,
     "median": 0.04,
     "p95": 0.04,
     "max": 0.04
    },
    "short": {
     "n": 3,
     "median": 0.01,
     "p95": 0.01,
     "max": 0.01
    },
    "height": {
     "n": 3,
     "median": 0,
     "p95": 0,
     "max": 0
    }
   },
   "pairs": [
    {
     "answer": "leveller-1",
     "answerLabel": "Leveller 1",
     "rebuild": "leveller-1",
     "rebuildLabel": "Leveller 1",
     "distance": 0.04
    },
    {
     "answer": "leveller-2",
     "answerLabel": "Leveller 2",
     "rebuild": "leveller-2",
     "rebuildLabel": "Leveller 2",
     "distance": 0.04
    },
    {
     "answer": "leveller-3",
     "answerLabel": "Leveller 3",
     "rebuild": "leveller-3",
     "rebuildLabel": "Leveller 3",
     "distance": 0.04
    }
   ],
   "missingParts": [],
   "extraParts": []
  },
  "zone": {
   "answer": 8,
   "rebuild": 8,
   "matched": 8,
   "missing": 0,
   "extra": 0,
   "positionError": {
    "n": 8,
    "median": 0.06,
    "p95": 0.14,
    "max": 0.14
   },
   "turnError": {
    "n": 8,
    "median": 0,
    "p95": 0,
    "max": 0
   },
   "sizeError": {
    "long": {
     "n": 8,
     "median": 0,
     "p95": 0,
     "max": 0
    },
    "short": {
     "n": 8,
     "median": 0,
     "p95": 0,
     "max": 0
    },
    "height": {
     "n": 8,
     "median": 0,
     "p95": 0,
     "max": 0
    }
   },
   "pairs": [
    {
     "answer": "zone-packing",
     "answerLabel": "PACKING",
     "rebuild": "packing",
     "rebuildLabel": "PACKING",
     "distance": 0.01
    },
    {
     "answer": "zone-staging",
     "answerLabel": "OUTBOUND STAGING",
     "rebuild": "outbound",
     "rebuildLabel": "OUTBOUND STAGING",
     "distance": 0.01
    },
    {
     "answer": "zone-charge",
     "answerLabel": "POSSIBLE AMR CHARGING",
     "rebuild": "charging",
     "rebuildLabel": "POSSIBLE AMR CHARGING",
     "distance": 0.04
    },
    {
     "answer": "zone-reserve",
     "answerLabel": "RESERVE PALLET STORAGE",
     "rebuild": "reserve",
     "rebuildLabel": "RESERVE PALLET STORAGE",
     "distance": 0.04
    },
    {
     "answer": "zone-pick-a",
     "answerLabel": "PICK ZONE A",
     "rebuild": "zone-a",
     "rebuildLabel": "PICK ZONE A",
     "distance": 0.07
    },
    {
     "answer": "zone-pick-b",
     "answerLabel": "PICK ZONE B",
     "rebuild": "zone-b",
     "rebuildLabel": "PICK ZONE B",
     "distance": 0.07
    },
    {
     "answer": "zone-pick-c",
     "answerLabel": "PICK ZONE C",
     "rebuild": "zone-c",
     "rebuildLabel": "PICK ZONE C",
     "distance": 0.07
    },
    {
     "answer": "zone-office",
     "answerLabel": "OFFICE",
     "rebuild": "office",
     "rebuildLabel": "OFFICE",
     "distance": 0.14
    }
   ],
   "missingParts": [],
   "extraParts": []
  },
  "desk": {
   "answer": 2,
   "rebuild": 2,
   "matched": 2,
   "missing": 0,
   "extra": 0,
   "positionError": {
    "n": 2,
    "median": 0.06,
    "p95": 0.06,
    "max": 0.06
   },
   "turnError": {
    "n": 2,
    "median": 0,
    "p95": 0,
    "max": 0
   },
   "sizeError": {
    "long": {
     "n": 2,
     "median": 0.01,
     "p95": 0.01,
     "max": 0.01
    },
    "short": {
     "n": 2,
     "median": 0.01,
     "p95": 0.01,
     "max": 0.01
    },
    "height": {
     "n": 2,
     "median": 0,
     "p95": 0,
     "max": 0
    }
   },
   "pairs": [
    {
     "answer": "desk-2",
     "answerLabel": "Desk 2",
     "rebuild": "desk-2",
     "rebuildLabel": "Desk 2",
     "distance": 0.06
    },
    {
     "answer": "desk-1",
     "answerLabel": "Desk 1",
     "rebuild": "desk-1",
     "rebuildLabel": "Desk 1",
     "distance": 0.06
    }
   ],
   "missingParts": [],
   "extraParts": []
  }
 },
 "relativeToWalls": {
  "about": "part centres stretched by the ratio of the two halls' wall boxes before matching: the layout relative to the walls, with the hall size error taken out",
  "scale": {
   "x": 1,
   "z": 1
  },
  "matched": 60,
  "positionError": {
   "n": 60,
   "median": 0.07,
   "p95": 0.14,
   "max": 0.17
  },
  "classes": {
   "column": {
    "matched": 24,
    "missing": 0,
    "extra": 0,
    "positionError": {
     "n": 24,
     "median": 0.12,
     "p95": 0.17,
     "max": 0.17
    }
   },
   "door": {
    "matched": 4,
    "missing": 0,
    "extra": 0,
    "positionError": {
     "n": 4,
     "median": 0.05,
     "p95": 0.07,
     "max": 0.07
    }
   },
   "dock_door": {
    "matched": 3,
    "missing": 0,
    "extra": 0,
    "positionError": {
     "n": 3,
     "median": 0.05,
     "p95": 0.06,
     "max": 0.06
    }
   },
   "partition": {
    "matched": 0,
    "missing": 2,
    "extra": 0,
    "positionError": null
   },
   "rack": {
    "matched": 16,
    "missing": 0,
    "extra": 0,
    "positionError": {
     "n": 16,
     "median": 0.07,
     "p95": 0.07,
     "max": 0.07
    }
   },
   "bench": {
    "matched": 8,
    "missing": 0,
    "extra": 0,
    "positionError": {
     "n": 8,
     "median": 0.03,
     "p95": 0.07,
     "max": 0.07
    }
   },
   "dock_leveler": {
    "matched": 3,
    "missing": 0,
    "extra": 0,
    "positionError": {
     "n": 3,
     "median": 0.04,
     "p95": 0.04,
     "max": 0.04
    }
   },
   "zone": {
    "matched": 8,
    "missing": 0,
    "extra": 0,
    "positionError": {
     "n": 8,
     "median": 0.06,
     "p95": 0.14,
     "max": 0.14
    }
   },
   "desk": {
    "matched": 2,
    "missing": 0,
    "extra": 0,
    "positionError": {
     "n": 2,
     "median": 0.06,
     "p95": 0.06,
     "max": 0.06
    }
   }
  }
 }
}
