implement some init funcs
fix