reason why passing arguments to setImmediate is slow