better path gen