Avoided a potential retain cycle and added some comments.