improved var init