make property initializer private, update swift