do not call init twice