cont
another book cont
finish main line, need refactor
clean up, need refactor