pub trait SubRouter { fn address(&self) -> String; fn build(&self) -> Result<Router, BoxError>; fn prefix(&self) -> String; fn build_endpoint(&self, p: String) -> String { ... } }