back-end adopted for routing