added some exercise functions