height = int(raw_input('Height: ')) # Find nearest vertex to begin with start = estimate_current_vertex(width, height) m = detect_maze(start, width, height) print 'Maze detected!' name = raw_input('File name: ') with open(name, 'w') as f: f.write(repr(m)) print 'String representation saved.' elif answer.upper() == 'B': name = raw_input('File name: ') with open(name, 'r') as f: s = f.read() m.parse(s) start = raw_input('Starting point (input format is "x,y"): ') finish = raw_input('Finish (input format is "x,y"): ') s = start.partition(',') f = finish.partition(',') a = (int(s[0]), int(s[2])) b = (int(f[0]), int(f[2])) path = m.bfs(a, b) run(path, m)