work around for functor arguments being opaque.