Задачі
(p, q) - кінь
(p, q) - кінь
(\textbf{p}, \textbf{q})-кінь - це узагальнення звичного шаховного коня. (\textbf{p}, \textbf{q})-кінь своїм ходом переміщується на \textbf{p} клітинок у одному напрямку, і на \textbf{q} - у іншому (перпендикулярному). Наприклад, (\textbf{3}, \textbf{4})-кінь може переміститись з клітинки (\textbf{5}, \textbf{6}) на клітинки (\textbf{1}, \textbf{3}), (\textbf{2}, \textbf{2}), (\textbf{2}, \textbf{10}), (\textbf{1}, \textbf{9}), (\textbf{8}, \textbf{10}), (\textbf{9}, \textbf{9}), (\textbf{8}, \textbf{2}) і (\textbf{9}, \textbf{3}). Очевидно, що звичний шахлвий кінь - це (\textbf{2}, \textbf{1})-кінь.
Ваша задача - визначити мінімальну кількість ходів, які потрібно (\textbf{p}, \textbf{q})-коню, щоб дістатитсь від однієї клітинки шахової дошки \textbf{M}×\textbf{N} до іншої. За межі дошки виходити заборонено.
\InputFile
Єдиний рядк у вхідному файлі містить \textbf{8} цілих чисел \textbf{M}, \textbf{N}, \textbf{p}, \textbf{q}, \textbf{x_1}, \textbf{y_1}, \textbf{x_2}, \textbf{y_2} (\textbf{1} ≤ \textbf{x_1}, \textbf{x_2} ≤ \textbf{M} ≤ \textbf{100}, \textbf{1} ≤ \textbf{y_1}, \textbf{y_2} ≤ \textbf{N} ≤ \textbf{100}, \textbf{0} ≤ \textbf{p} ≤ \textbf{100}, \textbf{0} ≤ \textbf{q} ≤ \textbf{100}).
\OutputFile
Перший рядок вихідного файлу повинен містити ціле число \textbf{k} - число ходів, які потібно (\textbf{p}, \textbf{q})-коню, щоб дістатись з клітинки (\textbf{x_1}, \textbf{y_1}) у клітинку (\textbf{x_2}, \textbf{y_2}). Далі повинні йти \textbf{k+1} рядків, які містять послідовні положення (\textbf{p}, \textbf{q})-коня на цьому шляху.
Якщо (\textbf{p}, \textbf{q})-кінь не може дісттись з (\textbf{x_1}, \textbf{y_1}) у (\textbf{x_2}, \textbf{y_2}), виведіть у вихідний файл єдине число \textbf{-1}.
Вхідні дані #1
3 3 1 1 1 1 3 3
Вихідні дані #1
2 1 1 2 2 3 3
Вхідні дані #2
2 2 1 1 1 1 1 2
Вихідні дані #2
-1