{
  "jobs": [
    {
      "id": "A",
      "start": 0,
      "end": 3,
      "value": 5
    },
    {
      "id": "B",
      "start": 3,
      "end": 5,
      "value": 5
    },
    {
      "id": "C",
      "start": 0,
      "end": 5,
      "value": 11
    }
  ],
  "solution": {
    "sorted_jobs": [
      {
        "id": "A",
        "start": 0,
        "end": 3,
        "value": 5
      },
      {
        "id": "C",
        "start": 0,
        "end": 5,
        "value": 11
      },
      {
        "id": "B",
        "start": 3,
        "end": 5,
        "value": 5
      }
    ],
    "trace": [
      {
        "job": "A",
        "p_dp_index": 0,
        "include": 5,
        "exclude": 0,
        "best": 5
      },
      {
        "job": "C",
        "p_dp_index": 0,
        "include": 11,
        "exclude": 5,
        "best": 11
      },
      {
        "job": "B",
        "p_dp_index": 1,
        "include": 10,
        "exclude": 11,
        "best": 11
      }
    ],
    "dp": [
      0,
      5,
      11,
      11
    ],
    "value": 11,
    "chosen_ids": [
      "C"
    ],
    "tie_policy": "exclude current sorted job"
  },
  "all_eight_subsets": [
    {
      "ids": [],
      "compatible": true,
      "value": 0
    },
    {
      "ids": [
        "A"
      ],
      "compatible": true,
      "value": 5
    },
    {
      "ids": [
        "B"
      ],
      "compatible": true,
      "value": 5
    },
    {
      "ids": [
        "A",
        "B"
      ],
      "compatible": true,
      "value": 10
    },
    {
      "ids": [
        "C"
      ],
      "compatible": true,
      "value": 11
    },
    {
      "ids": [
        "A",
        "C"
      ],
      "compatible": false,
      "value": 16
    },
    {
      "ids": [
        "B",
        "C"
      ],
      "compatible": false,
      "value": 16
    },
    {
      "ids": [
        "A",
        "B",
        "C"
      ],
      "compatible": false,
      "value": 21
    }
  ],
  "earliest_finish_greedy": {
    "ids": [
      "A",
      "B"
    ],
    "value": 10
  },
  "boundary_rule": "[start,end), touching is compatible",
  "additional_cases": [
    {
      "jobs": [],
      "result": {
        "sorted_jobs": [],
        "trace": [],
        "dp": [
          0
        ],
        "value": 0,
        "chosen_ids": [],
        "tie_policy": "exclude current sorted job"
      },
      "subset_count": 1,
      "witness_unique_compatible_value_equal": true
    },
    {
      "jobs": [
        {
          "id": "A",
          "start": 0,
          "end": 3,
          "value": 5
        },
        {
          "id": "B",
          "start": 3,
          "end": 5,
          "value": 5
        }
      ],
      "result": {
        "sorted_jobs": [
          {
            "id": "A",
            "start": 0,
            "end": 3,
            "value": 5
          },
          {
            "id": "B",
            "start": 3,
            "end": 5,
            "value": 5
          }
        ],
        "trace": [
          {
            "job": "A",
            "p_dp_index": 0,
            "include": 5,
            "exclude": 0,
            "best": 5
          },
          {
            "job": "B",
            "p_dp_index": 1,
            "include": 10,
            "exclude": 5,
            "best": 10
          }
        ],
        "dp": [
          0,
          5,
          10
        ],
        "value": 10,
        "chosen_ids": [
          "A",
          "B"
        ],
        "tie_policy": "exclude current sorted job"
      },
      "subset_count": 4,
      "witness_unique_compatible_value_equal": true
    },
    {
      "jobs": [
        {
          "id": "X",
          "start": 1,
          "end": 2,
          "value": 0
        }
      ],
      "result": {
        "sorted_jobs": [
          {
            "id": "X",
            "start": 1,
            "end": 2,
            "value": 0
          }
        ],
        "trace": [
          {
            "job": "X",
            "p_dp_index": 0,
            "include": 0,
            "exclude": 0,
            "best": 0
          }
        ],
        "dp": [
          0,
          0
        ],
        "value": 0,
        "chosen_ids": [],
        "tie_policy": "exclude current sorted job"
      },
      "subset_count": 2,
      "witness_unique_compatible_value_equal": true
    },
    {
      "jobs": [
        {
          "id": "X",
          "start": 0,
          "end": 1,
          "value": 2
        },
        {
          "id": "Y",
          "start": 0,
          "end": 1,
          "value": 2
        }
      ],
      "result": {
        "sorted_jobs": [
          {
            "id": "X",
            "start": 0,
            "end": 1,
            "value": 2
          },
          {
            "id": "Y",
            "start": 0,
            "end": 1,
            "value": 2
          }
        ],
        "trace": [
          {
            "job": "X",
            "p_dp_index": 0,
            "include": 2,
            "exclude": 0,
            "best": 2
          },
          {
            "job": "Y",
            "p_dp_index": 0,
            "include": 2,
            "exclude": 2,
            "best": 2
          }
        ],
        "dp": [
          0,
          2,
          2
        ],
        "value": 2,
        "chosen_ids": [
          "X"
        ],
        "tie_policy": "exclude current sorted job"
      },
      "subset_count": 4,
      "witness_unique_compatible_value_equal": true
    },
    {
      "jobs": [
        {
          "id": "A",
          "start": 0,
          "end": 3,
          "value": 5
        },
        {
          "id": "B",
          "start": 3,
          "end": 5,
          "value": 5
        },
        {
          "id": "C",
          "start": 0,
          "end": 5,
          "value": 11
        },
        {
          "id": "D",
          "start": 5,
          "end": 7,
          "value": 3
        },
        {
          "id": "E",
          "start": 1,
          "end": 6,
          "value": 20
        }
      ],
      "result": {
        "sorted_jobs": [
          {
            "id": "A",
            "start": 0,
            "end": 3,
            "value": 5
          },
          {
            "id": "C",
            "start": 0,
            "end": 5,
            "value": 11
          },
          {
            "id": "B",
            "start": 3,
            "end": 5,
            "value": 5
          },
          {
            "id": "E",
            "start": 1,
            "end": 6,
            "value": 20
          },
          {
            "id": "D",
            "start": 5,
            "end": 7,
            "value": 3
          }
        ],
        "trace": [
          {
            "job": "A",
            "p_dp_index": 0,
            "include": 5,
            "exclude": 0,
            "best": 5
          },
          {
            "job": "C",
            "p_dp_index": 0,
            "include": 11,
            "exclude": 5,
            "best": 11
          },
          {
            "job": "B",
            "p_dp_index": 1,
            "include": 10,
            "exclude": 11,
            "best": 11
          },
          {
            "job": "E",
            "p_dp_index": 0,
            "include": 20,
            "exclude": 11,
            "best": 20
          },
          {
            "job": "D",
            "p_dp_index": 3,
            "include": 14,
            "exclude": 20,
            "best": 20
          }
        ],
        "dp": [
          0,
          5,
          11,
          11,
          20,
          20
        ],
        "value": 20,
        "chosen_ids": [
          "E"
        ],
        "tie_policy": "exclude current sorted job"
      },
      "subset_count": 32,
      "witness_unique_compatible_value_equal": true
    }
  ],
  "six_input_permutations_same_result": true,
  "rejected": [
    [
      {
        "id": "X",
        "start": 0,
        "end": 0,
        "value": 1
      }
    ],
    [
      {
        "id": "X",
        "start": 2,
        "end": 1,
        "value": 1
      }
    ],
    [
      {
        "id": "A",
        "start": 0,
        "end": 3,
        "value": 5
      },
      {
        "id": "A",
        "start": 0,
        "end": 3,
        "value": 5
      }
    ],
    [
      {
        "id": "X",
        "start": 0,
        "end": 1,
        "value": -1
      }
    ]
  ],
  "real_calendar_or_scheduler": false
}
