more flexible path