don't use call time passed by reference