Algorithm 3009