very close. still have some init tweaks to make