pub trait Evaluate<Args>where Self: Operator, Args: Params,{ type Output; // Required method fn eval(&self, args: Args) -> Self::Output; }