Algorithm

1 2 3