added parts 2,3