@mihirbarot: very well written.