We recommend avoiding maps, they're non-deterministic above a certain size.
I think I see what you've done 🙂. You've not separated "key" and "value" in the vector example. e.g.
["/phone"
[[["/" :number phone-resource]]]]
Should be
["/phone" [[["/" :number] phone-resource]]
It's a bit confusing, but here's the mental breakdown:
In [[["/" :number] phone-resource]]
1. You first open the sequence of routes that are nested under "phone/"
2. Next you open your nested phone-resource route
3. You open the vector for the "left hand side" or "matcher", as it contains parameters.