https://jack.valmadre.net/notes/2020/12/08/non-perfect-linear-assignment/