Algorithm 1.0.0