https://courses.grainger.illinois.edu/cs576/fa2021/equality-enrich-scp.pdf