gmc:added all 3 hook funs