Figure 5-2 Pseudo code

Responsive image
source