Traceback (most recent call last):

File "python", line 36, in

File "python", line 35, in print_all

NameError: global name 'variance' is not defined

```
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):
sum_of_grades = grades_sum(grades)
average = sum_of_grades / float(len(grades))
return average
def grades_variance(scores):
average = grades_average(scores)
variance = 0
for score in scores:
variance += (average - score) ** 2 #the variable variance will now store a new value
variance_total = variance / float(len(scores))
return variance_total
print grades_variance(grades)
def grades_std_deviation(variance):
return variance ** 0.5
variance = grades_variance(grades)
print grades_std_deviation(variance)
def print_all(grades):
print print_grades(grades)
print grades_sum(grades)
print grades_average(grades)
print grades_variance(grades)
print grades_std_deviation(variance)
print print_all(grades)
```

A bug or wrong instructions? I have a problem with instructions on this exercise and how code offly works out regardless. After defining the function `def grades_variance(scores)`

why call it with `print grades_variance(grades)`

instead of the actual function `print grades_variance(scores)`

??? All previous exercises have been smooth until this last Review exercise. Code seems Okay but can't get past the error message: `Global name Variance is not defined`

. Kindly HELP!!!!