Added some description to mark some tricky parts.