add a param for init