why not putting this as a second constructor argument?