after code review but haven't rewritten to use item in list yet