smarter about path finding