updated interpreter and tests