init improve