Source: https://www.mimuw.edu.pl/~jwinter/articles/calco11.pdf