Dial's algorithm