For Programming Project 3, you will be implementing an interpreter for a programming language called GritVM. Your GritVM will read in a file of code written in this specific GVM language, run the instructions, and be able to return the results held in the GritVM object’s memory. The GritVM has two variables that contain its memory: a NodeList that contains the instructions and a Vector that contains the data. There will also be a single variable called the accumulator. The accumulator stores the results of various operations as an intermediate. The accumulator is an implicit operand for all mathematical calculations.