Прямоугольный лабиринт 

Лабиринт представляет собой прямоугольник, разбитый на клетки.
Некоторые из клеток заняты каменными глыбами (через них ходить нельзя).
Кладоискатель может перемещаться из клетки, где он находится, в любую
соседнюю по горизонтали или вертикали (если там нет каменной глыбы).

Изначально кладоискатель находится в левой верхней клетке лабиринта.

Клад находится в правой нижней клетке лабиринта.

Определите минимальную длину пути кладоискателя до клетки с кладом.

Входные данные
Заданы сначала числа N и M (не превышающие 10) - размеры лабиринта.
Затем задана карта лабиринта - N строк по M чисел в каждой. Число 0 обозначает
свободную клетку. Число 1 - занятую.

Выходные данные
В выходной файл выведите одно число - минимальную длину пути из левой верхней
клетки в правую нижнюю. 
Гарантируется, что путь существует.

Пример ввода
5 6
0 0 0 0 0 0
1 1 1 1 0 1
0 0 0 0 0 1
0 1 1 1 1 1
0 0 0 0 0 0

Пример вывода
17