temp proxy for function, support decorator and with