[31m[1mERROR[0m[39m: 
  [31m×[0m Prebuilt types can't have non-'static lifetime parameters.
  [31m│[0m `app::A` has a named lifetime parameter, `'a`, that you haven't
  [31m│[0m constrained to be 'static.
  [31m│[0m
  [31m│[0m     ╭─[[36;1;4msrc/lib.rs[0m:28:1]
  [31m│[0m  [2m28[0m │     let mut bp = Blueprint::new();
  [31m│[0m  [2m29[0m │     bp.prebuilt(t!(crate::A));
  [31m│[0m     · [35;1m                ──────┬─────[0m
  [31m│[0m     ·                       [35;1m╰── The prebuilt type was registered here[0m
  [31m│[0m  [2m30[0m │     bp.prebuilt(t!(crate::B));
  [31m│[0m     ╰────
  [31m│[0m [36m  help: [0mSet the lifetime parameters to `'static` when registering the type
  [31m│[0m         as prebuilt. E.g. `bp.prebuilt(f!(crate::MyType<'static>))` for
  [31m│[0m         `struct MyType<'a>(&'a str)`.

[31m[1mERROR[0m[39m: 
  [31m×[0m Prebuilt types can't have unassigned generic type parameters.
  [31m│[0m `app::B` has a generic type parameter, `T`, that you haven't assigned a
  [31m│[0m concrete type to.
  [31m│[0m
  [31m│[0m     ╭─[[36;1;4msrc/lib.rs[0m:29:1]
  [31m│[0m  [2m29[0m │     bp.prebuilt(t!(crate::A));
  [31m│[0m  [2m30[0m │     bp.prebuilt(t!(crate::B));
  [31m│[0m     · [35;1m                ──────┬─────[0m
  [31m│[0m     ·                       [35;1m╰── The prebuilt type was registered here[0m
  [31m│[0m  [2m31[0m │     bp.prebuilt(t!(crate::C));
  [31m│[0m     ╰────
  [31m│[0m [36m  help: [0mSet the generic parameters to concrete types when
  [31m│[0m         registering the type as prebuilt. E.g. `bp.prebuilt(f!
  [31m│[0m         (crate::MyType<std::string::String>))` for `struct MyType<T>(T)`.

[31m[1mERROR[0m[39m: 
  [31m×[0m Prebuilt types can't have non-'static lifetime parameters.
  [31m│[0m `app::C` has 3 named lifetime parameters that you haven't constrained to
  [31m│[0m be 'static: `'a`, `'b` and `'c`.
  [31m│[0m
  [31m│[0m     ╭─[[36;1;4msrc/lib.rs[0m:30:1]
  [31m│[0m  [2m30[0m │     bp.prebuilt(t!(crate::B));
  [31m│[0m  [2m31[0m │     bp.prebuilt(t!(crate::C));
  [31m│[0m     · [35;1m                ──────┬─────[0m
  [31m│[0m     ·                       [35;1m╰── The prebuilt type was registered here[0m
  [31m│[0m  [2m32[0m │     bp.prebuilt(t!(crate::D));
  [31m│[0m     ╰────
  [31m│[0m [36m  help: [0mSet the lifetime parameters to `'static` when registering the type
  [31m│[0m         as prebuilt. E.g. `bp.prebuilt(f!(crate::MyType<'static>))` for
  [31m│[0m         `struct MyType<'a>(&'a str)`.

[31m[1mERROR[0m[39m: 
  [31m×[0m Prebuilt types can't have unassigned generic type parameters.
  [31m│[0m `app::D` has 3 generic type parameters that you haven't assigned concrete
  [31m│[0m types to: `T`, `S` and `Z`.
  [31m│[0m
  [31m│[0m     ╭─[[36;1;4msrc/lib.rs[0m:31:1]
  [31m│[0m  [2m31[0m │     bp.prebuilt(t!(crate::C));
  [31m│[0m  [2m32[0m │     bp.prebuilt(t!(crate::D));
  [31m│[0m     · [35;1m                ──────┬─────[0m
  [31m│[0m     ·                       [35;1m╰── The prebuilt type was registered here[0m
  [31m│[0m  [2m33[0m │     bp.route(GET, "/", f!(crate::handler));
  [31m│[0m     ╰────
  [31m│[0m [36m  help: [0mSet the generic parameters to concrete types when
  [31m│[0m         registering the type as prebuilt. E.g. `bp.prebuilt(f!
  [31m│[0m         (crate::MyType<std::string::String>))` for `struct MyType<T>(T)`.