first pass at assignment - work in progress