Basic Algorithm 1/2 (301 - 303)