add maze generation