Hry guys, I'm wondering if anyone can explain why this code wouldn't work. I noticed that if I change line 24 to **new_variance = variance / count** and **return new_variance** on line 25 instead then I can pass this lesson. So I know how to pass the lesson, but I don't understand why.

```
grades = [100, 100, 90, 40, 80, 100, 85, 70, 90, 65, 90, 85, 50.5]
def print_grades(grades):
for grade in grades:
print grade
def grades_sum(grades):
total = 0
for grade in grades:
total += grade
return total
def grades_average(grades):
return grades_sum(grades) / float(len(grades))
def grades_variance(scores):
average = grades_average(scores)
variance = 0
count = 0
for score in scores:
variance +=(average - score)**2
count += 1
variance = variance / count
return variance
print grades_variance(grades)
```