namespace SharpCompress.Compressor.Rar.VM
{
    internal class VMCmdFlags
    {
        public const byte VMCF_OP0 = 0;
        public const byte VMCF_OP1 = 1;
        public const byte VMCF_OP2 = 2;
        public const byte VMCF_OPMASK = 3;
        public const byte VMCF_BYTEMODE = 4;
        public const byte VMCF_JUMP = 8;
        public const byte VMCF_PROC = 16;
        public const byte VMCF_USEFLAGS = 32;
        public const byte VMCF_CHFLAGS = 64;

        public static byte[] VM_CmdFlags = new byte[] { VMCF_OP2 | VMCF_BYTEMODE, VMCF_OP2 | VMCF_BYTEMODE | VMCF_CHFLAGS, VMCF_OP2 | VMCF_BYTEMODE | VMCF_CHFLAGS, VMCF_OP2 | VMCF_BYTEMODE | VMCF_CHFLAGS, VMCF_OP1 | VMCF_JUMP | VMCF_USEFLAGS, VMCF_OP1 | VMCF_JUMP | VMCF_USEFLAGS, VMCF_OP1 | VMCF_BYTEMODE | VMCF_CHFLAGS, VMCF_OP1 | VMCF_BYTEMODE | VMCF_CHFLAGS, VMCF_OP1 | VMCF_JUMP, VMCF_OP2 | VMCF_BYTEMODE | VMCF_CHFLAGS, VMCF_OP2 | VMCF_BYTEMODE | VMCF_CHFLAGS, VMCF_OP2 | VMCF_BYTEMODE | VMCF_CHFLAGS, VMCF_OP2 | VMCF_BYTEMODE | VMCF_CHFLAGS, VMCF_OP1 | VMCF_JUMP | VMCF_USEFLAGS, VMCF_OP1 | VMCF_JUMP | VMCF_USEFLAGS, VMCF_OP1 | VMCF_JUMP | VMCF_USEFLAGS, VMCF_OP1 | VMCF_JUMP | VMCF_USEFLAGS, VMCF_OP1 | VMCF_JUMP | VMCF_USEFLAGS, VMCF_OP1 | VMCF_JUMP | VMCF_USEFLAGS, VMCF_OP1, VMCF_OP1, VMCF_OP1 | VMCF_PROC, VMCF_OP0 | VMCF_PROC, VMCF_OP1 | VMCF_BYTEMODE, VMCF_OP2 | VMCF_BYTEMODE | VMCF_CHFLAGS, VMCF_OP2 | VMCF_BYTEMODE | VMCF_CHFLAGS, VMCF_OP2 | VMCF_BYTEMODE | VMCF_CHFLAGS, VMCF_OP1 | VMCF_BYTEMODE | VMCF_CHFLAGS, VMCF_OP0, VMCF_OP0, VMCF_OP0 | VMCF_USEFLAGS, VMCF_OP0 | VMCF_CHFLAGS, VMCF_OP2, VMCF_OP2, VMCF_OP2 | VMCF_BYTEMODE, VMCF_OP2 | VMCF_BYTEMODE, VMCF_OP2 | VMCF_BYTEMODE, VMCF_OP2 | VMCF_BYTEMODE | VMCF_USEFLAGS | VMCF_CHFLAGS, VMCF_OP2 | VMCF_BYTEMODE | VMCF_USEFLAGS | VMCF_CHFLAGS, VMCF_OP0 };
    }
}