# Making lifetimes a parameter of a trait instead of that of the GAT Current: ```rust pub trait WeakFunctorAny { type F<'a, A: 'a>: 'a where Self: 'a; } pub trait WeakFunctor<'a>: 'a { type F: 'a; } ```