Still working through examples, about halfway done