improve initializr