separated into static and dynamic interpreters... memory model is better than
before but not actually correct (using the input3.p to test the static vs.
dynamic behavior gives correct results I think, however...)

input3.p -- input used to test static vs. dynamic behavior