explicitly call construct