exercise #2.1 added