working on implementing opcodes