start moving to typed object (not done)