{
  "capstone": {
    "polygon": [
      [
        "0",
        "0"
      ],
      [
        "8",
        "0"
      ],
      [
        "8",
        "6"
      ],
      [
        "6",
        "6"
      ],
      [
        "6",
        "2"
      ],
      [
        "4",
        "2"
      ],
      [
        "4",
        "5"
      ],
      [
        "2",
        "5"
      ],
      [
        "2",
        "6"
      ],
      [
        "0",
        "6"
      ]
    ],
    "start": [
      "1",
      "5"
    ],
    "target": [
      "7",
      "5"
    ],
    "area": "38",
    "ears": [
      [
        1,
        2,
        3
      ],
      [
        1,
        3,
        4
      ],
      [
        0,
        1,
        4
      ],
      [
        0,
        4,
        5
      ],
      [
        9,
        0,
        5
      ],
      [
        5,
        6,
        7
      ],
      [
        9,
        5,
        7
      ],
      [
        7,
        8,
        9
      ]
    ],
    "ear_history": [
      {
        "ear": [
          1,
          2,
          3
        ],
        "remaining": [
          0,
          1,
          2,
          3,
          4,
          5,
          6,
          7,
          8,
          9
        ]
      },
      {
        "ear": [
          1,
          3,
          4
        ],
        "remaining": [
          0,
          1,
          3,
          4,
          5,
          6,
          7,
          8,
          9
        ]
      },
      {
        "ear": [
          0,
          1,
          4
        ],
        "remaining": [
          0,
          1,
          4,
          5,
          6,
          7,
          8,
          9
        ]
      },
      {
        "ear": [
          0,
          4,
          5
        ],
        "remaining": [
          0,
          4,
          5,
          6,
          7,
          8,
          9
        ]
      },
      {
        "ear": [
          9,
          0,
          5
        ],
        "remaining": [
          0,
          5,
          6,
          7,
          8,
          9
        ]
      },
      {
        "ear": [
          5,
          6,
          7
        ],
        "remaining": [
          5,
          6,
          7,
          8,
          9
        ]
      },
      {
        "ear": [
          9,
          5,
          7
        ],
        "remaining": [
          5,
          7,
          8,
          9
        ]
      }
    ],
    "ear_tests": 24,
    "portals": [
      [
        [
          "4",
          "2"
        ],
        [
          "0",
          "0"
        ]
      ],
      [
        [
          "6",
          "2"
        ],
        [
          "0",
          "0"
        ]
      ],
      [
        [
          "6",
          "2"
        ],
        [
          "8",
          "0"
        ]
      ],
      [
        [
          "6",
          "6"
        ],
        [
          "8",
          "0"
        ]
      ]
    ],
    "triangle_path": [
      4,
      3,
      2,
      1,
      0
    ],
    "funnel_path": [
      [
        "1",
        "5"
      ],
      [
        "4",
        "2"
      ],
      [
        "6",
        "2"
      ],
      [
        "7",
        "5"
      ]
    ],
    "funnel_history": [
      {
        "event": "initial",
        "tail": [
          [
            "1",
            "5"
          ]
        ],
        "L": [
          [
            "1",
            "5"
          ],
          [
            "4",
            "2"
          ]
        ],
        "R": [
          [
            "1",
            "5"
          ],
          [
            "0",
            "0"
          ]
        ]
      },
      {
        "event": "left 1",
        "tail": [
          [
            "1",
            "5"
          ]
        ],
        "L": [
          [
            "1",
            "5"
          ],
          [
            "4",
            "2"
          ],
          [
            "6",
            "2"
          ]
        ],
        "R": [
          [
            "1",
            "5"
          ],
          [
            "0",
            "0"
          ]
        ]
      },
      {
        "event": "right 2",
        "tail": [
          [
            "1",
            "5"
          ],
          [
            "4",
            "2"
          ]
        ],
        "L": [
          [
            "4",
            "2"
          ],
          [
            "6",
            "2"
          ]
        ],
        "R": [
          [
            "4",
            "2"
          ],
          [
            "8",
            "0"
          ]
        ]
      },
      {
        "event": "left 3",
        "tail": [
          [
            "1",
            "5"
          ],
          [
            "4",
            "2"
          ]
        ],
        "L": [
          [
            "4",
            "2"
          ],
          [
            "6",
            "2"
          ],
          [
            "6",
            "6"
          ]
        ],
        "R": [
          [
            "4",
            "2"
          ],
          [
            "8",
            "0"
          ]
        ]
      },
      {
        "event": "target",
        "tail": [
          [
            "1",
            "5"
          ],
          [
            "4",
            "2"
          ]
        ],
        "L": [
          [
            "4",
            "2"
          ],
          [
            "6",
            "2"
          ],
          [
            "7",
            "5"
          ]
        ],
        "R": [
          [
            "4",
            "2"
          ],
          [
            "8",
            "0"
          ]
        ]
      }
    ],
    "funnel_counts": {
      "pushes": 6,
      "pops": 3,
      "apex_moves": 1,
      "portals": 4,
      "replayed_portals": 0
    },
    "visibility_path": [
      [
        "1",
        "5"
      ],
      [
        "4",
        "2"
      ],
      [
        "6",
        "2"
      ],
      [
        "7",
        "5"
      ]
    ],
    "length": 9.404918347287664,
    "visibility_edges": 32,
    "monotone_diagonals": [
      [
        5,
        7
      ],
      [
        1,
        5
      ]
    ],
    "monotone_faces": [
      [
        5,
        6,
        7
      ],
      [
        1,
        2,
        3,
        4,
        5
      ],
      [
        5,
        7,
        8,
        9,
        0,
        1
      ]
    ],
    "partition_history": [
      {
        "vertex": 2,
        "type": "start",
        "helpers": {
          "2": 2
        },
        "diagonals": []
      },
      {
        "vertex": 3,
        "type": "regular",
        "helpers": {
          "3": 3
        },
        "diagonals": []
      },
      {
        "vertex": 8,
        "type": "start",
        "helpers": {
          "3": 3,
          "8": 8
        },
        "diagonals": []
      },
      {
        "vertex": 9,
        "type": "regular",
        "helpers": {
          "3": 3,
          "9": 9
        },
        "diagonals": []
      },
      {
        "vertex": 6,
        "type": "start",
        "helpers": {
          "3": 3,
          "9": 9,
          "6": 6
        },
        "diagonals": []
      },
      {
        "vertex": 7,
        "type": "merge",
        "helpers": {
          "3": 3,
          "9": 7
        },
        "diagonals": []
      },
      {
        "vertex": 4,
        "type": "regular",
        "helpers": {
          "9": 7,
          "4": 4
        },
        "diagonals": []
      },
      {
        "vertex": 5,
        "type": "merge",
        "helpers": {
          "9": 5
        },
        "diagonals": [
          [
            5,
            7
          ]
        ]
      },
      {
        "vertex": 1,
        "type": "regular",
        "helpers": {
          "9": 1
        },
        "diagonals": [
          [
            5,
            7
          ],
          [
            1,
            5
          ]
        ]
      },
      {
        "vertex": 0,
        "type": "end",
        "helpers": {},
        "diagonals": [
          [
            5,
            7
          ],
          [
            1,
            5
          ]
        ]
      }
    ],
    "monotone_triangles": [
      [
        5,
        6,
        7
      ],
      [
        4,
        2,
        3
      ],
      [
        1,
        4,
        5
      ],
      [
        1,
        2,
        4
      ],
      [
        7,
        8,
        9
      ],
      [
        5,
        7,
        9
      ],
      [
        0,
        1,
        5
      ],
      [
        0,
        5,
        9
      ]
    ],
    "stack_history": [
      {
        "vertex": 4,
        "before": [
          2,
          3
        ],
        "after": [
          2,
          4
        ],
        "triangles": [
          [
            4,
            2,
            3
          ]
        ]
      },
      {
        "vertex": 5,
        "before": [
          2,
          4
        ],
        "after": [
          2,
          4,
          5
        ],
        "triangles": [
          [
            4,
            2,
            3
          ]
        ]
      },
      {
        "vertex": 7,
        "before": [
          8,
          9
        ],
        "after": [
          9,
          7
        ],
        "triangles": [
          [
            7,
            8,
            9
          ]
        ]
      },
      {
        "vertex": 5,
        "before": [
          9,
          7
        ],
        "after": [
          9,
          5
        ],
        "triangles": [
          [
            7,
            8,
            9
          ],
          [
            5,
            7,
            9
          ]
        ]
      },
      {
        "vertex": 1,
        "before": [
          9,
          5
        ],
        "after": [
          9,
          5,
          1
        ],
        "triangles": [
          [
            7,
            8,
            9
          ],
          [
            5,
            7,
            9
          ]
        ]
      }
    ]
  },
  "clipping": {
    "states": [
      [
        [
          "-1",
          "1"
        ],
        [
          "2",
          "-1"
        ],
        [
          "5",
          "2"
        ],
        [
          "2",
          "4"
        ]
      ],
      [
        [
          "0",
          "1/3"
        ],
        [
          "2",
          "-1"
        ],
        [
          "5",
          "2"
        ],
        [
          "2",
          "4"
        ],
        [
          "0",
          "2"
        ]
      ],
      [
        [
          "2",
          "-1"
        ],
        [
          "3",
          "0"
        ],
        [
          "3",
          "10/3"
        ],
        [
          "2",
          "4"
        ],
        [
          "0",
          "2"
        ],
        [
          "0",
          "1/3"
        ]
      ],
      [
        [
          "3",
          "0"
        ],
        [
          "3",
          "10/3"
        ],
        [
          "2",
          "4"
        ],
        [
          "0",
          "2"
        ],
        [
          "0",
          "1/3"
        ],
        [
          "1/2",
          "0"
        ]
      ],
      [
        [
          "3",
          "2"
        ],
        [
          "0",
          "2"
        ],
        [
          "0",
          "1/3"
        ],
        [
          "1/2",
          "0"
        ],
        [
          "3",
          "0"
        ]
      ]
    ],
    "final": [
      [
        "3",
        "2"
      ],
      [
        "0",
        "2"
      ],
      [
        "0",
        "1/3"
      ],
      [
        "1/2",
        "0"
      ],
      [
        "3",
        "0"
      ]
    ],
    "area": "71/12",
    "degenerate_cases": {
      "singleton": [
        [
          "5",
          "2"
        ]
      ],
      "segment": [
        [
          "1",
          "1"
        ],
        [
          "1",
          "0"
        ]
      ],
      "empty": []
    }
  },
  "halfplanes": {
    "lines": [
      [
        [
          "0",
          "0"
        ],
        [
          "4",
          "0"
        ]
      ],
      [
        [
          "4",
          "0"
        ],
        [
          "5",
          "2"
        ]
      ],
      [
        [
          "5",
          "2"
        ],
        [
          "2",
          "5"
        ]
      ],
      [
        [
          "2",
          "5"
        ],
        [
          "-1",
          "3"
        ]
      ],
      [
        [
          "-1",
          "3"
        ],
        [
          "0",
          "0"
        ]
      ],
      [
        [
          "-3",
          "-2"
        ],
        [
          "1",
          "-1"
        ]
      ]
    ],
    "output": [
      [
        "0",
        "0"
      ],
      [
        "4",
        "0"
      ],
      [
        "5",
        "2"
      ],
      [
        "2",
        "5"
      ],
      [
        "-1",
        "3"
      ]
    ],
    "pops": 1,
    "history": [
      [
        [
          [
            "0",
            "0"
          ],
          [
            "4",
            "0"
          ]
        ]
      ],
      [
        [
          [
            "0",
            "0"
          ],
          [
            "4",
            "0"
          ]
        ],
        [
          [
            "-3",
            "-2"
          ],
          [
            "1",
            "-1"
          ]
        ]
      ],
      [
        [
          [
            "0",
            "0"
          ],
          [
            "4",
            "0"
          ]
        ],
        [
          [
            "4",
            "0"
          ],
          [
            "5",
            "2"
          ]
        ]
      ],
      [
        [
          [
            "0",
            "0"
          ],
          [
            "4",
            "0"
          ]
        ],
        [
          [
            "4",
            "0"
          ],
          [
            "5",
            "2"
          ]
        ],
        [
          [
            "5",
            "2"
          ],
          [
            "2",
            "5"
          ]
        ]
      ],
      [
        [
          [
            "0",
            "0"
          ],
          [
            "4",
            "0"
          ]
        ],
        [
          [
            "4",
            "0"
          ],
          [
            "5",
            "2"
          ]
        ],
        [
          [
            "5",
            "2"
          ],
          [
            "2",
            "5"
          ]
        ],
        [
          [
            "2",
            "5"
          ],
          [
            "-1",
            "3"
          ]
        ]
      ],
      [
        [
          [
            "0",
            "0"
          ],
          [
            "4",
            "0"
          ]
        ],
        [
          [
            "4",
            "0"
          ],
          [
            "5",
            "2"
          ]
        ],
        [
          [
            "5",
            "2"
          ],
          [
            "2",
            "5"
          ]
        ],
        [
          [
            "2",
            "5"
          ],
          [
            "-1",
            "3"
          ]
        ],
        [
          [
            "-1",
            "3"
          ],
          [
            "0",
            "0"
          ]
        ]
      ]
    ],
    "concurrent_boundary_regression": {
      "lines": [
        [
          [
            "0",
            "0"
          ],
          [
            "4",
            "0"
          ]
        ],
        [
          [
            "4",
            "0"
          ],
          [
            "0",
            "4"
          ]
        ],
        [
          [
            "0",
            "4"
          ],
          [
            "0",
            "0"
          ]
        ],
        [
          [
            "0",
            "0"
          ],
          [
            "1",
            "-2"
          ]
        ]
      ],
      "output": [
        [
          "0",
          "0"
        ],
        [
          "4",
          "0"
        ],
        [
          "0",
          "4"
        ]
      ],
      "distinct_vertices": 3
    }
  },
  "calipers": {
    "polygon": [
      [
        "-1",
        "3"
      ],
      [
        "0",
        "0"
      ],
      [
        "4",
        "0"
      ],
      [
        "6",
        "2"
      ],
      [
        "4",
        "5"
      ],
      [
        "1",
        "6"
      ]
    ],
    "squared_diameter": "50",
    "pairs": [
      [
        0,
        3
      ],
      [
        0,
        3
      ]
    ],
    "history": [
      [
        0,
        3,
        [
          3
        ]
      ],
      [
        1,
        5,
        [
          5
        ]
      ],
      [
        2,
        5,
        [
          5
        ]
      ],
      [
        3,
        1,
        [
          1
        ]
      ],
      [
        4,
        1,
        [
          1
        ]
      ],
      [
        5,
        3,
        [
          3
        ]
      ]
    ],
    "advances": 8
  },
  "minkowski": {
    "obstacle": [
      [
        "4",
        "2"
      ],
      [
        "7",
        "2"
      ],
      [
        "7",
        "4"
      ],
      [
        "4",
        "4"
      ]
    ],
    "robot": [
      [
        "0",
        "0"
      ],
      [
        "2",
        "0"
      ],
      [
        "0",
        "1"
      ]
    ],
    "negative_robot": [
      [
        "-2",
        "0"
      ],
      [
        "0",
        "-1"
      ],
      [
        "0",
        "0"
      ]
    ],
    "sum": [
      [
        "2",
        "2"
      ],
      [
        "4",
        "1"
      ],
      [
        "7",
        "1"
      ],
      [
        "7",
        "4"
      ],
      [
        "2",
        "4"
      ]
    ],
    "merge_history": [
      [
        0,
        0,
        [
          "4",
          "1"
        ]
      ],
      [
        1,
        0,
        [
          "7",
          "1"
        ]
      ],
      [
        2,
        1,
        [
          "7",
          "4"
        ]
      ],
      [
        3,
        2,
        [
          "2",
          "4"
        ]
      ],
      [
        4,
        2,
        [
          "2",
          "2"
        ]
      ]
    ]
  },
  "obstacle_visibility": {
    "obstacles": [
      [
        [
          "2",
          "-3"
        ],
        [
          "3",
          "-3"
        ],
        [
          "3",
          "1"
        ],
        [
          "2",
          "1"
        ]
      ],
      [
        [
          "5",
          "-1"
        ],
        [
          "6",
          "-1"
        ],
        [
          "6",
          "3"
        ],
        [
          "5",
          "3"
        ]
      ]
    ],
    "path": [
      [
        "0",
        "0"
      ],
      [
        "2",
        "1"
      ],
      [
        "3",
        "1"
      ],
      [
        "5",
        "-1"
      ],
      [
        "6",
        "-1"
      ],
      [
        "8",
        "0"
      ]
    ],
    "length": 9.30056307974577,
    "edge_count": 20
  },
  "dcel": {
    "before": {
      "AB": {
        "twin": "BA",
        "next": "BC",
        "prev": "CA",
        "face": "f1"
      },
      "BC": {
        "twin": "CB",
        "next": "CA",
        "prev": "AB",
        "face": "f1"
      },
      "CA": {
        "twin": "AC",
        "next": "AB",
        "prev": "BC",
        "face": "f1"
      },
      "AC": {
        "twin": "CA",
        "next": "CD",
        "prev": "DA",
        "face": "f2"
      },
      "CD": {
        "twin": "DC",
        "next": "DA",
        "prev": "AC",
        "face": "f2"
      },
      "DA": {
        "twin": "AD",
        "next": "AC",
        "prev": "CD",
        "face": "f2"
      },
      "BA": {
        "twin": "AB",
        "next": "AD",
        "prev": "CB",
        "face": "out"
      },
      "AD": {
        "twin": "DA",
        "next": "DC",
        "prev": "BA",
        "face": "out"
      },
      "DC": {
        "twin": "CD",
        "next": "CB",
        "prev": "AD",
        "face": "out"
      },
      "CB": {
        "twin": "BC",
        "next": "BA",
        "prev": "DC",
        "face": "out"
      }
    },
    "after": {
      "AB": {
        "twin": "BA",
        "next": "BC",
        "prev": "DA",
        "face": "inside"
      },
      "BC": {
        "twin": "CB",
        "next": "CD",
        "prev": "AB",
        "face": "inside"
      },
      "CD": {
        "twin": "DC",
        "next": "DA",
        "prev": "BC",
        "face": "inside"
      },
      "DA": {
        "twin": "AD",
        "next": "AB",
        "prev": "CD",
        "face": "inside"
      },
      "BA": {
        "twin": "AB",
        "next": "AD",
        "prev": "CB",
        "face": "out"
      },
      "AD": {
        "twin": "DA",
        "next": "DC",
        "prev": "BA",
        "face": "out"
      },
      "DC": {
        "twin": "CD",
        "next": "CB",
        "prev": "AD",
        "face": "out"
      },
      "CB": {
        "twin": "BC",
        "next": "BA",
        "prev": "DC",
        "face": "out"
      }
    }
  },
  "random_checks": {
    "seed": 1931,
    "polygon_cases": 99,
    "generated_cases": 100,
    "skipped": [
      {
        "case": 62,
        "reason": "non-simple generated polygon",
        "intersecting_edges": [
          1,
          5
        ]
      }
    ],
    "funnel_vs_visibility": "passed",
    "partition_and_stack_area_counts": "passed",
    "calipers_vs_all_pairs": "passed",
    "max_funnel_push_plus_pop": 28,
    "no_portal_replay": true,
    "minkowski_vs_all_vertex_sums": 40
  }
}
