체스에서 나이트는 한 번에 가로로 두 칸·세로로 한 칸을 이동하거나, 가로로 한 칸·세로로 두 칸을 이동할 수 있다. 따라서 크기가 무한한 체스판에서 나이트가 $(0, 0)$ 에 놓여 있다면, 한 번의 이동으로 $(1, 2)$, $(-1, 2)$, $(1, -2)$, $(-1, -2)$, $(2, 1)$, $(-2, 1)$, $(2, -1)$, $(-2, -1)$ 중 한 칸으로 갈 수 있다.
두 정수 $x$ 와 $y$ 가 주어졌을 때, 무한히 큰 체스판에서 나이트가 $(0, 0)$ 에서 $(x, y)$ 까지 이동하는 데 필요한 최소 이동 횟수를 구하는 프로그램을 작성하여라.
입력은 여러 개의 테스트 케이스로 이루어진다. 각 테스트 케이스는 한 줄에 두 정수 $x$ 와 $y$ 가 공백으로 구분되어 주어진다. 두 값의 절댓값은 모두 십억($10^9$)을 넘지 않는다.
입력의 마지막 줄에는 END 가 주어져 입력의 끝을 나타낸다.
각 테스트 케이스마다, 나이트가 $(0, 0)$ 에서 $(x, y)$ 로 이동하는 데 필요한 최소 이동 횟수를 한 줄에 하나씩 출력한다.