scripted functor QQQ