implement add addi subtract and pass the simulation