Finished with some extra comments