See https://academics.nat.tum.de/en/studies/org/mh/details/mod/PH2182