remove functors in favor of TFun