add a function -init