some changes. (sorry for not commenting in commits for a while :( )