improvements to init