https://www.acsu.buffalo.edu/~adamcunn/probability/probability.html