hierarchy fix: Global -> Controller -> Route