interpreter runs, but assigns incorrect values when numlits are reused. why?