added some comments & todo