all examples work, need work on performance next