Question: Why does function plot correctly but returns wrong value?

I have defined a function pp(x).  It plots correctly 

but pp(2020); should return 410, and it returns 98000. Maybe I am doing something stupid, but I just can't figure out what!

a := 0.340699639252428*10^13;
b := -0.118229737138742*10^11;
c := 0.175816922773262*10^8;
d := -14523.7138112711;
e := 7.19782673654200;
f := -0.00214008825847444;
g := 0.353463615941623*10^(-6);

h := -0.250170509163729*10^(-10);

pp := x -> a + b*x + c*x^2 + d*x^3 + e*x^4 + f*x^5 + g*x^6 + h*x^7;

plot([pp(x)], x = 1960 .. 2100, gridlines = true, size = [900, 600])

 

Please Wait...