local g={[0]="\065\066\067";"\065\066\120","\065\066\067","\065\066\067";"\065\066\067","\065\066\120","\065\066\067";"\065\066\120","\065\066\067","\065\066\067","\065\066\067","\065\066\067","\065\066\067";"\065\066\067","\065\066\067";"\065\066\067","\065\066\067","\065\066\067";"\065\066\067";"\065\066\067";"\065\066\067";"\065\066\067","\065\115\066\120";"\065\066\067";"\065\066\067","\065\066\067","\065\066\067","\065\066\067","\065\066\067";"\065\066\067";"\065\066\067","\065\115\066\120","\065\115\066\120";"\065\066\067";"\065\066\067","\065\066\067","\065\066\120";"\065\066\067"}local V={[0]={b="\079\112\065\114\103\082",c="\079\112\065\114\103\078"};{b="\079\112\065\114\103\075",c="\079\112\065\114\103\078"},{b="\079\112\065\114\103\085",c="\079\112\065\114\103\085"};{b="\079\112\065\114\103\082",c="\079\112\065\114\103\078"},{b="\079\112\065\114\103\085",c="\079\112\065\114\103\078"},{b="\079\112\065\114\103\075";c="\079\112\065\114\103\078"};{b="\079\112\065\114\103\082",c="\079\112\065\114\103\075"},{b="\079\112\065\114\103\075",c="\079\112\065\114\103\078"},{b="\079\112\065\114\103\085",c="\079\112\065\114\103\078"},{b="\079\112\065\114\103\075",c="\079\112\065\114\103\075"};{b="\079\112\065\114\103\085",c="\079\112\065\114\103\085"};{b="\079\112\065\114\103\082",c="\079\112\065\114\103\075"},{b="\079\112\065\114\103\075";c="\079\112\065\114\103\075"},{b="\079\112\065\114\103\075";c="\079\112\065\114\103\075"},{b="\079\112\065\114\103\075",c="\079\112\065\114\103\075"},{b="\079\112\065\114\103\075",c="\079\112\065\114\103\075"},{b="\079\112\065\114\103\075",c="\079\112\065\114\103\075"};{b="\079\112\065\114\103\075",c="\079\112\065\114\103\075"};{b="\079\112\065\114\103\082";c="\079\112\065\114\103\078"};{b="\079\112\065\114\103\082";c="\079\112\065\114\103\078"};{b="\079\112\065\114\103\082",c="\079\112\065\114\103\078"},{b="\079\112\065\114\103\082",c="\079\112\065\114\103\082"},{b="\079\112\065\114\103\082";c="\079\112\065\114\103\078"},{b="\079\112\065\114\103\075";c="\079\112\065\114\103\075"};{b="\079\112\065\114\103\075",c="\079\112\065\114\103\075"};{b="\079\112\065\114\103\075",c="\079\112\065\114\103\075"},{b="\079\112\065\114\103\082",c="\079\112\065\114\103\085"},{b="\079\112\065\114\103\082";c="\079\112\065\114\103\085"};{b="\079\112\065\114\103\085",c="\079\112\065\114\103\085"};{b="\079\112\065\114\103\085";c="\079\112\065\114\103\085"};{b="\079\112\065\114\103\085";c="\079\112\065\114\103\078"};{b="\079\112\065\114\103\082",c="\079\112\065\114\103\078"},{b="\079\112\065\114\103\082";c="\079\112\065\114\103\078"};{b="\079\112\065\114\103\078";c="\079\112\065\114\103\085"};{b="\079\112\065\114\103\085";c="\079\112\065\114\103\085"};{b="\079\112\065\114\103\078",c="\079\112\065\114\103\078"},{b="\079\112\065\114\103\085";c="\079\112\065\114\103\078"};{b="\079\112\065\114\103\085";c="\079\112\065\114\103\078"}}
-- opcode types for getting values
local opcode_t = {
	[0] = "ABC",
	"ABx",
	"ABC",
	"ABC",
	"ABC",
	"ABx",
	"ABC",
	"ABx",
	"ABC",
	"ABC",
	"ABC",
	"ABC",
	"ABC",
	"ABC",
	"ABC",
	"ABC",
	"ABC",
	"ABC",
	"ABC",
	"ABC",
	"ABC",
	"ABC",
	"AsBx",
	"ABC",
	"ABC",
	"ABC",
	"ABC",
	"ABC",
	"ABC",
	"ABC",
	"ABC",
	"AsBx",
	"AsBx",
	"ABC",
	"ABC",
	"ABC",
	"ABx",
	"ABC",
}

local opcode_m = {
	[0] = { b = "OpArgR", c = "OpArgN" },
	{ b = "OpArgK", c = "OpArgN" },
	{ b = "OpArgU", c = "OpArgU" },
	{ b = "OpArgR", c = "OpArgN" },
	{ b = "OpArgU", c = "OpArgN" },
	{ b = "OpArgK", c = "OpArgN" },
	{ b = "OpArgR", c = "OpArgK" },
	{ b = "OpArgK", c = "OpArgN" },
	{ b = "OpArgU", c = "OpArgN" },
	{ b = "OpArgK", c = "OpArgK" },
	{ b = "OpArgU", c = "OpArgU" },
	{ b = "OpArgR", c = "OpArgK" },
	{ b = "OpArgK", c = "OpArgK" },
	{ b = "OpArgK", c = "OpArgK" },
	{ b = "OpArgK", c = "OpArgK" },
	{ b = "OpArgK", c = "OpArgK" },
	{ b = "OpArgK", c = "OpArgK" },
	{ b = "OpArgK", c = "OpArgK" },
	{ b = "OpArgR", c = "OpArgN" },
	{ b = "OpArgR", c = "OpArgN" },
	{ b = "OpArgR", c = "OpArgN" },
	{ b = "OpArgR", c = "OpArgR" },
	{ b = "OpArgR", c = "OpArgN" },
	{ b = "OpArgK", c = "OpArgK" },
	{ b = "OpArgK", c = "OpArgK" },
	{ b = "OpArgK", c = "OpArgK" },
	{ b = "OpArgR", c = "OpArgU" },
	{ b = "OpArgR", c = "OpArgU" },
	{ b = "OpArgU", c = "OpArgU" },
	{ b = "OpArgU", c = "OpArgU" },
	{ b = "OpArgU", c = "OpArgN" },
	{ b = "OpArgR", c = "OpArgN" },
	{ b = "OpArgR", c = "OpArgN" },
	{ b = "OpArgN", c = "OpArgU" },
	{ b = "OpArgU", c = "OpArgU" },
	{ b = "OpArgN", c = "OpArgN" },
	{ b = "OpArgU", c = "OpArgN" },
	{ b = "OpArgU", c = "OpArgN" },
}
