refactor
refactor Instruction