refactor with notes from Ryan