task7 delegate

also each func