enhancement the x:call with two hook function