before add multi funs