Author: Mahedi Hasan.