call ctor if it's not done yet