Iterable<RouteInfo> get underlying { if (children == null) return []; return children!.expand( (routeInfo) => [ routeInfo.combine(this), ...routeInfo.underlying, ], ); }