I will update it with some comments, let me know if you still want me to add more afterwards.