pub type OpCode = u8;
pub const NOP: OpCode = 0;
pub const RESET: OpCode = 1;
pub const HALT: OpCode = 2;
pub const IN: OpCode = 3;
pub const OUT: OpCode = 4;
pub const POP: OpCode = 5;
pub const DUP: OpCode = 6;
pub const PUSHPC: OpCode = 7;
pub const POPPC: OpCode = 8;
pub const POPSP: OpCode = 9;
pub const SPTGT: OpCode = 10;
pub const PUSHNZ: OpCode = 11;
pub const SWAP: OpCode = 12;
pub const PUSH0: OpCode = 13;
pub const ADD: OpCode = 14;
pub const SUB: OpCode = 15;
pub const INC: OpCode = 16;
pub const DEC: OpCode = 17;
pub const MUL: OpCode = 18;
pub const DIV: OpCode = 19;
pub const XOR: OpCode = 20;
pub const AND: OpCode = 21;
pub const OR: OpCode = 22;
pub const SHL: OpCode = 23;
pub const SHR: OpCode = 24;
pub const NOT: OpCode = 25;
pub const BZ: OpCode = 26;
pub const BNZ: OpCode = 27;
pub const BEQ: OpCode = 28;
pub const BGT: OpCode = 29;
pub const BLT: OpCode = 30;
pub const BGE: OpCode = 31;
pub const LOOP: OpCode = 32;
pub const ENDL: OpCode = 33;
pub const BRAN: OpCode = 34;
pub const BRAP: OpCode = 35;
pub const TARGET: OpCode = 36;
pub const SKIP1: OpCode = 37;
pub const SKIP2: OpCode = 38;
pub const SKIP3: OpCode = 39;
pub const SKIP4: OpCode = 40;
pub const SKIP5: OpCode = 41;
pub const SKIP6: OpCode = 42;
pub const SKIP7: OpCode = 43;
pub const SKIP8: OpCode = 44;
pub const SKIP9: OpCode = 45;