very early propagation algorithm