mostly added comments