hello @alphafx, reading your lecture made this topic look very easy. It was only when I started preparing my answer I got to know the depth of this topic.
Anyway I have given my best shot of penning down this article.
you can find my homework post here