tolerant route parsing