add functions into proxy pattern