Implement abstract routing solution