finished percent income donated refactor