avg donatino
donate exception
sum
refactoring
refactoring
refactors