prepare for complex routing