don't cache invocation to current. we want the thread locals current value