Skip to content

Instantly share code, notes, and snippets.

@Veedrac
Last active December 31, 2016 05:28
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Veedrac/dc7799a19cd053e1f075a1c4abeb0674 to your computer and use it in GitHub Desktop.
Save Veedrac/dc7799a19cd053e1f075a1c4abeb0674 to your computer and use it in GitHub Desktop.
use std::thread;
static NEED: [u8; 21] = [43, 25, 20, 16, 15, 13, 12, 12, 11, 10, 10, 8, 8, 4, 4, 3, 3, 1, 1, 1, 1];
fn is_ok<F>(pred: F) -> bool
where F: Fn(u8) -> u8
{
let mut counts = [0; 256];
for tok in 0..256 {
counts[pred(tok as u8) as usize] += 1;
}
if counts.iter().cloned().max().unwrap() < 43 {
return false;
}
let mut counts2 = [0; 256];
let mut end = 0;
for src in counts.iter().cloned().filter(|&x| x > 0) {
counts2[end] = src;
end += 1;
}
counts2[..end].sort_by(|a, b| b.cmp(a)); // reverse
for i in 0..21 {
if counts2[i] < NEED[i] {
return false;
}
}
return true;
}
type Op = fn(u8, u8) -> u8;
fn and(x: u8, y: u8) -> u8 { x & y }
fn add(x: u8, y: u8) -> u8 { x + y }
fn xor(x: u8, y: u8) -> u8 { x ^ y }
fn or (x: u8, y: u8) -> u8 { x | y }
fn sub(x: u8, y: u8) -> u8 { x - y }
fn bus(x: u8, y: u8) -> u8 { y - x }
fn mul(x: u8, y: u8) -> u8 { x * y }
fn rsh(x: u8, y: u8) -> u8 { if y >= 8 { 0 } else { x >> y } }
fn hsr(x: u8, y: u8) -> u8 { if x >= 8 { 0 } else { y >> x } }
#[inline(always)]
fn run<Shape>(s: &'static str, n_args: usize, shape: Shape)
where Shape: Fn(Op, Op, Op, Op, u8, u8, u8, u8, u8) -> u8 + Send + Sync + Copy + 'static
{
let mut threads = Vec::new();
threads.push(thread::spawn(move || {
run_inner(s, n_args, shape, and, and, and, and, "&", "&", "&", "&");
run_inner(s, n_args, shape, and, and, and, add, "&", "&", "&", "+");
run_inner(s, n_args, shape, and, and, and, xor, "&", "&", "&", "^");
run_inner(s, n_args, shape, and, and, and, or, "&", "&", "&", "|");
run_inner(s, n_args, shape, and, and, and, sub, "&", "&", "&", "-");
run_inner(s, n_args, shape, and, and, and, bus, "&", "&", "&", "←");
run_inner(s, n_args, shape, and, and, and, mul, "&", "&", "&", "*");
run_inner(s, n_args, shape, and, and, and, rsh, "&", "&", "&", ">>");
run_inner(s, n_args, shape, and, and, and, hsr, "&", "&", "&", "<<");
run_inner(s, n_args, shape, and, and, add, and, "&", "&", "+", "&");
run_inner(s, n_args, shape, and, and, add, add, "&", "&", "+", "+");
run_inner(s, n_args, shape, and, and, add, xor, "&", "&", "+", "^");
run_inner(s, n_args, shape, and, and, add, or, "&", "&", "+", "|");
run_inner(s, n_args, shape, and, and, add, sub, "&", "&", "+", "-");
run_inner(s, n_args, shape, and, and, add, bus, "&", "&", "+", "←");
run_inner(s, n_args, shape, and, and, add, mul, "&", "&", "+", "*");
run_inner(s, n_args, shape, and, and, add, rsh, "&", "&", "+", ">>");
run_inner(s, n_args, shape, and, and, add, hsr, "&", "&", "+", "<<");
run_inner(s, n_args, shape, and, and, xor, and, "&", "&", "^", "&");
run_inner(s, n_args, shape, and, and, xor, add, "&", "&", "^", "+");
run_inner(s, n_args, shape, and, and, xor, xor, "&", "&", "^", "^");
run_inner(s, n_args, shape, and, and, xor, or, "&", "&", "^", "|");
run_inner(s, n_args, shape, and, and, xor, sub, "&", "&", "^", "-");
run_inner(s, n_args, shape, and, and, xor, bus, "&", "&", "^", "←");
run_inner(s, n_args, shape, and, and, xor, mul, "&", "&", "^", "*");
run_inner(s, n_args, shape, and, and, xor, rsh, "&", "&", "^", ">>");
run_inner(s, n_args, shape, and, and, xor, hsr, "&", "&", "^", "<<");
run_inner(s, n_args, shape, and, and, or, and, "&", "&", "|", "&");
run_inner(s, n_args, shape, and, and, or, add, "&", "&", "|", "+");
run_inner(s, n_args, shape, and, and, or, xor, "&", "&", "|", "^");
run_inner(s, n_args, shape, and, and, or, or, "&", "&", "|", "|");
run_inner(s, n_args, shape, and, and, or, sub, "&", "&", "|", "-");
run_inner(s, n_args, shape, and, and, or, bus, "&", "&", "|", "←");
run_inner(s, n_args, shape, and, and, or, mul, "&", "&", "|", "*");
run_inner(s, n_args, shape, and, and, or, rsh, "&", "&", "|", ">>");
run_inner(s, n_args, shape, and, and, or, hsr, "&", "&", "|", "<<");
run_inner(s, n_args, shape, and, and, sub, and, "&", "&", "-", "&");
run_inner(s, n_args, shape, and, and, sub, add, "&", "&", "-", "+");
run_inner(s, n_args, shape, and, and, sub, xor, "&", "&", "-", "^");
run_inner(s, n_args, shape, and, and, sub, or, "&", "&", "-", "|");
run_inner(s, n_args, shape, and, and, sub, sub, "&", "&", "-", "-");
run_inner(s, n_args, shape, and, and, sub, bus, "&", "&", "-", "←");
run_inner(s, n_args, shape, and, and, sub, mul, "&", "&", "-", "*");
run_inner(s, n_args, shape, and, and, sub, rsh, "&", "&", "-", ">>");
run_inner(s, n_args, shape, and, and, sub, hsr, "&", "&", "-", "<<");
run_inner(s, n_args, shape, and, and, bus, and, "&", "&", "←", "&");
run_inner(s, n_args, shape, and, and, bus, add, "&", "&", "←", "+");
run_inner(s, n_args, shape, and, and, bus, xor, "&", "&", "←", "^");
run_inner(s, n_args, shape, and, and, bus, or, "&", "&", "←", "|");
run_inner(s, n_args, shape, and, and, bus, sub, "&", "&", "←", "-");
run_inner(s, n_args, shape, and, and, bus, bus, "&", "&", "←", "←");
run_inner(s, n_args, shape, and, and, bus, mul, "&", "&", "←", "*");
run_inner(s, n_args, shape, and, and, bus, rsh, "&", "&", "←", ">>");
run_inner(s, n_args, shape, and, and, bus, hsr, "&", "&", "←", "<<");
run_inner(s, n_args, shape, and, and, mul, and, "&", "&", "*", "&");
run_inner(s, n_args, shape, and, and, mul, add, "&", "&", "*", "+");
run_inner(s, n_args, shape, and, and, mul, xor, "&", "&", "*", "^");
run_inner(s, n_args, shape, and, and, mul, or, "&", "&", "*", "|");
run_inner(s, n_args, shape, and, and, mul, sub, "&", "&", "*", "-");
run_inner(s, n_args, shape, and, and, mul, bus, "&", "&", "*", "←");
run_inner(s, n_args, shape, and, and, mul, mul, "&", "&", "*", "*");
run_inner(s, n_args, shape, and, and, mul, rsh, "&", "&", "*", ">>");
run_inner(s, n_args, shape, and, and, mul, hsr, "&", "&", "*", "<<");
run_inner(s, n_args, shape, and, and, rsh, and, "&", "&", ">>", "&");
run_inner(s, n_args, shape, and, and, rsh, add, "&", "&", ">>", "+");
run_inner(s, n_args, shape, and, and, rsh, xor, "&", "&", ">>", "^");
run_inner(s, n_args, shape, and, and, rsh, or, "&", "&", ">>", "|");
run_inner(s, n_args, shape, and, and, rsh, sub, "&", "&", ">>", "-");
run_inner(s, n_args, shape, and, and, rsh, bus, "&", "&", ">>", "←");
run_inner(s, n_args, shape, and, and, rsh, mul, "&", "&", ">>", "*");
run_inner(s, n_args, shape, and, and, rsh, rsh, "&", "&", ">>", ">>");
run_inner(s, n_args, shape, and, and, rsh, hsr, "&", "&", ">>", "<<");
run_inner(s, n_args, shape, and, and, hsr, and, "&", "&", "<<", "&");
run_inner(s, n_args, shape, and, and, hsr, add, "&", "&", "<<", "+");
run_inner(s, n_args, shape, and, and, hsr, xor, "&", "&", "<<", "^");
run_inner(s, n_args, shape, and, and, hsr, or, "&", "&", "<<", "|");
run_inner(s, n_args, shape, and, and, hsr, sub, "&", "&", "<<", "-");
run_inner(s, n_args, shape, and, and, hsr, bus, "&", "&", "<<", "←");
run_inner(s, n_args, shape, and, and, hsr, mul, "&", "&", "<<", "*");
run_inner(s, n_args, shape, and, and, hsr, rsh, "&", "&", "<<", ">>");
run_inner(s, n_args, shape, and, and, hsr, hsr, "&", "&", "<<", "<<");
run_inner(s, n_args, shape, and, add, and, and, "&", "+", "&", "&");
run_inner(s, n_args, shape, and, add, and, add, "&", "+", "&", "+");
run_inner(s, n_args, shape, and, add, and, xor, "&", "+", "&", "^");
run_inner(s, n_args, shape, and, add, and, or, "&", "+", "&", "|");
run_inner(s, n_args, shape, and, add, and, sub, "&", "+", "&", "-");
run_inner(s, n_args, shape, and, add, and, bus, "&", "+", "&", "←");
run_inner(s, n_args, shape, and, add, and, mul, "&", "+", "&", "*");
run_inner(s, n_args, shape, and, add, and, rsh, "&", "+", "&", ">>");
run_inner(s, n_args, shape, and, add, and, hsr, "&", "+", "&", "<<");
run_inner(s, n_args, shape, and, add, add, and, "&", "+", "+", "&");
run_inner(s, n_args, shape, and, add, add, add, "&", "+", "+", "+");
run_inner(s, n_args, shape, and, add, add, xor, "&", "+", "+", "^");
run_inner(s, n_args, shape, and, add, add, or, "&", "+", "+", "|");
run_inner(s, n_args, shape, and, add, add, sub, "&", "+", "+", "-");
run_inner(s, n_args, shape, and, add, add, bus, "&", "+", "+", "←");
run_inner(s, n_args, shape, and, add, add, mul, "&", "+", "+", "*");
run_inner(s, n_args, shape, and, add, add, rsh, "&", "+", "+", ">>");
run_inner(s, n_args, shape, and, add, add, hsr, "&", "+", "+", "<<");
run_inner(s, n_args, shape, and, add, xor, and, "&", "+", "^", "&");
run_inner(s, n_args, shape, and, add, xor, add, "&", "+", "^", "+");
run_inner(s, n_args, shape, and, add, xor, xor, "&", "+", "^", "^");
run_inner(s, n_args, shape, and, add, xor, or, "&", "+", "^", "|");
run_inner(s, n_args, shape, and, add, xor, sub, "&", "+", "^", "-");
run_inner(s, n_args, shape, and, add, xor, bus, "&", "+", "^", "←");
run_inner(s, n_args, shape, and, add, xor, mul, "&", "+", "^", "*");
run_inner(s, n_args, shape, and, add, xor, rsh, "&", "+", "^", ">>");
run_inner(s, n_args, shape, and, add, xor, hsr, "&", "+", "^", "<<");
run_inner(s, n_args, shape, and, add, or, and, "&", "+", "|", "&");
run_inner(s, n_args, shape, and, add, or, add, "&", "+", "|", "+");
run_inner(s, n_args, shape, and, add, or, xor, "&", "+", "|", "^");
run_inner(s, n_args, shape, and, add, or, or, "&", "+", "|", "|");
run_inner(s, n_args, shape, and, add, or, sub, "&", "+", "|", "-");
run_inner(s, n_args, shape, and, add, or, bus, "&", "+", "|", "←");
run_inner(s, n_args, shape, and, add, or, mul, "&", "+", "|", "*");
run_inner(s, n_args, shape, and, add, or, rsh, "&", "+", "|", ">>");
run_inner(s, n_args, shape, and, add, or, hsr, "&", "+", "|", "<<");
run_inner(s, n_args, shape, and, add, sub, and, "&", "+", "-", "&");
run_inner(s, n_args, shape, and, add, sub, add, "&", "+", "-", "+");
run_inner(s, n_args, shape, and, add, sub, xor, "&", "+", "-", "^");
run_inner(s, n_args, shape, and, add, sub, or, "&", "+", "-", "|");
run_inner(s, n_args, shape, and, add, sub, sub, "&", "+", "-", "-");
run_inner(s, n_args, shape, and, add, sub, bus, "&", "+", "-", "←");
run_inner(s, n_args, shape, and, add, sub, mul, "&", "+", "-", "*");
run_inner(s, n_args, shape, and, add, sub, rsh, "&", "+", "-", ">>");
run_inner(s, n_args, shape, and, add, sub, hsr, "&", "+", "-", "<<");
run_inner(s, n_args, shape, and, add, bus, and, "&", "+", "←", "&");
run_inner(s, n_args, shape, and, add, bus, add, "&", "+", "←", "+");
run_inner(s, n_args, shape, and, add, bus, xor, "&", "+", "←", "^");
run_inner(s, n_args, shape, and, add, bus, or, "&", "+", "←", "|");
run_inner(s, n_args, shape, and, add, bus, sub, "&", "+", "←", "-");
run_inner(s, n_args, shape, and, add, bus, bus, "&", "+", "←", "←");
run_inner(s, n_args, shape, and, add, bus, mul, "&", "+", "←", "*");
run_inner(s, n_args, shape, and, add, bus, rsh, "&", "+", "←", ">>");
run_inner(s, n_args, shape, and, add, bus, hsr, "&", "+", "←", "<<");
run_inner(s, n_args, shape, and, add, mul, and, "&", "+", "*", "&");
run_inner(s, n_args, shape, and, add, mul, add, "&", "+", "*", "+");
run_inner(s, n_args, shape, and, add, mul, xor, "&", "+", "*", "^");
run_inner(s, n_args, shape, and, add, mul, or, "&", "+", "*", "|");
run_inner(s, n_args, shape, and, add, mul, sub, "&", "+", "*", "-");
run_inner(s, n_args, shape, and, add, mul, bus, "&", "+", "*", "←");
run_inner(s, n_args, shape, and, add, mul, mul, "&", "+", "*", "*");
run_inner(s, n_args, shape, and, add, mul, rsh, "&", "+", "*", ">>");
run_inner(s, n_args, shape, and, add, mul, hsr, "&", "+", "*", "<<");
run_inner(s, n_args, shape, and, add, rsh, and, "&", "+", ">>", "&");
run_inner(s, n_args, shape, and, add, rsh, add, "&", "+", ">>", "+");
run_inner(s, n_args, shape, and, add, rsh, xor, "&", "+", ">>", "^");
run_inner(s, n_args, shape, and, add, rsh, or, "&", "+", ">>", "|");
run_inner(s, n_args, shape, and, add, rsh, sub, "&", "+", ">>", "-");
run_inner(s, n_args, shape, and, add, rsh, bus, "&", "+", ">>", "←");
run_inner(s, n_args, shape, and, add, rsh, mul, "&", "+", ">>", "*");
run_inner(s, n_args, shape, and, add, rsh, rsh, "&", "+", ">>", ">>");
run_inner(s, n_args, shape, and, add, rsh, hsr, "&", "+", ">>", "<<");
run_inner(s, n_args, shape, and, add, hsr, and, "&", "+", "<<", "&");
run_inner(s, n_args, shape, and, add, hsr, add, "&", "+", "<<", "+");
run_inner(s, n_args, shape, and, add, hsr, xor, "&", "+", "<<", "^");
run_inner(s, n_args, shape, and, add, hsr, or, "&", "+", "<<", "|");
run_inner(s, n_args, shape, and, add, hsr, sub, "&", "+", "<<", "-");
run_inner(s, n_args, shape, and, add, hsr, bus, "&", "+", "<<", "←");
run_inner(s, n_args, shape, and, add, hsr, mul, "&", "+", "<<", "*");
run_inner(s, n_args, shape, and, add, hsr, rsh, "&", "+", "<<", ">>");
run_inner(s, n_args, shape, and, add, hsr, hsr, "&", "+", "<<", "<<");
run_inner(s, n_args, shape, and, xor, and, and, "&", "^", "&", "&");
run_inner(s, n_args, shape, and, xor, and, add, "&", "^", "&", "+");
run_inner(s, n_args, shape, and, xor, and, xor, "&", "^", "&", "^");
run_inner(s, n_args, shape, and, xor, and, or, "&", "^", "&", "|");
run_inner(s, n_args, shape, and, xor, and, sub, "&", "^", "&", "-");
run_inner(s, n_args, shape, and, xor, and, bus, "&", "^", "&", "←");
run_inner(s, n_args, shape, and, xor, and, mul, "&", "^", "&", "*");
run_inner(s, n_args, shape, and, xor, and, rsh, "&", "^", "&", ">>");
run_inner(s, n_args, shape, and, xor, and, hsr, "&", "^", "&", "<<");
run_inner(s, n_args, shape, and, xor, add, and, "&", "^", "+", "&");
run_inner(s, n_args, shape, and, xor, add, add, "&", "^", "+", "+");
run_inner(s, n_args, shape, and, xor, add, xor, "&", "^", "+", "^");
run_inner(s, n_args, shape, and, xor, add, or, "&", "^", "+", "|");
run_inner(s, n_args, shape, and, xor, add, sub, "&", "^", "+", "-");
run_inner(s, n_args, shape, and, xor, add, bus, "&", "^", "+", "←");
run_inner(s, n_args, shape, and, xor, add, mul, "&", "^", "+", "*");
run_inner(s, n_args, shape, and, xor, add, rsh, "&", "^", "+", ">>");
run_inner(s, n_args, shape, and, xor, add, hsr, "&", "^", "+", "<<");
run_inner(s, n_args, shape, and, xor, xor, and, "&", "^", "^", "&");
run_inner(s, n_args, shape, and, xor, xor, add, "&", "^", "^", "+");
run_inner(s, n_args, shape, and, xor, xor, xor, "&", "^", "^", "^");
run_inner(s, n_args, shape, and, xor, xor, or, "&", "^", "^", "|");
run_inner(s, n_args, shape, and, xor, xor, sub, "&", "^", "^", "-");
run_inner(s, n_args, shape, and, xor, xor, bus, "&", "^", "^", "←");
run_inner(s, n_args, shape, and, xor, xor, mul, "&", "^", "^", "*");
run_inner(s, n_args, shape, and, xor, xor, rsh, "&", "^", "^", ">>");
run_inner(s, n_args, shape, and, xor, xor, hsr, "&", "^", "^", "<<");
run_inner(s, n_args, shape, and, xor, or, and, "&", "^", "|", "&");
run_inner(s, n_args, shape, and, xor, or, add, "&", "^", "|", "+");
run_inner(s, n_args, shape, and, xor, or, xor, "&", "^", "|", "^");
run_inner(s, n_args, shape, and, xor, or, or, "&", "^", "|", "|");
run_inner(s, n_args, shape, and, xor, or, sub, "&", "^", "|", "-");
run_inner(s, n_args, shape, and, xor, or, bus, "&", "^", "|", "←");
run_inner(s, n_args, shape, and, xor, or, mul, "&", "^", "|", "*");
run_inner(s, n_args, shape, and, xor, or, rsh, "&", "^", "|", ">>");
run_inner(s, n_args, shape, and, xor, or, hsr, "&", "^", "|", "<<");
run_inner(s, n_args, shape, and, xor, sub, and, "&", "^", "-", "&");
run_inner(s, n_args, shape, and, xor, sub, add, "&", "^", "-", "+");
run_inner(s, n_args, shape, and, xor, sub, xor, "&", "^", "-", "^");
run_inner(s, n_args, shape, and, xor, sub, or, "&", "^", "-", "|");
run_inner(s, n_args, shape, and, xor, sub, sub, "&", "^", "-", "-");
run_inner(s, n_args, shape, and, xor, sub, bus, "&", "^", "-", "←");
run_inner(s, n_args, shape, and, xor, sub, mul, "&", "^", "-", "*");
run_inner(s, n_args, shape, and, xor, sub, rsh, "&", "^", "-", ">>");
run_inner(s, n_args, shape, and, xor, sub, hsr, "&", "^", "-", "<<");
run_inner(s, n_args, shape, and, xor, bus, and, "&", "^", "←", "&");
run_inner(s, n_args, shape, and, xor, bus, add, "&", "^", "←", "+");
run_inner(s, n_args, shape, and, xor, bus, xor, "&", "^", "←", "^");
run_inner(s, n_args, shape, and, xor, bus, or, "&", "^", "←", "|");
run_inner(s, n_args, shape, and, xor, bus, sub, "&", "^", "←", "-");
run_inner(s, n_args, shape, and, xor, bus, bus, "&", "^", "←", "←");
run_inner(s, n_args, shape, and, xor, bus, mul, "&", "^", "←", "*");
run_inner(s, n_args, shape, and, xor, bus, rsh, "&", "^", "←", ">>");
run_inner(s, n_args, shape, and, xor, bus, hsr, "&", "^", "←", "<<");
run_inner(s, n_args, shape, and, xor, mul, and, "&", "^", "*", "&");
run_inner(s, n_args, shape, and, xor, mul, add, "&", "^", "*", "+");
run_inner(s, n_args, shape, and, xor, mul, xor, "&", "^", "*", "^");
run_inner(s, n_args, shape, and, xor, mul, or, "&", "^", "*", "|");
run_inner(s, n_args, shape, and, xor, mul, sub, "&", "^", "*", "-");
run_inner(s, n_args, shape, and, xor, mul, bus, "&", "^", "*", "←");
run_inner(s, n_args, shape, and, xor, mul, mul, "&", "^", "*", "*");
run_inner(s, n_args, shape, and, xor, mul, rsh, "&", "^", "*", ">>");
run_inner(s, n_args, shape, and, xor, mul, hsr, "&", "^", "*", "<<");
run_inner(s, n_args, shape, and, xor, rsh, and, "&", "^", ">>", "&");
run_inner(s, n_args, shape, and, xor, rsh, add, "&", "^", ">>", "+");
run_inner(s, n_args, shape, and, xor, rsh, xor, "&", "^", ">>", "^");
run_inner(s, n_args, shape, and, xor, rsh, or, "&", "^", ">>", "|");
run_inner(s, n_args, shape, and, xor, rsh, sub, "&", "^", ">>", "-");
run_inner(s, n_args, shape, and, xor, rsh, bus, "&", "^", ">>", "←");
run_inner(s, n_args, shape, and, xor, rsh, mul, "&", "^", ">>", "*");
run_inner(s, n_args, shape, and, xor, rsh, rsh, "&", "^", ">>", ">>");
run_inner(s, n_args, shape, and, xor, rsh, hsr, "&", "^", ">>", "<<");
run_inner(s, n_args, shape, and, xor, hsr, and, "&", "^", "<<", "&");
run_inner(s, n_args, shape, and, xor, hsr, add, "&", "^", "<<", "+");
run_inner(s, n_args, shape, and, xor, hsr, xor, "&", "^", "<<", "^");
run_inner(s, n_args, shape, and, xor, hsr, or, "&", "^", "<<", "|");
run_inner(s, n_args, shape, and, xor, hsr, sub, "&", "^", "<<", "-");
run_inner(s, n_args, shape, and, xor, hsr, bus, "&", "^", "<<", "←");
run_inner(s, n_args, shape, and, xor, hsr, mul, "&", "^", "<<", "*");
run_inner(s, n_args, shape, and, xor, hsr, rsh, "&", "^", "<<", ">>");
run_inner(s, n_args, shape, and, xor, hsr, hsr, "&", "^", "<<", "<<");
run_inner(s, n_args, shape, and, or, and, and, "&", "|", "&", "&");
run_inner(s, n_args, shape, and, or, and, add, "&", "|", "&", "+");
run_inner(s, n_args, shape, and, or, and, xor, "&", "|", "&", "^");
run_inner(s, n_args, shape, and, or, and, or, "&", "|", "&", "|");
run_inner(s, n_args, shape, and, or, and, sub, "&", "|", "&", "-");
run_inner(s, n_args, shape, and, or, and, bus, "&", "|", "&", "←");
run_inner(s, n_args, shape, and, or, and, mul, "&", "|", "&", "*");
run_inner(s, n_args, shape, and, or, and, rsh, "&", "|", "&", ">>");
run_inner(s, n_args, shape, and, or, and, hsr, "&", "|", "&", "<<");
run_inner(s, n_args, shape, and, or, add, and, "&", "|", "+", "&");
run_inner(s, n_args, shape, and, or, add, add, "&", "|", "+", "+");
run_inner(s, n_args, shape, and, or, add, xor, "&", "|", "+", "^");
run_inner(s, n_args, shape, and, or, add, or, "&", "|", "+", "|");
run_inner(s, n_args, shape, and, or, add, sub, "&", "|", "+", "-");
run_inner(s, n_args, shape, and, or, add, bus, "&", "|", "+", "←");
run_inner(s, n_args, shape, and, or, add, mul, "&", "|", "+", "*");
run_inner(s, n_args, shape, and, or, add, rsh, "&", "|", "+", ">>");
run_inner(s, n_args, shape, and, or, add, hsr, "&", "|", "+", "<<");
run_inner(s, n_args, shape, and, or, xor, and, "&", "|", "^", "&");
run_inner(s, n_args, shape, and, or, xor, add, "&", "|", "^", "+");
run_inner(s, n_args, shape, and, or, xor, xor, "&", "|", "^", "^");
run_inner(s, n_args, shape, and, or, xor, or, "&", "|", "^", "|");
run_inner(s, n_args, shape, and, or, xor, sub, "&", "|", "^", "-");
run_inner(s, n_args, shape, and, or, xor, bus, "&", "|", "^", "←");
run_inner(s, n_args, shape, and, or, xor, mul, "&", "|", "^", "*");
run_inner(s, n_args, shape, and, or, xor, rsh, "&", "|", "^", ">>");
run_inner(s, n_args, shape, and, or, xor, hsr, "&", "|", "^", "<<");
run_inner(s, n_args, shape, and, or, or, and, "&", "|", "|", "&");
run_inner(s, n_args, shape, and, or, or, add, "&", "|", "|", "+");
run_inner(s, n_args, shape, and, or, or, xor, "&", "|", "|", "^");
run_inner(s, n_args, shape, and, or, or, or, "&", "|", "|", "|");
run_inner(s, n_args, shape, and, or, or, sub, "&", "|", "|", "-");
run_inner(s, n_args, shape, and, or, or, bus, "&", "|", "|", "←");
run_inner(s, n_args, shape, and, or, or, mul, "&", "|", "|", "*");
run_inner(s, n_args, shape, and, or, or, rsh, "&", "|", "|", ">>");
run_inner(s, n_args, shape, and, or, or, hsr, "&", "|", "|", "<<");
run_inner(s, n_args, shape, and, or, sub, and, "&", "|", "-", "&");
run_inner(s, n_args, shape, and, or, sub, add, "&", "|", "-", "+");
run_inner(s, n_args, shape, and, or, sub, xor, "&", "|", "-", "^");
run_inner(s, n_args, shape, and, or, sub, or, "&", "|", "-", "|");
run_inner(s, n_args, shape, and, or, sub, sub, "&", "|", "-", "-");
run_inner(s, n_args, shape, and, or, sub, bus, "&", "|", "-", "←");
run_inner(s, n_args, shape, and, or, sub, mul, "&", "|", "-", "*");
run_inner(s, n_args, shape, and, or, sub, rsh, "&", "|", "-", ">>");
run_inner(s, n_args, shape, and, or, sub, hsr, "&", "|", "-", "<<");
run_inner(s, n_args, shape, and, or, bus, and, "&", "|", "←", "&");
run_inner(s, n_args, shape, and, or, bus, add, "&", "|", "←", "+");
run_inner(s, n_args, shape, and, or, bus, xor, "&", "|", "←", "^");
run_inner(s, n_args, shape, and, or, bus, or, "&", "|", "←", "|");
run_inner(s, n_args, shape, and, or, bus, sub, "&", "|", "←", "-");
run_inner(s, n_args, shape, and, or, bus, bus, "&", "|", "←", "←");
run_inner(s, n_args, shape, and, or, bus, mul, "&", "|", "←", "*");
run_inner(s, n_args, shape, and, or, bus, rsh, "&", "|", "←", ">>");
run_inner(s, n_args, shape, and, or, bus, hsr, "&", "|", "←", "<<");
run_inner(s, n_args, shape, and, or, mul, and, "&", "|", "*", "&");
run_inner(s, n_args, shape, and, or, mul, add, "&", "|", "*", "+");
run_inner(s, n_args, shape, and, or, mul, xor, "&", "|", "*", "^");
run_inner(s, n_args, shape, and, or, mul, or, "&", "|", "*", "|");
run_inner(s, n_args, shape, and, or, mul, sub, "&", "|", "*", "-");
run_inner(s, n_args, shape, and, or, mul, bus, "&", "|", "*", "←");
run_inner(s, n_args, shape, and, or, mul, mul, "&", "|", "*", "*");
run_inner(s, n_args, shape, and, or, mul, rsh, "&", "|", "*", ">>");
run_inner(s, n_args, shape, and, or, mul, hsr, "&", "|", "*", "<<");
run_inner(s, n_args, shape, and, or, rsh, and, "&", "|", ">>", "&");
run_inner(s, n_args, shape, and, or, rsh, add, "&", "|", ">>", "+");
run_inner(s, n_args, shape, and, or, rsh, xor, "&", "|", ">>", "^");
run_inner(s, n_args, shape, and, or, rsh, or, "&", "|", ">>", "|");
run_inner(s, n_args, shape, and, or, rsh, sub, "&", "|", ">>", "-");
run_inner(s, n_args, shape, and, or, rsh, bus, "&", "|", ">>", "←");
run_inner(s, n_args, shape, and, or, rsh, mul, "&", "|", ">>", "*");
run_inner(s, n_args, shape, and, or, rsh, rsh, "&", "|", ">>", ">>");
run_inner(s, n_args, shape, and, or, rsh, hsr, "&", "|", ">>", "<<");
run_inner(s, n_args, shape, and, or, hsr, and, "&", "|", "<<", "&");
run_inner(s, n_args, shape, and, or, hsr, add, "&", "|", "<<", "+");
run_inner(s, n_args, shape, and, or, hsr, xor, "&", "|", "<<", "^");
run_inner(s, n_args, shape, and, or, hsr, or, "&", "|", "<<", "|");
run_inner(s, n_args, shape, and, or, hsr, sub, "&", "|", "<<", "-");
run_inner(s, n_args, shape, and, or, hsr, bus, "&", "|", "<<", "←");
run_inner(s, n_args, shape, and, or, hsr, mul, "&", "|", "<<", "*");
run_inner(s, n_args, shape, and, or, hsr, rsh, "&", "|", "<<", ">>");
run_inner(s, n_args, shape, and, or, hsr, hsr, "&", "|", "<<", "<<");
run_inner(s, n_args, shape, and, sub, and, and, "&", "-", "&", "&");
run_inner(s, n_args, shape, and, sub, and, add, "&", "-", "&", "+");
run_inner(s, n_args, shape, and, sub, and, xor, "&", "-", "&", "^");
run_inner(s, n_args, shape, and, sub, and, or, "&", "-", "&", "|");
run_inner(s, n_args, shape, and, sub, and, sub, "&", "-", "&", "-");
run_inner(s, n_args, shape, and, sub, and, bus, "&", "-", "&", "←");
run_inner(s, n_args, shape, and, sub, and, mul, "&", "-", "&", "*");
run_inner(s, n_args, shape, and, sub, and, rsh, "&", "-", "&", ">>");
run_inner(s, n_args, shape, and, sub, and, hsr, "&", "-", "&", "<<");
run_inner(s, n_args, shape, and, sub, add, and, "&", "-", "+", "&");
run_inner(s, n_args, shape, and, sub, add, add, "&", "-", "+", "+");
run_inner(s, n_args, shape, and, sub, add, xor, "&", "-", "+", "^");
run_inner(s, n_args, shape, and, sub, add, or, "&", "-", "+", "|");
run_inner(s, n_args, shape, and, sub, add, sub, "&", "-", "+", "-");
run_inner(s, n_args, shape, and, sub, add, bus, "&", "-", "+", "←");
run_inner(s, n_args, shape, and, sub, add, mul, "&", "-", "+", "*");
run_inner(s, n_args, shape, and, sub, add, rsh, "&", "-", "+", ">>");
run_inner(s, n_args, shape, and, sub, add, hsr, "&", "-", "+", "<<");
run_inner(s, n_args, shape, and, sub, xor, and, "&", "-", "^", "&");
run_inner(s, n_args, shape, and, sub, xor, add, "&", "-", "^", "+");
run_inner(s, n_args, shape, and, sub, xor, xor, "&", "-", "^", "^");
run_inner(s, n_args, shape, and, sub, xor, or, "&", "-", "^", "|");
run_inner(s, n_args, shape, and, sub, xor, sub, "&", "-", "^", "-");
run_inner(s, n_args, shape, and, sub, xor, bus, "&", "-", "^", "←");
run_inner(s, n_args, shape, and, sub, xor, mul, "&", "-", "^", "*");
run_inner(s, n_args, shape, and, sub, xor, rsh, "&", "-", "^", ">>");
run_inner(s, n_args, shape, and, sub, xor, hsr, "&", "-", "^", "<<");
run_inner(s, n_args, shape, and, sub, or, and, "&", "-", "|", "&");
run_inner(s, n_args, shape, and, sub, or, add, "&", "-", "|", "+");
run_inner(s, n_args, shape, and, sub, or, xor, "&", "-", "|", "^");
run_inner(s, n_args, shape, and, sub, or, or, "&", "-", "|", "|");
run_inner(s, n_args, shape, and, sub, or, sub, "&", "-", "|", "-");
run_inner(s, n_args, shape, and, sub, or, bus, "&", "-", "|", "←");
run_inner(s, n_args, shape, and, sub, or, mul, "&", "-", "|", "*");
run_inner(s, n_args, shape, and, sub, or, rsh, "&", "-", "|", ">>");
run_inner(s, n_args, shape, and, sub, or, hsr, "&", "-", "|", "<<");
run_inner(s, n_args, shape, and, sub, sub, and, "&", "-", "-", "&");
run_inner(s, n_args, shape, and, sub, sub, add, "&", "-", "-", "+");
run_inner(s, n_args, shape, and, sub, sub, xor, "&", "-", "-", "^");
run_inner(s, n_args, shape, and, sub, sub, or, "&", "-", "-", "|");
run_inner(s, n_args, shape, and, sub, sub, sub, "&", "-", "-", "-");
run_inner(s, n_args, shape, and, sub, sub, bus, "&", "-", "-", "←");
run_inner(s, n_args, shape, and, sub, sub, mul, "&", "-", "-", "*");
run_inner(s, n_args, shape, and, sub, sub, rsh, "&", "-", "-", ">>");
run_inner(s, n_args, shape, and, sub, sub, hsr, "&", "-", "-", "<<");
run_inner(s, n_args, shape, and, sub, bus, and, "&", "-", "←", "&");
run_inner(s, n_args, shape, and, sub, bus, add, "&", "-", "←", "+");
run_inner(s, n_args, shape, and, sub, bus, xor, "&", "-", "←", "^");
run_inner(s, n_args, shape, and, sub, bus, or, "&", "-", "←", "|");
run_inner(s, n_args, shape, and, sub, bus, sub, "&", "-", "←", "-");
run_inner(s, n_args, shape, and, sub, bus, bus, "&", "-", "←", "←");
run_inner(s, n_args, shape, and, sub, bus, mul, "&", "-", "←", "*");
run_inner(s, n_args, shape, and, sub, bus, rsh, "&", "-", "←", ">>");
run_inner(s, n_args, shape, and, sub, bus, hsr, "&", "-", "←", "<<");
run_inner(s, n_args, shape, and, sub, mul, and, "&", "-", "*", "&");
run_inner(s, n_args, shape, and, sub, mul, add, "&", "-", "*", "+");
run_inner(s, n_args, shape, and, sub, mul, xor, "&", "-", "*", "^");
run_inner(s, n_args, shape, and, sub, mul, or, "&", "-", "*", "|");
run_inner(s, n_args, shape, and, sub, mul, sub, "&", "-", "*", "-");
run_inner(s, n_args, shape, and, sub, mul, bus, "&", "-", "*", "←");
run_inner(s, n_args, shape, and, sub, mul, mul, "&", "-", "*", "*");
run_inner(s, n_args, shape, and, sub, mul, rsh, "&", "-", "*", ">>");
run_inner(s, n_args, shape, and, sub, mul, hsr, "&", "-", "*", "<<");
run_inner(s, n_args, shape, and, sub, rsh, and, "&", "-", ">>", "&");
run_inner(s, n_args, shape, and, sub, rsh, add, "&", "-", ">>", "+");
run_inner(s, n_args, shape, and, sub, rsh, xor, "&", "-", ">>", "^");
run_inner(s, n_args, shape, and, sub, rsh, or, "&", "-", ">>", "|");
run_inner(s, n_args, shape, and, sub, rsh, sub, "&", "-", ">>", "-");
run_inner(s, n_args, shape, and, sub, rsh, bus, "&", "-", ">>", "←");
run_inner(s, n_args, shape, and, sub, rsh, mul, "&", "-", ">>", "*");
run_inner(s, n_args, shape, and, sub, rsh, rsh, "&", "-", ">>", ">>");
run_inner(s, n_args, shape, and, sub, rsh, hsr, "&", "-", ">>", "<<");
run_inner(s, n_args, shape, and, sub, hsr, and, "&", "-", "<<", "&");
run_inner(s, n_args, shape, and, sub, hsr, add, "&", "-", "<<", "+");
run_inner(s, n_args, shape, and, sub, hsr, xor, "&", "-", "<<", "^");
run_inner(s, n_args, shape, and, sub, hsr, or, "&", "-", "<<", "|");
run_inner(s, n_args, shape, and, sub, hsr, sub, "&", "-", "<<", "-");
run_inner(s, n_args, shape, and, sub, hsr, bus, "&", "-", "<<", "←");
run_inner(s, n_args, shape, and, sub, hsr, mul, "&", "-", "<<", "*");
run_inner(s, n_args, shape, and, sub, hsr, rsh, "&", "-", "<<", ">>");
run_inner(s, n_args, shape, and, sub, hsr, hsr, "&", "-", "<<", "<<");
run_inner(s, n_args, shape, and, bus, and, and, "&", "←", "&", "&");
run_inner(s, n_args, shape, and, bus, and, add, "&", "←", "&", "+");
run_inner(s, n_args, shape, and, bus, and, xor, "&", "←", "&", "^");
run_inner(s, n_args, shape, and, bus, and, or, "&", "←", "&", "|");
run_inner(s, n_args, shape, and, bus, and, sub, "&", "←", "&", "-");
run_inner(s, n_args, shape, and, bus, and, bus, "&", "←", "&", "←");
run_inner(s, n_args, shape, and, bus, and, mul, "&", "←", "&", "*");
run_inner(s, n_args, shape, and, bus, and, rsh, "&", "←", "&", ">>");
run_inner(s, n_args, shape, and, bus, and, hsr, "&", "←", "&", "<<");
run_inner(s, n_args, shape, and, bus, add, and, "&", "←", "+", "&");
run_inner(s, n_args, shape, and, bus, add, add, "&", "←", "+", "+");
run_inner(s, n_args, shape, and, bus, add, xor, "&", "←", "+", "^");
run_inner(s, n_args, shape, and, bus, add, or, "&", "←", "+", "|");
run_inner(s, n_args, shape, and, bus, add, sub, "&", "←", "+", "-");
run_inner(s, n_args, shape, and, bus, add, bus, "&", "←", "+", "←");
run_inner(s, n_args, shape, and, bus, add, mul, "&", "←", "+", "*");
run_inner(s, n_args, shape, and, bus, add, rsh, "&", "←", "+", ">>");
run_inner(s, n_args, shape, and, bus, add, hsr, "&", "←", "+", "<<");
run_inner(s, n_args, shape, and, bus, xor, and, "&", "←", "^", "&");
run_inner(s, n_args, shape, and, bus, xor, add, "&", "←", "^", "+");
run_inner(s, n_args, shape, and, bus, xor, xor, "&", "←", "^", "^");
run_inner(s, n_args, shape, and, bus, xor, or, "&", "←", "^", "|");
run_inner(s, n_args, shape, and, bus, xor, sub, "&", "←", "^", "-");
run_inner(s, n_args, shape, and, bus, xor, bus, "&", "←", "^", "←");
run_inner(s, n_args, shape, and, bus, xor, mul, "&", "←", "^", "*");
run_inner(s, n_args, shape, and, bus, xor, rsh, "&", "←", "^", ">>");
run_inner(s, n_args, shape, and, bus, xor, hsr, "&", "←", "^", "<<");
run_inner(s, n_args, shape, and, bus, or, and, "&", "←", "|", "&");
run_inner(s, n_args, shape, and, bus, or, add, "&", "←", "|", "+");
run_inner(s, n_args, shape, and, bus, or, xor, "&", "←", "|", "^");
run_inner(s, n_args, shape, and, bus, or, or, "&", "←", "|", "|");
run_inner(s, n_args, shape, and, bus, or, sub, "&", "←", "|", "-");
run_inner(s, n_args, shape, and, bus, or, bus, "&", "←", "|", "←");
run_inner(s, n_args, shape, and, bus, or, mul, "&", "←", "|", "*");
run_inner(s, n_args, shape, and, bus, or, rsh, "&", "←", "|", ">>");
run_inner(s, n_args, shape, and, bus, or, hsr, "&", "←", "|", "<<");
run_inner(s, n_args, shape, and, bus, sub, and, "&", "←", "-", "&");
run_inner(s, n_args, shape, and, bus, sub, add, "&", "←", "-", "+");
run_inner(s, n_args, shape, and, bus, sub, xor, "&", "←", "-", "^");
run_inner(s, n_args, shape, and, bus, sub, or, "&", "←", "-", "|");
run_inner(s, n_args, shape, and, bus, sub, sub, "&", "←", "-", "-");
run_inner(s, n_args, shape, and, bus, sub, bus, "&", "←", "-", "←");
run_inner(s, n_args, shape, and, bus, sub, mul, "&", "←", "-", "*");
run_inner(s, n_args, shape, and, bus, sub, rsh, "&", "←", "-", ">>");
run_inner(s, n_args, shape, and, bus, sub, hsr, "&", "←", "-", "<<");
run_inner(s, n_args, shape, and, bus, bus, and, "&", "←", "←", "&");
run_inner(s, n_args, shape, and, bus, bus, add, "&", "←", "←", "+");
run_inner(s, n_args, shape, and, bus, bus, xor, "&", "←", "←", "^");
run_inner(s, n_args, shape, and, bus, bus, or, "&", "←", "←", "|");
run_inner(s, n_args, shape, and, bus, bus, sub, "&", "←", "←", "-");
run_inner(s, n_args, shape, and, bus, bus, bus, "&", "←", "←", "←");
run_inner(s, n_args, shape, and, bus, bus, mul, "&", "←", "←", "*");
run_inner(s, n_args, shape, and, bus, bus, rsh, "&", "←", "←", ">>");
run_inner(s, n_args, shape, and, bus, bus, hsr, "&", "←", "←", "<<");
run_inner(s, n_args, shape, and, bus, mul, and, "&", "←", "*", "&");
run_inner(s, n_args, shape, and, bus, mul, add, "&", "←", "*", "+");
run_inner(s, n_args, shape, and, bus, mul, xor, "&", "←", "*", "^");
run_inner(s, n_args, shape, and, bus, mul, or, "&", "←", "*", "|");
run_inner(s, n_args, shape, and, bus, mul, sub, "&", "←", "*", "-");
run_inner(s, n_args, shape, and, bus, mul, bus, "&", "←", "*", "←");
run_inner(s, n_args, shape, and, bus, mul, mul, "&", "←", "*", "*");
run_inner(s, n_args, shape, and, bus, mul, rsh, "&", "←", "*", ">>");
run_inner(s, n_args, shape, and, bus, mul, hsr, "&", "←", "*", "<<");
run_inner(s, n_args, shape, and, bus, rsh, and, "&", "←", ">>", "&");
run_inner(s, n_args, shape, and, bus, rsh, add, "&", "←", ">>", "+");
run_inner(s, n_args, shape, and, bus, rsh, xor, "&", "←", ">>", "^");
run_inner(s, n_args, shape, and, bus, rsh, or, "&", "←", ">>", "|");
run_inner(s, n_args, shape, and, bus, rsh, sub, "&", "←", ">>", "-");
run_inner(s, n_args, shape, and, bus, rsh, bus, "&", "←", ">>", "←");
run_inner(s, n_args, shape, and, bus, rsh, mul, "&", "←", ">>", "*");
run_inner(s, n_args, shape, and, bus, rsh, rsh, "&", "←", ">>", ">>");
run_inner(s, n_args, shape, and, bus, rsh, hsr, "&", "←", ">>", "<<");
run_inner(s, n_args, shape, and, bus, hsr, and, "&", "←", "<<", "&");
run_inner(s, n_args, shape, and, bus, hsr, add, "&", "←", "<<", "+");
run_inner(s, n_args, shape, and, bus, hsr, xor, "&", "←", "<<", "^");
run_inner(s, n_args, shape, and, bus, hsr, or, "&", "←", "<<", "|");
run_inner(s, n_args, shape, and, bus, hsr, sub, "&", "←", "<<", "-");
run_inner(s, n_args, shape, and, bus, hsr, bus, "&", "←", "<<", "←");
run_inner(s, n_args, shape, and, bus, hsr, mul, "&", "←", "<<", "*");
run_inner(s, n_args, shape, and, bus, hsr, rsh, "&", "←", "<<", ">>");
run_inner(s, n_args, shape, and, bus, hsr, hsr, "&", "←", "<<", "<<");
run_inner(s, n_args, shape, and, mul, and, and, "&", "*", "&", "&");
run_inner(s, n_args, shape, and, mul, and, add, "&", "*", "&", "+");
run_inner(s, n_args, shape, and, mul, and, xor, "&", "*", "&", "^");
run_inner(s, n_args, shape, and, mul, and, or, "&", "*", "&", "|");
run_inner(s, n_args, shape, and, mul, and, sub, "&", "*", "&", "-");
run_inner(s, n_args, shape, and, mul, and, bus, "&", "*", "&", "←");
run_inner(s, n_args, shape, and, mul, and, mul, "&", "*", "&", "*");
run_inner(s, n_args, shape, and, mul, and, rsh, "&", "*", "&", ">>");
run_inner(s, n_args, shape, and, mul, and, hsr, "&", "*", "&", "<<");
run_inner(s, n_args, shape, and, mul, add, and, "&", "*", "+", "&");
run_inner(s, n_args, shape, and, mul, add, add, "&", "*", "+", "+");
run_inner(s, n_args, shape, and, mul, add, xor, "&", "*", "+", "^");
run_inner(s, n_args, shape, and, mul, add, or, "&", "*", "+", "|");
run_inner(s, n_args, shape, and, mul, add, sub, "&", "*", "+", "-");
run_inner(s, n_args, shape, and, mul, add, bus, "&", "*", "+", "←");
run_inner(s, n_args, shape, and, mul, add, mul, "&", "*", "+", "*");
run_inner(s, n_args, shape, and, mul, add, rsh, "&", "*", "+", ">>");
run_inner(s, n_args, shape, and, mul, add, hsr, "&", "*", "+", "<<");
run_inner(s, n_args, shape, and, mul, xor, and, "&", "*", "^", "&");
run_inner(s, n_args, shape, and, mul, xor, add, "&", "*", "^", "+");
run_inner(s, n_args, shape, and, mul, xor, xor, "&", "*", "^", "^");
run_inner(s, n_args, shape, and, mul, xor, or, "&", "*", "^", "|");
run_inner(s, n_args, shape, and, mul, xor, sub, "&", "*", "^", "-");
run_inner(s, n_args, shape, and, mul, xor, bus, "&", "*", "^", "←");
run_inner(s, n_args, shape, and, mul, xor, mul, "&", "*", "^", "*");
run_inner(s, n_args, shape, and, mul, xor, rsh, "&", "*", "^", ">>");
run_inner(s, n_args, shape, and, mul, xor, hsr, "&", "*", "^", "<<");
run_inner(s, n_args, shape, and, mul, or, and, "&", "*", "|", "&");
run_inner(s, n_args, shape, and, mul, or, add, "&", "*", "|", "+");
run_inner(s, n_args, shape, and, mul, or, xor, "&", "*", "|", "^");
run_inner(s, n_args, shape, and, mul, or, or, "&", "*", "|", "|");
run_inner(s, n_args, shape, and, mul, or, sub, "&", "*", "|", "-");
run_inner(s, n_args, shape, and, mul, or, bus, "&", "*", "|", "←");
run_inner(s, n_args, shape, and, mul, or, mul, "&", "*", "|", "*");
run_inner(s, n_args, shape, and, mul, or, rsh, "&", "*", "|", ">>");
run_inner(s, n_args, shape, and, mul, or, hsr, "&", "*", "|", "<<");
run_inner(s, n_args, shape, and, mul, sub, and, "&", "*", "-", "&");
run_inner(s, n_args, shape, and, mul, sub, add, "&", "*", "-", "+");
run_inner(s, n_args, shape, and, mul, sub, xor, "&", "*", "-", "^");
run_inner(s, n_args, shape, and, mul, sub, or, "&", "*", "-", "|");
run_inner(s, n_args, shape, and, mul, sub, sub, "&", "*", "-", "-");
run_inner(s, n_args, shape, and, mul, sub, bus, "&", "*", "-", "←");
run_inner(s, n_args, shape, and, mul, sub, mul, "&", "*", "-", "*");
run_inner(s, n_args, shape, and, mul, sub, rsh, "&", "*", "-", ">>");
run_inner(s, n_args, shape, and, mul, sub, hsr, "&", "*", "-", "<<");
run_inner(s, n_args, shape, and, mul, bus, and, "&", "*", "←", "&");
run_inner(s, n_args, shape, and, mul, bus, add, "&", "*", "←", "+");
run_inner(s, n_args, shape, and, mul, bus, xor, "&", "*", "←", "^");
run_inner(s, n_args, shape, and, mul, bus, or, "&", "*", "←", "|");
run_inner(s, n_args, shape, and, mul, bus, sub, "&", "*", "←", "-");
run_inner(s, n_args, shape, and, mul, bus, bus, "&", "*", "←", "←");
run_inner(s, n_args, shape, and, mul, bus, mul, "&", "*", "←", "*");
run_inner(s, n_args, shape, and, mul, bus, rsh, "&", "*", "←", ">>");
run_inner(s, n_args, shape, and, mul, bus, hsr, "&", "*", "←", "<<");
run_inner(s, n_args, shape, and, mul, mul, and, "&", "*", "*", "&");
run_inner(s, n_args, shape, and, mul, mul, add, "&", "*", "*", "+");
run_inner(s, n_args, shape, and, mul, mul, xor, "&", "*", "*", "^");
run_inner(s, n_args, shape, and, mul, mul, or, "&", "*", "*", "|");
run_inner(s, n_args, shape, and, mul, mul, sub, "&", "*", "*", "-");
run_inner(s, n_args, shape, and, mul, mul, bus, "&", "*", "*", "←");
run_inner(s, n_args, shape, and, mul, mul, mul, "&", "*", "*", "*");
run_inner(s, n_args, shape, and, mul, mul, rsh, "&", "*", "*", ">>");
run_inner(s, n_args, shape, and, mul, mul, hsr, "&", "*", "*", "<<");
run_inner(s, n_args, shape, and, mul, rsh, and, "&", "*", ">>", "&");
run_inner(s, n_args, shape, and, mul, rsh, add, "&", "*", ">>", "+");
run_inner(s, n_args, shape, and, mul, rsh, xor, "&", "*", ">>", "^");
run_inner(s, n_args, shape, and, mul, rsh, or, "&", "*", ">>", "|");
run_inner(s, n_args, shape, and, mul, rsh, sub, "&", "*", ">>", "-");
run_inner(s, n_args, shape, and, mul, rsh, bus, "&", "*", ">>", "←");
run_inner(s, n_args, shape, and, mul, rsh, mul, "&", "*", ">>", "*");
run_inner(s, n_args, shape, and, mul, rsh, rsh, "&", "*", ">>", ">>");
run_inner(s, n_args, shape, and, mul, rsh, hsr, "&", "*", ">>", "<<");
run_inner(s, n_args, shape, and, mul, hsr, and, "&", "*", "<<", "&");
run_inner(s, n_args, shape, and, mul, hsr, add, "&", "*", "<<", "+");
run_inner(s, n_args, shape, and, mul, hsr, xor, "&", "*", "<<", "^");
run_inner(s, n_args, shape, and, mul, hsr, or, "&", "*", "<<", "|");
run_inner(s, n_args, shape, and, mul, hsr, sub, "&", "*", "<<", "-");
run_inner(s, n_args, shape, and, mul, hsr, bus, "&", "*", "<<", "←");
run_inner(s, n_args, shape, and, mul, hsr, mul, "&", "*", "<<", "*");
run_inner(s, n_args, shape, and, mul, hsr, rsh, "&", "*", "<<", ">>");
run_inner(s, n_args, shape, and, mul, hsr, hsr, "&", "*", "<<", "<<");
run_inner(s, n_args, shape, and, rsh, and, and, "&", ">>", "&", "&");
run_inner(s, n_args, shape, and, rsh, and, add, "&", ">>", "&", "+");
run_inner(s, n_args, shape, and, rsh, and, xor, "&", ">>", "&", "^");
run_inner(s, n_args, shape, and, rsh, and, or, "&", ">>", "&", "|");
run_inner(s, n_args, shape, and, rsh, and, sub, "&", ">>", "&", "-");
run_inner(s, n_args, shape, and, rsh, and, bus, "&", ">>", "&", "←");
run_inner(s, n_args, shape, and, rsh, and, mul, "&", ">>", "&", "*");
run_inner(s, n_args, shape, and, rsh, and, rsh, "&", ">>", "&", ">>");
run_inner(s, n_args, shape, and, rsh, and, hsr, "&", ">>", "&", "<<");
run_inner(s, n_args, shape, and, rsh, add, and, "&", ">>", "+", "&");
run_inner(s, n_args, shape, and, rsh, add, add, "&", ">>", "+", "+");
run_inner(s, n_args, shape, and, rsh, add, xor, "&", ">>", "+", "^");
run_inner(s, n_args, shape, and, rsh, add, or, "&", ">>", "+", "|");
run_inner(s, n_args, shape, and, rsh, add, sub, "&", ">>", "+", "-");
run_inner(s, n_args, shape, and, rsh, add, bus, "&", ">>", "+", "←");
run_inner(s, n_args, shape, and, rsh, add, mul, "&", ">>", "+", "*");
run_inner(s, n_args, shape, and, rsh, add, rsh, "&", ">>", "+", ">>");
run_inner(s, n_args, shape, and, rsh, add, hsr, "&", ">>", "+", "<<");
run_inner(s, n_args, shape, and, rsh, xor, and, "&", ">>", "^", "&");
run_inner(s, n_args, shape, and, rsh, xor, add, "&", ">>", "^", "+");
run_inner(s, n_args, shape, and, rsh, xor, xor, "&", ">>", "^", "^");
run_inner(s, n_args, shape, and, rsh, xor, or, "&", ">>", "^", "|");
run_inner(s, n_args, shape, and, rsh, xor, sub, "&", ">>", "^", "-");
run_inner(s, n_args, shape, and, rsh, xor, bus, "&", ">>", "^", "←");
run_inner(s, n_args, shape, and, rsh, xor, mul, "&", ">>", "^", "*");
run_inner(s, n_args, shape, and, rsh, xor, rsh, "&", ">>", "^", ">>");
run_inner(s, n_args, shape, and, rsh, xor, hsr, "&", ">>", "^", "<<");
run_inner(s, n_args, shape, and, rsh, or, and, "&", ">>", "|", "&");
run_inner(s, n_args, shape, and, rsh, or, add, "&", ">>", "|", "+");
run_inner(s, n_args, shape, and, rsh, or, xor, "&", ">>", "|", "^");
run_inner(s, n_args, shape, and, rsh, or, or, "&", ">>", "|", "|");
run_inner(s, n_args, shape, and, rsh, or, sub, "&", ">>", "|", "-");
run_inner(s, n_args, shape, and, rsh, or, bus, "&", ">>", "|", "←");
run_inner(s, n_args, shape, and, rsh, or, mul, "&", ">>", "|", "*");
run_inner(s, n_args, shape, and, rsh, or, rsh, "&", ">>", "|", ">>");
run_inner(s, n_args, shape, and, rsh, or, hsr, "&", ">>", "|", "<<");
run_inner(s, n_args, shape, and, rsh, sub, and, "&", ">>", "-", "&");
run_inner(s, n_args, shape, and, rsh, sub, add, "&", ">>", "-", "+");
run_inner(s, n_args, shape, and, rsh, sub, xor, "&", ">>", "-", "^");
run_inner(s, n_args, shape, and, rsh, sub, or, "&", ">>", "-", "|");
run_inner(s, n_args, shape, and, rsh, sub, sub, "&", ">>", "-", "-");
run_inner(s, n_args, shape, and, rsh, sub, bus, "&", ">>", "-", "←");
run_inner(s, n_args, shape, and, rsh, sub, mul, "&", ">>", "-", "*");
run_inner(s, n_args, shape, and, rsh, sub, rsh, "&", ">>", "-", ">>");
run_inner(s, n_args, shape, and, rsh, sub, hsr, "&", ">>", "-", "<<");
run_inner(s, n_args, shape, and, rsh, bus, and, "&", ">>", "←", "&");
run_inner(s, n_args, shape, and, rsh, bus, add, "&", ">>", "←", "+");
run_inner(s, n_args, shape, and, rsh, bus, xor, "&", ">>", "←", "^");
run_inner(s, n_args, shape, and, rsh, bus, or, "&", ">>", "←", "|");
run_inner(s, n_args, shape, and, rsh, bus, sub, "&", ">>", "←", "-");
run_inner(s, n_args, shape, and, rsh, bus, bus, "&", ">>", "←", "←");
run_inner(s, n_args, shape, and, rsh, bus, mul, "&", ">>", "←", "*");
run_inner(s, n_args, shape, and, rsh, bus, rsh, "&", ">>", "←", ">>");
run_inner(s, n_args, shape, and, rsh, bus, hsr, "&", ">>", "←", "<<");
run_inner(s, n_args, shape, and, rsh, mul, and, "&", ">>", "*", "&");
run_inner(s, n_args, shape, and, rsh, mul, add, "&", ">>", "*", "+");
run_inner(s, n_args, shape, and, rsh, mul, xor, "&", ">>", "*", "^");
run_inner(s, n_args, shape, and, rsh, mul, or, "&", ">>", "*", "|");
run_inner(s, n_args, shape, and, rsh, mul, sub, "&", ">>", "*", "-");
run_inner(s, n_args, shape, and, rsh, mul, bus, "&", ">>", "*", "←");
run_inner(s, n_args, shape, and, rsh, mul, mul, "&", ">>", "*", "*");
run_inner(s, n_args, shape, and, rsh, mul, rsh, "&", ">>", "*", ">>");
run_inner(s, n_args, shape, and, rsh, mul, hsr, "&", ">>", "*", "<<");
run_inner(s, n_args, shape, and, rsh, rsh, and, "&", ">>", ">>", "&");
run_inner(s, n_args, shape, and, rsh, rsh, add, "&", ">>", ">>", "+");
run_inner(s, n_args, shape, and, rsh, rsh, xor, "&", ">>", ">>", "^");
run_inner(s, n_args, shape, and, rsh, rsh, or, "&", ">>", ">>", "|");
run_inner(s, n_args, shape, and, rsh, rsh, sub, "&", ">>", ">>", "-");
run_inner(s, n_args, shape, and, rsh, rsh, bus, "&", ">>", ">>", "←");
run_inner(s, n_args, shape, and, rsh, rsh, mul, "&", ">>", ">>", "*");
run_inner(s, n_args, shape, and, rsh, rsh, rsh, "&", ">>", ">>", ">>");
run_inner(s, n_args, shape, and, rsh, rsh, hsr, "&", ">>", ">>", "<<");
run_inner(s, n_args, shape, and, rsh, hsr, and, "&", ">>", "<<", "&");
run_inner(s, n_args, shape, and, rsh, hsr, add, "&", ">>", "<<", "+");
run_inner(s, n_args, shape, and, rsh, hsr, xor, "&", ">>", "<<", "^");
run_inner(s, n_args, shape, and, rsh, hsr, or, "&", ">>", "<<", "|");
run_inner(s, n_args, shape, and, rsh, hsr, sub, "&", ">>", "<<", "-");
run_inner(s, n_args, shape, and, rsh, hsr, bus, "&", ">>", "<<", "←");
run_inner(s, n_args, shape, and, rsh, hsr, mul, "&", ">>", "<<", "*");
run_inner(s, n_args, shape, and, rsh, hsr, rsh, "&", ">>", "<<", ">>");
run_inner(s, n_args, shape, and, rsh, hsr, hsr, "&", ">>", "<<", "<<");
run_inner(s, n_args, shape, and, hsr, and, and, "&", "<<", "&", "&");
run_inner(s, n_args, shape, and, hsr, and, add, "&", "<<", "&", "+");
run_inner(s, n_args, shape, and, hsr, and, xor, "&", "<<", "&", "^");
run_inner(s, n_args, shape, and, hsr, and, or, "&", "<<", "&", "|");
run_inner(s, n_args, shape, and, hsr, and, sub, "&", "<<", "&", "-");
run_inner(s, n_args, shape, and, hsr, and, bus, "&", "<<", "&", "←");
run_inner(s, n_args, shape, and, hsr, and, mul, "&", "<<", "&", "*");
run_inner(s, n_args, shape, and, hsr, and, rsh, "&", "<<", "&", ">>");
run_inner(s, n_args, shape, and, hsr, and, hsr, "&", "<<", "&", "<<");
run_inner(s, n_args, shape, and, hsr, add, and, "&", "<<", "+", "&");
run_inner(s, n_args, shape, and, hsr, add, add, "&", "<<", "+", "+");
run_inner(s, n_args, shape, and, hsr, add, xor, "&", "<<", "+", "^");
run_inner(s, n_args, shape, and, hsr, add, or, "&", "<<", "+", "|");
run_inner(s, n_args, shape, and, hsr, add, sub, "&", "<<", "+", "-");
run_inner(s, n_args, shape, and, hsr, add, bus, "&", "<<", "+", "←");
run_inner(s, n_args, shape, and, hsr, add, mul, "&", "<<", "+", "*");
run_inner(s, n_args, shape, and, hsr, add, rsh, "&", "<<", "+", ">>");
run_inner(s, n_args, shape, and, hsr, add, hsr, "&", "<<", "+", "<<");
run_inner(s, n_args, shape, and, hsr, xor, and, "&", "<<", "^", "&");
run_inner(s, n_args, shape, and, hsr, xor, add, "&", "<<", "^", "+");
run_inner(s, n_args, shape, and, hsr, xor, xor, "&", "<<", "^", "^");
run_inner(s, n_args, shape, and, hsr, xor, or, "&", "<<", "^", "|");
run_inner(s, n_args, shape, and, hsr, xor, sub, "&", "<<", "^", "-");
run_inner(s, n_args, shape, and, hsr, xor, bus, "&", "<<", "^", "←");
run_inner(s, n_args, shape, and, hsr, xor, mul, "&", "<<", "^", "*");
run_inner(s, n_args, shape, and, hsr, xor, rsh, "&", "<<", "^", ">>");
run_inner(s, n_args, shape, and, hsr, xor, hsr, "&", "<<", "^", "<<");
run_inner(s, n_args, shape, and, hsr, or, and, "&", "<<", "|", "&");
run_inner(s, n_args, shape, and, hsr, or, add, "&", "<<", "|", "+");
run_inner(s, n_args, shape, and, hsr, or, xor, "&", "<<", "|", "^");
run_inner(s, n_args, shape, and, hsr, or, or, "&", "<<", "|", "|");
run_inner(s, n_args, shape, and, hsr, or, sub, "&", "<<", "|", "-");
run_inner(s, n_args, shape, and, hsr, or, bus, "&", "<<", "|", "←");
run_inner(s, n_args, shape, and, hsr, or, mul, "&", "<<", "|", "*");
run_inner(s, n_args, shape, and, hsr, or, rsh, "&", "<<", "|", ">>");
run_inner(s, n_args, shape, and, hsr, or, hsr, "&", "<<", "|", "<<");
run_inner(s, n_args, shape, and, hsr, sub, and, "&", "<<", "-", "&");
run_inner(s, n_args, shape, and, hsr, sub, add, "&", "<<", "-", "+");
run_inner(s, n_args, shape, and, hsr, sub, xor, "&", "<<", "-", "^");
run_inner(s, n_args, shape, and, hsr, sub, or, "&", "<<", "-", "|");
run_inner(s, n_args, shape, and, hsr, sub, sub, "&", "<<", "-", "-");
run_inner(s, n_args, shape, and, hsr, sub, bus, "&", "<<", "-", "←");
run_inner(s, n_args, shape, and, hsr, sub, mul, "&", "<<", "-", "*");
run_inner(s, n_args, shape, and, hsr, sub, rsh, "&", "<<", "-", ">>");
run_inner(s, n_args, shape, and, hsr, sub, hsr, "&", "<<", "-", "<<");
run_inner(s, n_args, shape, and, hsr, bus, and, "&", "<<", "←", "&");
run_inner(s, n_args, shape, and, hsr, bus, add, "&", "<<", "←", "+");
run_inner(s, n_args, shape, and, hsr, bus, xor, "&", "<<", "←", "^");
run_inner(s, n_args, shape, and, hsr, bus, or, "&", "<<", "←", "|");
run_inner(s, n_args, shape, and, hsr, bus, sub, "&", "<<", "←", "-");
run_inner(s, n_args, shape, and, hsr, bus, bus, "&", "<<", "←", "←");
run_inner(s, n_args, shape, and, hsr, bus, mul, "&", "<<", "←", "*");
run_inner(s, n_args, shape, and, hsr, bus, rsh, "&", "<<", "←", ">>");
run_inner(s, n_args, shape, and, hsr, bus, hsr, "&", "<<", "←", "<<");
run_inner(s, n_args, shape, and, hsr, mul, and, "&", "<<", "*", "&");
run_inner(s, n_args, shape, and, hsr, mul, add, "&", "<<", "*", "+");
run_inner(s, n_args, shape, and, hsr, mul, xor, "&", "<<", "*", "^");
run_inner(s, n_args, shape, and, hsr, mul, or, "&", "<<", "*", "|");
run_inner(s, n_args, shape, and, hsr, mul, sub, "&", "<<", "*", "-");
run_inner(s, n_args, shape, and, hsr, mul, bus, "&", "<<", "*", "←");
run_inner(s, n_args, shape, and, hsr, mul, mul, "&", "<<", "*", "*");
run_inner(s, n_args, shape, and, hsr, mul, rsh, "&", "<<", "*", ">>");
run_inner(s, n_args, shape, and, hsr, mul, hsr, "&", "<<", "*", "<<");
run_inner(s, n_args, shape, and, hsr, rsh, and, "&", "<<", ">>", "&");
run_inner(s, n_args, shape, and, hsr, rsh, add, "&", "<<", ">>", "+");
run_inner(s, n_args, shape, and, hsr, rsh, xor, "&", "<<", ">>", "^");
run_inner(s, n_args, shape, and, hsr, rsh, or, "&", "<<", ">>", "|");
run_inner(s, n_args, shape, and, hsr, rsh, sub, "&", "<<", ">>", "-");
run_inner(s, n_args, shape, and, hsr, rsh, bus, "&", "<<", ">>", "←");
run_inner(s, n_args, shape, and, hsr, rsh, mul, "&", "<<", ">>", "*");
run_inner(s, n_args, shape, and, hsr, rsh, rsh, "&", "<<", ">>", ">>");
run_inner(s, n_args, shape, and, hsr, rsh, hsr, "&", "<<", ">>", "<<");
run_inner(s, n_args, shape, and, hsr, hsr, and, "&", "<<", "<<", "&");
run_inner(s, n_args, shape, and, hsr, hsr, add, "&", "<<", "<<", "+");
run_inner(s, n_args, shape, and, hsr, hsr, xor, "&", "<<", "<<", "^");
run_inner(s, n_args, shape, and, hsr, hsr, or, "&", "<<", "<<", "|");
run_inner(s, n_args, shape, and, hsr, hsr, sub, "&", "<<", "<<", "-");
run_inner(s, n_args, shape, and, hsr, hsr, bus, "&", "<<", "<<", "←");
run_inner(s, n_args, shape, and, hsr, hsr, mul, "&", "<<", "<<", "*");
run_inner(s, n_args, shape, and, hsr, hsr, rsh, "&", "<<", "<<", ">>");
run_inner(s, n_args, shape, and, hsr, hsr, hsr, "&", "<<", "<<", "<<");
}));
threads.push(thread::spawn(move || {
run_inner(s, n_args, shape, add, and, and, and, "+", "&", "&", "&");
run_inner(s, n_args, shape, add, and, and, add, "+", "&", "&", "+");
run_inner(s, n_args, shape, add, and, and, xor, "+", "&", "&", "^");
run_inner(s, n_args, shape, add, and, and, or, "+", "&", "&", "|");
run_inner(s, n_args, shape, add, and, and, sub, "+", "&", "&", "-");
run_inner(s, n_args, shape, add, and, and, bus, "+", "&", "&", "←");
run_inner(s, n_args, shape, add, and, and, mul, "+", "&", "&", "*");
run_inner(s, n_args, shape, add, and, and, rsh, "+", "&", "&", ">>");
run_inner(s, n_args, shape, add, and, and, hsr, "+", "&", "&", "<<");
run_inner(s, n_args, shape, add, and, add, and, "+", "&", "+", "&");
run_inner(s, n_args, shape, add, and, add, add, "+", "&", "+", "+");
run_inner(s, n_args, shape, add, and, add, xor, "+", "&", "+", "^");
run_inner(s, n_args, shape, add, and, add, or, "+", "&", "+", "|");
run_inner(s, n_args, shape, add, and, add, sub, "+", "&", "+", "-");
run_inner(s, n_args, shape, add, and, add, bus, "+", "&", "+", "←");
run_inner(s, n_args, shape, add, and, add, mul, "+", "&", "+", "*");
run_inner(s, n_args, shape, add, and, add, rsh, "+", "&", "+", ">>");
run_inner(s, n_args, shape, add, and, add, hsr, "+", "&", "+", "<<");
run_inner(s, n_args, shape, add, and, xor, and, "+", "&", "^", "&");
run_inner(s, n_args, shape, add, and, xor, add, "+", "&", "^", "+");
run_inner(s, n_args, shape, add, and, xor, xor, "+", "&", "^", "^");
run_inner(s, n_args, shape, add, and, xor, or, "+", "&", "^", "|");
run_inner(s, n_args, shape, add, and, xor, sub, "+", "&", "^", "-");
run_inner(s, n_args, shape, add, and, xor, bus, "+", "&", "^", "←");
run_inner(s, n_args, shape, add, and, xor, mul, "+", "&", "^", "*");
run_inner(s, n_args, shape, add, and, xor, rsh, "+", "&", "^", ">>");
run_inner(s, n_args, shape, add, and, xor, hsr, "+", "&", "^", "<<");
run_inner(s, n_args, shape, add, and, or, and, "+", "&", "|", "&");
run_inner(s, n_args, shape, add, and, or, add, "+", "&", "|", "+");
run_inner(s, n_args, shape, add, and, or, xor, "+", "&", "|", "^");
run_inner(s, n_args, shape, add, and, or, or, "+", "&", "|", "|");
run_inner(s, n_args, shape, add, and, or, sub, "+", "&", "|", "-");
run_inner(s, n_args, shape, add, and, or, bus, "+", "&", "|", "←");
run_inner(s, n_args, shape, add, and, or, mul, "+", "&", "|", "*");
run_inner(s, n_args, shape, add, and, or, rsh, "+", "&", "|", ">>");
run_inner(s, n_args, shape, add, and, or, hsr, "+", "&", "|", "<<");
run_inner(s, n_args, shape, add, and, sub, and, "+", "&", "-", "&");
run_inner(s, n_args, shape, add, and, sub, add, "+", "&", "-", "+");
run_inner(s, n_args, shape, add, and, sub, xor, "+", "&", "-", "^");
run_inner(s, n_args, shape, add, and, sub, or, "+", "&", "-", "|");
run_inner(s, n_args, shape, add, and, sub, sub, "+", "&", "-", "-");
run_inner(s, n_args, shape, add, and, sub, bus, "+", "&", "-", "←");
run_inner(s, n_args, shape, add, and, sub, mul, "+", "&", "-", "*");
run_inner(s, n_args, shape, add, and, sub, rsh, "+", "&", "-", ">>");
run_inner(s, n_args, shape, add, and, sub, hsr, "+", "&", "-", "<<");
run_inner(s, n_args, shape, add, and, bus, and, "+", "&", "←", "&");
run_inner(s, n_args, shape, add, and, bus, add, "+", "&", "←", "+");
run_inner(s, n_args, shape, add, and, bus, xor, "+", "&", "←", "^");
run_inner(s, n_args, shape, add, and, bus, or, "+", "&", "←", "|");
run_inner(s, n_args, shape, add, and, bus, sub, "+", "&", "←", "-");
run_inner(s, n_args, shape, add, and, bus, bus, "+", "&", "←", "←");
run_inner(s, n_args, shape, add, and, bus, mul, "+", "&", "←", "*");
run_inner(s, n_args, shape, add, and, bus, rsh, "+", "&", "←", ">>");
run_inner(s, n_args, shape, add, and, bus, hsr, "+", "&", "←", "<<");
run_inner(s, n_args, shape, add, and, mul, and, "+", "&", "*", "&");
run_inner(s, n_args, shape, add, and, mul, add, "+", "&", "*", "+");
run_inner(s, n_args, shape, add, and, mul, xor, "+", "&", "*", "^");
run_inner(s, n_args, shape, add, and, mul, or, "+", "&", "*", "|");
run_inner(s, n_args, shape, add, and, mul, sub, "+", "&", "*", "-");
run_inner(s, n_args, shape, add, and, mul, bus, "+", "&", "*", "←");
run_inner(s, n_args, shape, add, and, mul, mul, "+", "&", "*", "*");
run_inner(s, n_args, shape, add, and, mul, rsh, "+", "&", "*", ">>");
run_inner(s, n_args, shape, add, and, mul, hsr, "+", "&", "*", "<<");
run_inner(s, n_args, shape, add, and, rsh, and, "+", "&", ">>", "&");
run_inner(s, n_args, shape, add, and, rsh, add, "+", "&", ">>", "+");
run_inner(s, n_args, shape, add, and, rsh, xor, "+", "&", ">>", "^");
run_inner(s, n_args, shape, add, and, rsh, or, "+", "&", ">>", "|");
run_inner(s, n_args, shape, add, and, rsh, sub, "+", "&", ">>", "-");
run_inner(s, n_args, shape, add, and, rsh, bus, "+", "&", ">>", "←");
run_inner(s, n_args, shape, add, and, rsh, mul, "+", "&", ">>", "*");
run_inner(s, n_args, shape, add, and, rsh, rsh, "+", "&", ">>", ">>");
run_inner(s, n_args, shape, add, and, rsh, hsr, "+", "&", ">>", "<<");
run_inner(s, n_args, shape, add, and, hsr, and, "+", "&", "<<", "&");
run_inner(s, n_args, shape, add, and, hsr, add, "+", "&", "<<", "+");
run_inner(s, n_args, shape, add, and, hsr, xor, "+", "&", "<<", "^");
run_inner(s, n_args, shape, add, and, hsr, or, "+", "&", "<<", "|");
run_inner(s, n_args, shape, add, and, hsr, sub, "+", "&", "<<", "-");
run_inner(s, n_args, shape, add, and, hsr, bus, "+", "&", "<<", "←");
run_inner(s, n_args, shape, add, and, hsr, mul, "+", "&", "<<", "*");
run_inner(s, n_args, shape, add, and, hsr, rsh, "+", "&", "<<", ">>");
run_inner(s, n_args, shape, add, and, hsr, hsr, "+", "&", "<<", "<<");
run_inner(s, n_args, shape, add, add, and, and, "+", "+", "&", "&");
run_inner(s, n_args, shape, add, add, and, add, "+", "+", "&", "+");
run_inner(s, n_args, shape, add, add, and, xor, "+", "+", "&", "^");
run_inner(s, n_args, shape, add, add, and, or, "+", "+", "&", "|");
run_inner(s, n_args, shape, add, add, and, sub, "+", "+", "&", "-");
run_inner(s, n_args, shape, add, add, and, bus, "+", "+", "&", "←");
run_inner(s, n_args, shape, add, add, and, mul, "+", "+", "&", "*");
run_inner(s, n_args, shape, add, add, and, rsh, "+", "+", "&", ">>");
run_inner(s, n_args, shape, add, add, and, hsr, "+", "+", "&", "<<");
run_inner(s, n_args, shape, add, add, add, and, "+", "+", "+", "&");
run_inner(s, n_args, shape, add, add, add, add, "+", "+", "+", "+");
run_inner(s, n_args, shape, add, add, add, xor, "+", "+", "+", "^");
run_inner(s, n_args, shape, add, add, add, or, "+", "+", "+", "|");
run_inner(s, n_args, shape, add, add, add, sub, "+", "+", "+", "-");
run_inner(s, n_args, shape, add, add, add, bus, "+", "+", "+", "←");
run_inner(s, n_args, shape, add, add, add, mul, "+", "+", "+", "*");
run_inner(s, n_args, shape, add, add, add, rsh, "+", "+", "+", ">>");
run_inner(s, n_args, shape, add, add, add, hsr, "+", "+", "+", "<<");
run_inner(s, n_args, shape, add, add, xor, and, "+", "+", "^", "&");
run_inner(s, n_args, shape, add, add, xor, add, "+", "+", "^", "+");
run_inner(s, n_args, shape, add, add, xor, xor, "+", "+", "^", "^");
run_inner(s, n_args, shape, add, add, xor, or, "+", "+", "^", "|");
run_inner(s, n_args, shape, add, add, xor, sub, "+", "+", "^", "-");
run_inner(s, n_args, shape, add, add, xor, bus, "+", "+", "^", "←");
run_inner(s, n_args, shape, add, add, xor, mul, "+", "+", "^", "*");
run_inner(s, n_args, shape, add, add, xor, rsh, "+", "+", "^", ">>");
run_inner(s, n_args, shape, add, add, xor, hsr, "+", "+", "^", "<<");
run_inner(s, n_args, shape, add, add, or, and, "+", "+", "|", "&");
run_inner(s, n_args, shape, add, add, or, add, "+", "+", "|", "+");
run_inner(s, n_args, shape, add, add, or, xor, "+", "+", "|", "^");
run_inner(s, n_args, shape, add, add, or, or, "+", "+", "|", "|");
run_inner(s, n_args, shape, add, add, or, sub, "+", "+", "|", "-");
run_inner(s, n_args, shape, add, add, or, bus, "+", "+", "|", "←");
run_inner(s, n_args, shape, add, add, or, mul, "+", "+", "|", "*");
run_inner(s, n_args, shape, add, add, or, rsh, "+", "+", "|", ">>");
run_inner(s, n_args, shape, add, add, or, hsr, "+", "+", "|", "<<");
run_inner(s, n_args, shape, add, add, sub, and, "+", "+", "-", "&");
run_inner(s, n_args, shape, add, add, sub, add, "+", "+", "-", "+");
run_inner(s, n_args, shape, add, add, sub, xor, "+", "+", "-", "^");
run_inner(s, n_args, shape, add, add, sub, or, "+", "+", "-", "|");
run_inner(s, n_args, shape, add, add, sub, sub, "+", "+", "-", "-");
run_inner(s, n_args, shape, add, add, sub, bus, "+", "+", "-", "←");
run_inner(s, n_args, shape, add, add, sub, mul, "+", "+", "-", "*");
run_inner(s, n_args, shape, add, add, sub, rsh, "+", "+", "-", ">>");
run_inner(s, n_args, shape, add, add, sub, hsr, "+", "+", "-", "<<");
run_inner(s, n_args, shape, add, add, bus, and, "+", "+", "←", "&");
run_inner(s, n_args, shape, add, add, bus, add, "+", "+", "←", "+");
run_inner(s, n_args, shape, add, add, bus, xor, "+", "+", "←", "^");
run_inner(s, n_args, shape, add, add, bus, or, "+", "+", "←", "|");
run_inner(s, n_args, shape, add, add, bus, sub, "+", "+", "←", "-");
run_inner(s, n_args, shape, add, add, bus, bus, "+", "+", "←", "←");
run_inner(s, n_args, shape, add, add, bus, mul, "+", "+", "←", "*");
run_inner(s, n_args, shape, add, add, bus, rsh, "+", "+", "←", ">>");
run_inner(s, n_args, shape, add, add, bus, hsr, "+", "+", "←", "<<");
run_inner(s, n_args, shape, add, add, mul, and, "+", "+", "*", "&");
run_inner(s, n_args, shape, add, add, mul, add, "+", "+", "*", "+");
run_inner(s, n_args, shape, add, add, mul, xor, "+", "+", "*", "^");
run_inner(s, n_args, shape, add, add, mul, or, "+", "+", "*", "|");
run_inner(s, n_args, shape, add, add, mul, sub, "+", "+", "*", "-");
run_inner(s, n_args, shape, add, add, mul, bus, "+", "+", "*", "←");
run_inner(s, n_args, shape, add, add, mul, mul, "+", "+", "*", "*");
run_inner(s, n_args, shape, add, add, mul, rsh, "+", "+", "*", ">>");
run_inner(s, n_args, shape, add, add, mul, hsr, "+", "+", "*", "<<");
run_inner(s, n_args, shape, add, add, rsh, and, "+", "+", ">>", "&");
run_inner(s, n_args, shape, add, add, rsh, add, "+", "+", ">>", "+");
run_inner(s, n_args, shape, add, add, rsh, xor, "+", "+", ">>", "^");
run_inner(s, n_args, shape, add, add, rsh, or, "+", "+", ">>", "|");
run_inner(s, n_args, shape, add, add, rsh, sub, "+", "+", ">>", "-");
run_inner(s, n_args, shape, add, add, rsh, bus, "+", "+", ">>", "←");
run_inner(s, n_args, shape, add, add, rsh, mul, "+", "+", ">>", "*");
run_inner(s, n_args, shape, add, add, rsh, rsh, "+", "+", ">>", ">>");
run_inner(s, n_args, shape, add, add, rsh, hsr, "+", "+", ">>", "<<");
run_inner(s, n_args, shape, add, add, hsr, and, "+", "+", "<<", "&");
run_inner(s, n_args, shape, add, add, hsr, add, "+", "+", "<<", "+");
run_inner(s, n_args, shape, add, add, hsr, xor, "+", "+", "<<", "^");
run_inner(s, n_args, shape, add, add, hsr, or, "+", "+", "<<", "|");
run_inner(s, n_args, shape, add, add, hsr, sub, "+", "+", "<<", "-");
run_inner(s, n_args, shape, add, add, hsr, bus, "+", "+", "<<", "←");
run_inner(s, n_args, shape, add, add, hsr, mul, "+", "+", "<<", "*");
run_inner(s, n_args, shape, add, add, hsr, rsh, "+", "+", "<<", ">>");
run_inner(s, n_args, shape, add, add, hsr, hsr, "+", "+", "<<", "<<");
run_inner(s, n_args, shape, add, xor, and, and, "+", "^", "&", "&");
run_inner(s, n_args, shape, add, xor, and, add, "+", "^", "&", "+");
run_inner(s, n_args, shape, add, xor, and, xor, "+", "^", "&", "^");
run_inner(s, n_args, shape, add, xor, and, or, "+", "^", "&", "|");
run_inner(s, n_args, shape, add, xor, and, sub, "+", "^", "&", "-");
run_inner(s, n_args, shape, add, xor, and, bus, "+", "^", "&", "←");
run_inner(s, n_args, shape, add, xor, and, mul, "+", "^", "&", "*");
run_inner(s, n_args, shape, add, xor, and, rsh, "+", "^", "&", ">>");
run_inner(s, n_args, shape, add, xor, and, hsr, "+", "^", "&", "<<");
run_inner(s, n_args, shape, add, xor, add, and, "+", "^", "+", "&");
run_inner(s, n_args, shape, add, xor, add, add, "+", "^", "+", "+");
run_inner(s, n_args, shape, add, xor, add, xor, "+", "^", "+", "^");
run_inner(s, n_args, shape, add, xor, add, or, "+", "^", "+", "|");
run_inner(s, n_args, shape, add, xor, add, sub, "+", "^", "+", "-");
run_inner(s, n_args, shape, add, xor, add, bus, "+", "^", "+", "←");
run_inner(s, n_args, shape, add, xor, add, mul, "+", "^", "+", "*");
run_inner(s, n_args, shape, add, xor, add, rsh, "+", "^", "+", ">>");
run_inner(s, n_args, shape, add, xor, add, hsr, "+", "^", "+", "<<");
run_inner(s, n_args, shape, add, xor, xor, and, "+", "^", "^", "&");
run_inner(s, n_args, shape, add, xor, xor, add, "+", "^", "^", "+");
run_inner(s, n_args, shape, add, xor, xor, xor, "+", "^", "^", "^");
run_inner(s, n_args, shape, add, xor, xor, or, "+", "^", "^", "|");
run_inner(s, n_args, shape, add, xor, xor, sub, "+", "^", "^", "-");
run_inner(s, n_args, shape, add, xor, xor, bus, "+", "^", "^", "←");
run_inner(s, n_args, shape, add, xor, xor, mul, "+", "^", "^", "*");
run_inner(s, n_args, shape, add, xor, xor, rsh, "+", "^", "^", ">>");
run_inner(s, n_args, shape, add, xor, xor, hsr, "+", "^", "^", "<<");
run_inner(s, n_args, shape, add, xor, or, and, "+", "^", "|", "&");
run_inner(s, n_args, shape, add, xor, or, add, "+", "^", "|", "+");
run_inner(s, n_args, shape, add, xor, or, xor, "+", "^", "|", "^");
run_inner(s, n_args, shape, add, xor, or, or, "+", "^", "|", "|");
run_inner(s, n_args, shape, add, xor, or, sub, "+", "^", "|", "-");
run_inner(s, n_args, shape, add, xor, or, bus, "+", "^", "|", "←");
run_inner(s, n_args, shape, add, xor, or, mul, "+", "^", "|", "*");
run_inner(s, n_args, shape, add, xor, or, rsh, "+", "^", "|", ">>");
run_inner(s, n_args, shape, add, xor, or, hsr, "+", "^", "|", "<<");
run_inner(s, n_args, shape, add, xor, sub, and, "+", "^", "-", "&");
run_inner(s, n_args, shape, add, xor, sub, add, "+", "^", "-", "+");
run_inner(s, n_args, shape, add, xor, sub, xor, "+", "^", "-", "^");
run_inner(s, n_args, shape, add, xor, sub, or, "+", "^", "-", "|");
run_inner(s, n_args, shape, add, xor, sub, sub, "+", "^", "-", "-");
run_inner(s, n_args, shape, add, xor, sub, bus, "+", "^", "-", "←");
run_inner(s, n_args, shape, add, xor, sub, mul, "+", "^", "-", "*");
run_inner(s, n_args, shape, add, xor, sub, rsh, "+", "^", "-", ">>");
run_inner(s, n_args, shape, add, xor, sub, hsr, "+", "^", "-", "<<");
run_inner(s, n_args, shape, add, xor, bus, and, "+", "^", "←", "&");
run_inner(s, n_args, shape, add, xor, bus, add, "+", "^", "←", "+");
run_inner(s, n_args, shape, add, xor, bus, xor, "+", "^", "←", "^");
run_inner(s, n_args, shape, add, xor, bus, or, "+", "^", "←", "|");
run_inner(s, n_args, shape, add, xor, bus, sub, "+", "^", "←", "-");
run_inner(s, n_args, shape, add, xor, bus, bus, "+", "^", "←", "←");
run_inner(s, n_args, shape, add, xor, bus, mul, "+", "^", "←", "*");
run_inner(s, n_args, shape, add, xor, bus, rsh, "+", "^", "←", ">>");
run_inner(s, n_args, shape, add, xor, bus, hsr, "+", "^", "←", "<<");
run_inner(s, n_args, shape, add, xor, mul, and, "+", "^", "*", "&");
run_inner(s, n_args, shape, add, xor, mul, add, "+", "^", "*", "+");
run_inner(s, n_args, shape, add, xor, mul, xor, "+", "^", "*", "^");
run_inner(s, n_args, shape, add, xor, mul, or, "+", "^", "*", "|");
run_inner(s, n_args, shape, add, xor, mul, sub, "+", "^", "*", "-");
run_inner(s, n_args, shape, add, xor, mul, bus, "+", "^", "*", "←");
run_inner(s, n_args, shape, add, xor, mul, mul, "+", "^", "*", "*");
run_inner(s, n_args, shape, add, xor, mul, rsh, "+", "^", "*", ">>");
run_inner(s, n_args, shape, add, xor, mul, hsr, "+", "^", "*", "<<");
run_inner(s, n_args, shape, add, xor, rsh, and, "+", "^", ">>", "&");
run_inner(s, n_args, shape, add, xor, rsh, add, "+", "^", ">>", "+");
run_inner(s, n_args, shape, add, xor, rsh, xor, "+", "^", ">>", "^");
run_inner(s, n_args, shape, add, xor, rsh, or, "+", "^", ">>", "|");
run_inner(s, n_args, shape, add, xor, rsh, sub, "+", "^", ">>", "-");
run_inner(s, n_args, shape, add, xor, rsh, bus, "+", "^", ">>", "←");
run_inner(s, n_args, shape, add, xor, rsh, mul, "+", "^", ">>", "*");
run_inner(s, n_args, shape, add, xor, rsh, rsh, "+", "^", ">>", ">>");
run_inner(s, n_args, shape, add, xor, rsh, hsr, "+", "^", ">>", "<<");
run_inner(s, n_args, shape, add, xor, hsr, and, "+", "^", "<<", "&");
run_inner(s, n_args, shape, add, xor, hsr, add, "+", "^", "<<", "+");
run_inner(s, n_args, shape, add, xor, hsr, xor, "+", "^", "<<", "^");
run_inner(s, n_args, shape, add, xor, hsr, or, "+", "^", "<<", "|");
run_inner(s, n_args, shape, add, xor, hsr, sub, "+", "^", "<<", "-");
run_inner(s, n_args, shape, add, xor, hsr, bus, "+", "^", "<<", "←");
run_inner(s, n_args, shape, add, xor, hsr, mul, "+", "^", "<<", "*");
run_inner(s, n_args, shape, add, xor, hsr, rsh, "+", "^", "<<", ">>");
run_inner(s, n_args, shape, add, xor, hsr, hsr, "+", "^", "<<", "<<");
run_inner(s, n_args, shape, add, or, and, and, "+", "|", "&", "&");
run_inner(s, n_args, shape, add, or, and, add, "+", "|", "&", "+");
run_inner(s, n_args, shape, add, or, and, xor, "+", "|", "&", "^");
run_inner(s, n_args, shape, add, or, and, or, "+", "|", "&", "|");
run_inner(s, n_args, shape, add, or, and, sub, "+", "|", "&", "-");
run_inner(s, n_args, shape, add, or, and, bus, "+", "|", "&", "←");
run_inner(s, n_args, shape, add, or, and, mul, "+", "|", "&", "*");
run_inner(s, n_args, shape, add, or, and, rsh, "+", "|", "&", ">>");
run_inner(s, n_args, shape, add, or, and, hsr, "+", "|", "&", "<<");
run_inner(s, n_args, shape, add, or, add, and, "+", "|", "+", "&");
run_inner(s, n_args, shape, add, or, add, add, "+", "|", "+", "+");
run_inner(s, n_args, shape, add, or, add, xor, "+", "|", "+", "^");
run_inner(s, n_args, shape, add, or, add, or, "+", "|", "+", "|");
run_inner(s, n_args, shape, add, or, add, sub, "+", "|", "+", "-");
run_inner(s, n_args, shape, add, or, add, bus, "+", "|", "+", "←");
run_inner(s, n_args, shape, add, or, add, mul, "+", "|", "+", "*");
run_inner(s, n_args, shape, add, or, add, rsh, "+", "|", "+", ">>");
run_inner(s, n_args, shape, add, or, add, hsr, "+", "|", "+", "<<");
run_inner(s, n_args, shape, add, or, xor, and, "+", "|", "^", "&");
run_inner(s, n_args, shape, add, or, xor, add, "+", "|", "^", "+");
run_inner(s, n_args, shape, add, or, xor, xor, "+", "|", "^", "^");
run_inner(s, n_args, shape, add, or, xor, or, "+", "|", "^", "|");
run_inner(s, n_args, shape, add, or, xor, sub, "+", "|", "^", "-");
run_inner(s, n_args, shape, add, or, xor, bus, "+", "|", "^", "←");
run_inner(s, n_args, shape, add, or, xor, mul, "+", "|", "^", "*");
run_inner(s, n_args, shape, add, or, xor, rsh, "+", "|", "^", ">>");
run_inner(s, n_args, shape, add, or, xor, hsr, "+", "|", "^", "<<");
run_inner(s, n_args, shape, add, or, or, and, "+", "|", "|", "&");
run_inner(s, n_args, shape, add, or, or, add, "+", "|", "|", "+");
run_inner(s, n_args, shape, add, or, or, xor, "+", "|", "|", "^");
run_inner(s, n_args, shape, add, or, or, or, "+", "|", "|", "|");
run_inner(s, n_args, shape, add, or, or, sub, "+", "|", "|", "-");
run_inner(s, n_args, shape, add, or, or, bus, "+", "|", "|", "←");
run_inner(s, n_args, shape, add, or, or, mul, "+", "|", "|", "*");
run_inner(s, n_args, shape, add, or, or, rsh, "+", "|", "|", ">>");
run_inner(s, n_args, shape, add, or, or, hsr, "+", "|", "|", "<<");
run_inner(s, n_args, shape, add, or, sub, and, "+", "|", "-", "&");
run_inner(s, n_args, shape, add, or, sub, add, "+", "|", "-", "+");
run_inner(s, n_args, shape, add, or, sub, xor, "+", "|", "-", "^");
run_inner(s, n_args, shape, add, or, sub, or, "+", "|", "-", "|");
run_inner(s, n_args, shape, add, or, sub, sub, "+", "|", "-", "-");
run_inner(s, n_args, shape, add, or, sub, bus, "+", "|", "-", "←");
run_inner(s, n_args, shape, add, or, sub, mul, "+", "|", "-", "*");
run_inner(s, n_args, shape, add, or, sub, rsh, "+", "|", "-", ">>");
run_inner(s, n_args, shape, add, or, sub, hsr, "+", "|", "-", "<<");
run_inner(s, n_args, shape, add, or, bus, and, "+", "|", "←", "&");
run_inner(s, n_args, shape, add, or, bus, add, "+", "|", "←", "+");
run_inner(s, n_args, shape, add, or, bus, xor, "+", "|", "←", "^");
run_inner(s, n_args, shape, add, or, bus, or, "+", "|", "←", "|");
run_inner(s, n_args, shape, add, or, bus, sub, "+", "|", "←", "-");
run_inner(s, n_args, shape, add, or, bus, bus, "+", "|", "←", "←");
run_inner(s, n_args, shape, add, or, bus, mul, "+", "|", "←", "*");
run_inner(s, n_args, shape, add, or, bus, rsh, "+", "|", "←", ">>");
run_inner(s, n_args, shape, add, or, bus, hsr, "+", "|", "←", "<<");
run_inner(s, n_args, shape, add, or, mul, and, "+", "|", "*", "&");
run_inner(s, n_args, shape, add, or, mul, add, "+", "|", "*", "+");
run_inner(s, n_args, shape, add, or, mul, xor, "+", "|", "*", "^");
run_inner(s, n_args, shape, add, or, mul, or, "+", "|", "*", "|");
run_inner(s, n_args, shape, add, or, mul, sub, "+", "|", "*", "-");
run_inner(s, n_args, shape, add, or, mul, bus, "+", "|", "*", "←");
run_inner(s, n_args, shape, add, or, mul, mul, "+", "|", "*", "*");
run_inner(s, n_args, shape, add, or, mul, rsh, "+", "|", "*", ">>");
run_inner(s, n_args, shape, add, or, mul, hsr, "+", "|", "*", "<<");
run_inner(s, n_args, shape, add, or, rsh, and, "+", "|", ">>", "&");
run_inner(s, n_args, shape, add, or, rsh, add, "+", "|", ">>", "+");
run_inner(s, n_args, shape, add, or, rsh, xor, "+", "|", ">>", "^");
run_inner(s, n_args, shape, add, or, rsh, or, "+", "|", ">>", "|");
run_inner(s, n_args, shape, add, or, rsh, sub, "+", "|", ">>", "-");
run_inner(s, n_args, shape, add, or, rsh, bus, "+", "|", ">>", "←");
run_inner(s, n_args, shape, add, or, rsh, mul, "+", "|", ">>", "*");
run_inner(s, n_args, shape, add, or, rsh, rsh, "+", "|", ">>", ">>");
run_inner(s, n_args, shape, add, or, rsh, hsr, "+", "|", ">>", "<<");
run_inner(s, n_args, shape, add, or, hsr, and, "+", "|", "<<", "&");
run_inner(s, n_args, shape, add, or, hsr, add, "+", "|", "<<", "+");
run_inner(s, n_args, shape, add, or, hsr, xor, "+", "|", "<<", "^");
run_inner(s, n_args, shape, add, or, hsr, or, "+", "|", "<<", "|");
run_inner(s, n_args, shape, add, or, hsr, sub, "+", "|", "<<", "-");
run_inner(s, n_args, shape, add, or, hsr, bus, "+", "|", "<<", "←");
run_inner(s, n_args, shape, add, or, hsr, mul, "+", "|", "<<", "*");
run_inner(s, n_args, shape, add, or, hsr, rsh, "+", "|", "<<", ">>");
run_inner(s, n_args, shape, add, or, hsr, hsr, "+", "|", "<<", "<<");
run_inner(s, n_args, shape, add, sub, and, and, "+", "-", "&", "&");
run_inner(s, n_args, shape, add, sub, and, add, "+", "-", "&", "+");
run_inner(s, n_args, shape, add, sub, and, xor, "+", "-", "&", "^");
run_inner(s, n_args, shape, add, sub, and, or, "+", "-", "&", "|");
run_inner(s, n_args, shape, add, sub, and, sub, "+", "-", "&", "-");
run_inner(s, n_args, shape, add, sub, and, bus, "+", "-", "&", "←");
run_inner(s, n_args, shape, add, sub, and, mul, "+", "-", "&", "*");
run_inner(s, n_args, shape, add, sub, and, rsh, "+", "-", "&", ">>");
run_inner(s, n_args, shape, add, sub, and, hsr, "+", "-", "&", "<<");
run_inner(s, n_args, shape, add, sub, add, and, "+", "-", "+", "&");
run_inner(s, n_args, shape, add, sub, add, add, "+", "-", "+", "+");
run_inner(s, n_args, shape, add, sub, add, xor, "+", "-", "+", "^");
run_inner(s, n_args, shape, add, sub, add, or, "+", "-", "+", "|");
run_inner(s, n_args, shape, add, sub, add, sub, "+", "-", "+", "-");
run_inner(s, n_args, shape, add, sub, add, bus, "+", "-", "+", "←");
run_inner(s, n_args, shape, add, sub, add, mul, "+", "-", "+", "*");
run_inner(s, n_args, shape, add, sub, add, rsh, "+", "-", "+", ">>");
run_inner(s, n_args, shape, add, sub, add, hsr, "+", "-", "+", "<<");
run_inner(s, n_args, shape, add, sub, xor, and, "+", "-", "^", "&");
run_inner(s, n_args, shape, add, sub, xor, add, "+", "-", "^", "+");
run_inner(s, n_args, shape, add, sub, xor, xor, "+", "-", "^", "^");
run_inner(s, n_args, shape, add, sub, xor, or, "+", "-", "^", "|");
run_inner(s, n_args, shape, add, sub, xor, sub, "+", "-", "^", "-");
run_inner(s, n_args, shape, add, sub, xor, bus, "+", "-", "^", "←");
run_inner(s, n_args, shape, add, sub, xor, mul, "+", "-", "^", "*");
run_inner(s, n_args, shape, add, sub, xor, rsh, "+", "-", "^", ">>");
run_inner(s, n_args, shape, add, sub, xor, hsr, "+", "-", "^", "<<");
run_inner(s, n_args, shape, add, sub, or, and, "+", "-", "|", "&");
run_inner(s, n_args, shape, add, sub, or, add, "+", "-", "|", "+");
run_inner(s, n_args, shape, add, sub, or, xor, "+", "-", "|", "^");
run_inner(s, n_args, shape, add, sub, or, or, "+", "-", "|", "|");
run_inner(s, n_args, shape, add, sub, or, sub, "+", "-", "|", "-");
run_inner(s, n_args, shape, add, sub, or, bus, "+", "-", "|", "←");
run_inner(s, n_args, shape, add, sub, or, mul, "+", "-", "|", "*");
run_inner(s, n_args, shape, add, sub, or, rsh, "+", "-", "|", ">>");
run_inner(s, n_args, shape, add, sub, or, hsr, "+", "-", "|", "<<");
run_inner(s, n_args, shape, add, sub, sub, and, "+", "-", "-", "&");
run_inner(s, n_args, shape, add, sub, sub, add, "+", "-", "-", "+");
run_inner(s, n_args, shape, add, sub, sub, xor, "+", "-", "-", "^");
run_inner(s, n_args, shape, add, sub, sub, or, "+", "-", "-", "|");
run_inner(s, n_args, shape, add, sub, sub, sub, "+", "-", "-", "-");
run_inner(s, n_args, shape, add, sub, sub, bus, "+", "-", "-", "←");
run_inner(s, n_args, shape, add, sub, sub, mul, "+", "-", "-", "*");
run_inner(s, n_args, shape, add, sub, sub, rsh, "+", "-", "-", ">>");
run_inner(s, n_args, shape, add, sub, sub, hsr, "+", "-", "-", "<<");
run_inner(s, n_args, shape, add, sub, bus, and, "+", "-", "←", "&");
run_inner(s, n_args, shape, add, sub, bus, add, "+", "-", "←", "+");
run_inner(s, n_args, shape, add, sub, bus, xor, "+", "-", "←", "^");
run_inner(s, n_args, shape, add, sub, bus, or, "+", "-", "←", "|");
run_inner(s, n_args, shape, add, sub, bus, sub, "+", "-", "←", "-");
run_inner(s, n_args, shape, add, sub, bus, bus, "+", "-", "←", "←");
run_inner(s, n_args, shape, add, sub, bus, mul, "+", "-", "←", "*");
run_inner(s, n_args, shape, add, sub, bus, rsh, "+", "-", "←", ">>");
run_inner(s, n_args, shape, add, sub, bus, hsr, "+", "-", "←", "<<");
run_inner(s, n_args, shape, add, sub, mul, and, "+", "-", "*", "&");
run_inner(s, n_args, shape, add, sub, mul, add, "+", "-", "*", "+");
run_inner(s, n_args, shape, add, sub, mul, xor, "+", "-", "*", "^");
run_inner(s, n_args, shape, add, sub, mul, or, "+", "-", "*", "|");
run_inner(s, n_args, shape, add, sub, mul, sub, "+", "-", "*", "-");
run_inner(s, n_args, shape, add, sub, mul, bus, "+", "-", "*", "←");
run_inner(s, n_args, shape, add, sub, mul, mul, "+", "-", "*", "*");
run_inner(s, n_args, shape, add, sub, mul, rsh, "+", "-", "*", ">>");
run_inner(s, n_args, shape, add, sub, mul, hsr, "+", "-", "*", "<<");
run_inner(s, n_args, shape, add, sub, rsh, and, "+", "-", ">>", "&");
run_inner(s, n_args, shape, add, sub, rsh, add, "+", "-", ">>", "+");
run_inner(s, n_args, shape, add, sub, rsh, xor, "+", "-", ">>", "^");
run_inner(s, n_args, shape, add, sub, rsh, or, "+", "-", ">>", "|");
run_inner(s, n_args, shape, add, sub, rsh, sub, "+", "-", ">>", "-");
run_inner(s, n_args, shape, add, sub, rsh, bus, "+", "-", ">>", "←");
run_inner(s, n_args, shape, add, sub, rsh, mul, "+", "-", ">>", "*");
run_inner(s, n_args, shape, add, sub, rsh, rsh, "+", "-", ">>", ">>");
run_inner(s, n_args, shape, add, sub, rsh, hsr, "+", "-", ">>", "<<");
run_inner(s, n_args, shape, add, sub, hsr, and, "+", "-", "<<", "&");
run_inner(s, n_args, shape, add, sub, hsr, add, "+", "-", "<<", "+");
run_inner(s, n_args, shape, add, sub, hsr, xor, "+", "-", "<<", "^");
run_inner(s, n_args, shape, add, sub, hsr, or, "+", "-", "<<", "|");
run_inner(s, n_args, shape, add, sub, hsr, sub, "+", "-", "<<", "-");
run_inner(s, n_args, shape, add, sub, hsr, bus, "+", "-", "<<", "←");
run_inner(s, n_args, shape, add, sub, hsr, mul, "+", "-", "<<", "*");
run_inner(s, n_args, shape, add, sub, hsr, rsh, "+", "-", "<<", ">>");
run_inner(s, n_args, shape, add, sub, hsr, hsr, "+", "-", "<<", "<<");
run_inner(s, n_args, shape, add, bus, and, and, "+", "←", "&", "&");
run_inner(s, n_args, shape, add, bus, and, add, "+", "←", "&", "+");
run_inner(s, n_args, shape, add, bus, and, xor, "+", "←", "&", "^");
run_inner(s, n_args, shape, add, bus, and, or, "+", "←", "&", "|");
run_inner(s, n_args, shape, add, bus, and, sub, "+", "←", "&", "-");
run_inner(s, n_args, shape, add, bus, and, bus, "+", "←", "&", "←");
run_inner(s, n_args, shape, add, bus, and, mul, "+", "←", "&", "*");
run_inner(s, n_args, shape, add, bus, and, rsh, "+", "←", "&", ">>");
run_inner(s, n_args, shape, add, bus, and, hsr, "+", "←", "&", "<<");
run_inner(s, n_args, shape, add, bus, add, and, "+", "←", "+", "&");
run_inner(s, n_args, shape, add, bus, add, add, "+", "←", "+", "+");
run_inner(s, n_args, shape, add, bus, add, xor, "+", "←", "+", "^");
run_inner(s, n_args, shape, add, bus, add, or, "+", "←", "+", "|");
run_inner(s, n_args, shape, add, bus, add, sub, "+", "←", "+", "-");
run_inner(s, n_args, shape, add, bus, add, bus, "+", "←", "+", "←");
run_inner(s, n_args, shape, add, bus, add, mul, "+", "←", "+", "*");
run_inner(s, n_args, shape, add, bus, add, rsh, "+", "←", "+", ">>");
run_inner(s, n_args, shape, add, bus, add, hsr, "+", "←", "+", "<<");
run_inner(s, n_args, shape, add, bus, xor, and, "+", "←", "^", "&");
run_inner(s, n_args, shape, add, bus, xor, add, "+", "←", "^", "+");
run_inner(s, n_args, shape, add, bus, xor, xor, "+", "←", "^", "^");
run_inner(s, n_args, shape, add, bus, xor, or, "+", "←", "^", "|");
run_inner(s, n_args, shape, add, bus, xor, sub, "+", "←", "^", "-");
run_inner(s, n_args, shape, add, bus, xor, bus, "+", "←", "^", "←");
run_inner(s, n_args, shape, add, bus, xor, mul, "+", "←", "^", "*");
run_inner(s, n_args, shape, add, bus, xor, rsh, "+", "←", "^", ">>");
run_inner(s, n_args, shape, add, bus, xor, hsr, "+", "←", "^", "<<");
run_inner(s, n_args, shape, add, bus, or, and, "+", "←", "|", "&");
run_inner(s, n_args, shape, add, bus, or, add, "+", "←", "|", "+");
run_inner(s, n_args, shape, add, bus, or, xor, "+", "←", "|", "^");
run_inner(s, n_args, shape, add, bus, or, or, "+", "←", "|", "|");
run_inner(s, n_args, shape, add, bus, or, sub, "+", "←", "|", "-");
run_inner(s, n_args, shape, add, bus, or, bus, "+", "←", "|", "←");
run_inner(s, n_args, shape, add, bus, or, mul, "+", "←", "|", "*");
run_inner(s, n_args, shape, add, bus, or, rsh, "+", "←", "|", ">>");
run_inner(s, n_args, shape, add, bus, or, hsr, "+", "←", "|", "<<");
run_inner(s, n_args, shape, add, bus, sub, and, "+", "←", "-", "&");
run_inner(s, n_args, shape, add, bus, sub, add, "+", "←", "-", "+");
run_inner(s, n_args, shape, add, bus, sub, xor, "+", "←", "-", "^");
run_inner(s, n_args, shape, add, bus, sub, or, "+", "←", "-", "|");
run_inner(s, n_args, shape, add, bus, sub, sub, "+", "←", "-", "-");
run_inner(s, n_args, shape, add, bus, sub, bus, "+", "←", "-", "←");
run_inner(s, n_args, shape, add, bus, sub, mul, "+", "←", "-", "*");
run_inner(s, n_args, shape, add, bus, sub, rsh, "+", "←", "-", ">>");
run_inner(s, n_args, shape, add, bus, sub, hsr, "+", "←", "-", "<<");
run_inner(s, n_args, shape, add, bus, bus, and, "+", "←", "←", "&");
run_inner(s, n_args, shape, add, bus, bus, add, "+", "←", "←", "+");
run_inner(s, n_args, shape, add, bus, bus, xor, "+", "←", "←", "^");
run_inner(s, n_args, shape, add, bus, bus, or, "+", "←", "←", "|");
run_inner(s, n_args, shape, add, bus, bus, sub, "+", "←", "←", "-");
run_inner(s, n_args, shape, add, bus, bus, bus, "+", "←", "←", "←");
run_inner(s, n_args, shape, add, bus, bus, mul, "+", "←", "←", "*");
run_inner(s, n_args, shape, add, bus, bus, rsh, "+", "←", "←", ">>");
run_inner(s, n_args, shape, add, bus, bus, hsr, "+", "←", "←", "<<");
run_inner(s, n_args, shape, add, bus, mul, and, "+", "←", "*", "&");
run_inner(s, n_args, shape, add, bus, mul, add, "+", "←", "*", "+");
run_inner(s, n_args, shape, add, bus, mul, xor, "+", "←", "*", "^");
run_inner(s, n_args, shape, add, bus, mul, or, "+", "←", "*", "|");
run_inner(s, n_args, shape, add, bus, mul, sub, "+", "←", "*", "-");
run_inner(s, n_args, shape, add, bus, mul, bus, "+", "←", "*", "←");
run_inner(s, n_args, shape, add, bus, mul, mul, "+", "←", "*", "*");
run_inner(s, n_args, shape, add, bus, mul, rsh, "+", "←", "*", ">>");
run_inner(s, n_args, shape, add, bus, mul, hsr, "+", "←", "*", "<<");
run_inner(s, n_args, shape, add, bus, rsh, and, "+", "←", ">>", "&");
run_inner(s, n_args, shape, add, bus, rsh, add, "+", "←", ">>", "+");
run_inner(s, n_args, shape, add, bus, rsh, xor, "+", "←", ">>", "^");
run_inner(s, n_args, shape, add, bus, rsh, or, "+", "←", ">>", "|");
run_inner(s, n_args, shape, add, bus, rsh, sub, "+", "←", ">>", "-");
run_inner(s, n_args, shape, add, bus, rsh, bus, "+", "←", ">>", "←");
run_inner(s, n_args, shape, add, bus, rsh, mul, "+", "←", ">>", "*");
run_inner(s, n_args, shape, add, bus, rsh, rsh, "+", "←", ">>", ">>");
run_inner(s, n_args, shape, add, bus, rsh, hsr, "+", "←", ">>", "<<");
run_inner(s, n_args, shape, add, bus, hsr, and, "+", "←", "<<", "&");
run_inner(s, n_args, shape, add, bus, hsr, add, "+", "←", "<<", "+");
run_inner(s, n_args, shape, add, bus, hsr, xor, "+", "←", "<<", "^");
run_inner(s, n_args, shape, add, bus, hsr, or, "+", "←", "<<", "|");
run_inner(s, n_args, shape, add, bus, hsr, sub, "+", "←", "<<", "-");
run_inner(s, n_args, shape, add, bus, hsr, bus, "+", "←", "<<", "←");
run_inner(s, n_args, shape, add, bus, hsr, mul, "+", "←", "<<", "*");
run_inner(s, n_args, shape, add, bus, hsr, rsh, "+", "←", "<<", ">>");
run_inner(s, n_args, shape, add, bus, hsr, hsr, "+", "←", "<<", "<<");
run_inner(s, n_args, shape, add, mul, and, and, "+", "*", "&", "&");
run_inner(s, n_args, shape, add, mul, and, add, "+", "*", "&", "+");
run_inner(s, n_args, shape, add, mul, and, xor, "+", "*", "&", "^");
run_inner(s, n_args, shape, add, mul, and, or, "+", "*", "&", "|");
run_inner(s, n_args, shape, add, mul, and, sub, "+", "*", "&", "-");
run_inner(s, n_args, shape, add, mul, and, bus, "+", "*", "&", "←");
run_inner(s, n_args, shape, add, mul, and, mul, "+", "*", "&", "*");
run_inner(s, n_args, shape, add, mul, and, rsh, "+", "*", "&", ">>");
run_inner(s, n_args, shape, add, mul, and, hsr, "+", "*", "&", "<<");
run_inner(s, n_args, shape, add, mul, add, and, "+", "*", "+", "&");
run_inner(s, n_args, shape, add, mul, add, add, "+", "*", "+", "+");
run_inner(s, n_args, shape, add, mul, add, xor, "+", "*", "+", "^");
run_inner(s, n_args, shape, add, mul, add, or, "+", "*", "+", "|");
run_inner(s, n_args, shape, add, mul, add, sub, "+", "*", "+", "-");
run_inner(s, n_args, shape, add, mul, add, bus, "+", "*", "+", "←");
run_inner(s, n_args, shape, add, mul, add, mul, "+", "*", "+", "*");
run_inner(s, n_args, shape, add, mul, add, rsh, "+", "*", "+", ">>");
run_inner(s, n_args, shape, add, mul, add, hsr, "+", "*", "+", "<<");
run_inner(s, n_args, shape, add, mul, xor, and, "+", "*", "^", "&");
run_inner(s, n_args, shape, add, mul, xor, add, "+", "*", "^", "+");
run_inner(s, n_args, shape, add, mul, xor, xor, "+", "*", "^", "^");
run_inner(s, n_args, shape, add, mul, xor, or, "+", "*", "^", "|");
run_inner(s, n_args, shape, add, mul, xor, sub, "+", "*", "^", "-");
run_inner(s, n_args, shape, add, mul, xor, bus, "+", "*", "^", "←");
run_inner(s, n_args, shape, add, mul, xor, mul, "+", "*", "^", "*");
run_inner(s, n_args, shape, add, mul, xor, rsh, "+", "*", "^", ">>");
run_inner(s, n_args, shape, add, mul, xor, hsr, "+", "*", "^", "<<");
run_inner(s, n_args, shape, add, mul, or, and, "+", "*", "|", "&");
run_inner(s, n_args, shape, add, mul, or, add, "+", "*", "|", "+");
run_inner(s, n_args, shape, add, mul, or, xor, "+", "*", "|", "^");
run_inner(s, n_args, shape, add, mul, or, or, "+", "*", "|", "|");
run_inner(s, n_args, shape, add, mul, or, sub, "+", "*", "|", "-");
run_inner(s, n_args, shape, add, mul, or, bus, "+", "*", "|", "←");
run_inner(s, n_args, shape, add, mul, or, mul, "+", "*", "|", "*");
run_inner(s, n_args, shape, add, mul, or, rsh, "+", "*", "|", ">>");
run_inner(s, n_args, shape, add, mul, or, hsr, "+", "*", "|", "<<");
run_inner(s, n_args, shape, add, mul, sub, and, "+", "*", "-", "&");
run_inner(s, n_args, shape, add, mul, sub, add, "+", "*", "-", "+");
run_inner(s, n_args, shape, add, mul, sub, xor, "+", "*", "-", "^");
run_inner(s, n_args, shape, add, mul, sub, or, "+", "*", "-", "|");
run_inner(s, n_args, shape, add, mul, sub, sub, "+", "*", "-", "-");
run_inner(s, n_args, shape, add, mul, sub, bus, "+", "*", "-", "←");
run_inner(s, n_args, shape, add, mul, sub, mul, "+", "*", "-", "*");
run_inner(s, n_args, shape, add, mul, sub, rsh, "+", "*", "-", ">>");
run_inner(s, n_args, shape, add, mul, sub, hsr, "+", "*", "-", "<<");
run_inner(s, n_args, shape, add, mul, bus, and, "+", "*", "←", "&");
run_inner(s, n_args, shape, add, mul, bus, add, "+", "*", "←", "+");
run_inner(s, n_args, shape, add, mul, bus, xor, "+", "*", "←", "^");
run_inner(s, n_args, shape, add, mul, bus, or, "+", "*", "←", "|");
run_inner(s, n_args, shape, add, mul, bus, sub, "+", "*", "←", "-");
run_inner(s, n_args, shape, add, mul, bus, bus, "+", "*", "←", "←");
run_inner(s, n_args, shape, add, mul, bus, mul, "+", "*", "←", "*");
run_inner(s, n_args, shape, add, mul, bus, rsh, "+", "*", "←", ">>");
run_inner(s, n_args, shape, add, mul, bus, hsr, "+", "*", "←", "<<");
run_inner(s, n_args, shape, add, mul, mul, and, "+", "*", "*", "&");
run_inner(s, n_args, shape, add, mul, mul, add, "+", "*", "*", "+");
run_inner(s, n_args, shape, add, mul, mul, xor, "+", "*", "*", "^");
run_inner(s, n_args, shape, add, mul, mul, or, "+", "*", "*", "|");
run_inner(s, n_args, shape, add, mul, mul, sub, "+", "*", "*", "-");
run_inner(s, n_args, shape, add, mul, mul, bus, "+", "*", "*", "←");
run_inner(s, n_args, shape, add, mul, mul, mul, "+", "*", "*", "*");
run_inner(s, n_args, shape, add, mul, mul, rsh, "+", "*", "*", ">>");
run_inner(s, n_args, shape, add, mul, mul, hsr, "+", "*", "*", "<<");
run_inner(s, n_args, shape, add, mul, rsh, and, "+", "*", ">>", "&");
run_inner(s, n_args, shape, add, mul, rsh, add, "+", "*", ">>", "+");
run_inner(s, n_args, shape, add, mul, rsh, xor, "+", "*", ">>", "^");
run_inner(s, n_args, shape, add, mul, rsh, or, "+", "*", ">>", "|");
run_inner(s, n_args, shape, add, mul, rsh, sub, "+", "*", ">>", "-");
run_inner(s, n_args, shape, add, mul, rsh, bus, "+", "*", ">>", "←");
run_inner(s, n_args, shape, add, mul, rsh, mul, "+", "*", ">>", "*");
run_inner(s, n_args, shape, add, mul, rsh, rsh, "+", "*", ">>", ">>");
run_inner(s, n_args, shape, add, mul, rsh, hsr, "+", "*", ">>", "<<");
run_inner(s, n_args, shape, add, mul, hsr, and, "+", "*", "<<", "&");
run_inner(s, n_args, shape, add, mul, hsr, add, "+", "*", "<<", "+");
run_inner(s, n_args, shape, add, mul, hsr, xor, "+", "*", "<<", "^");
run_inner(s, n_args, shape, add, mul, hsr, or, "+", "*", "<<", "|");
run_inner(s, n_args, shape, add, mul, hsr, sub, "+", "*", "<<", "-");
run_inner(s, n_args, shape, add, mul, hsr, bus, "+", "*", "<<", "←");
run_inner(s, n_args, shape, add, mul, hsr, mul, "+", "*", "<<", "*");
run_inner(s, n_args, shape, add, mul, hsr, rsh, "+", "*", "<<", ">>");
run_inner(s, n_args, shape, add, mul, hsr, hsr, "+", "*", "<<", "<<");
run_inner(s, n_args, shape, add, rsh, and, and, "+", ">>", "&", "&");
run_inner(s, n_args, shape, add, rsh, and, add, "+", ">>", "&", "+");
run_inner(s, n_args, shape, add, rsh, and, xor, "+", ">>", "&", "^");
run_inner(s, n_args, shape, add, rsh, and, or, "+", ">>", "&", "|");
run_inner(s, n_args, shape, add, rsh, and, sub, "+", ">>", "&", "-");
run_inner(s, n_args, shape, add, rsh, and, bus, "+", ">>", "&", "←");
run_inner(s, n_args, shape, add, rsh, and, mul, "+", ">>", "&", "*");
run_inner(s, n_args, shape, add, rsh, and, rsh, "+", ">>", "&", ">>");
run_inner(s, n_args, shape, add, rsh, and, hsr, "+", ">>", "&", "<<");
run_inner(s, n_args, shape, add, rsh, add, and, "+", ">>", "+", "&");
run_inner(s, n_args, shape, add, rsh, add, add, "+", ">>", "+", "+");
run_inner(s, n_args, shape, add, rsh, add, xor, "+", ">>", "+", "^");
run_inner(s, n_args, shape, add, rsh, add, or, "+", ">>", "+", "|");
run_inner(s, n_args, shape, add, rsh, add, sub, "+", ">>", "+", "-");
run_inner(s, n_args, shape, add, rsh, add, bus, "+", ">>", "+", "←");
run_inner(s, n_args, shape, add, rsh, add, mul, "+", ">>", "+", "*");
run_inner(s, n_args, shape, add, rsh, add, rsh, "+", ">>", "+", ">>");
run_inner(s, n_args, shape, add, rsh, add, hsr, "+", ">>", "+", "<<");
run_inner(s, n_args, shape, add, rsh, xor, and, "+", ">>", "^", "&");
run_inner(s, n_args, shape, add, rsh, xor, add, "+", ">>", "^", "+");
run_inner(s, n_args, shape, add, rsh, xor, xor, "+", ">>", "^", "^");
run_inner(s, n_args, shape, add, rsh, xor, or, "+", ">>", "^", "|");
run_inner(s, n_args, shape, add, rsh, xor, sub, "+", ">>", "^", "-");
run_inner(s, n_args, shape, add, rsh, xor, bus, "+", ">>", "^", "←");
run_inner(s, n_args, shape, add, rsh, xor, mul, "+", ">>", "^", "*");
run_inner(s, n_args, shape, add, rsh, xor, rsh, "+", ">>", "^", ">>");
run_inner(s, n_args, shape, add, rsh, xor, hsr, "+", ">>", "^", "<<");
run_inner(s, n_args, shape, add, rsh, or, and, "+", ">>", "|", "&");
run_inner(s, n_args, shape, add, rsh, or, add, "+", ">>", "|", "+");
run_inner(s, n_args, shape, add, rsh, or, xor, "+", ">>", "|", "^");
run_inner(s, n_args, shape, add, rsh, or, or, "+", ">>", "|", "|");
run_inner(s, n_args, shape, add, rsh, or, sub, "+", ">>", "|", "-");
run_inner(s, n_args, shape, add, rsh, or, bus, "+", ">>", "|", "←");
run_inner(s, n_args, shape, add, rsh, or, mul, "+", ">>", "|", "*");
run_inner(s, n_args, shape, add, rsh, or, rsh, "+", ">>", "|", ">>");
run_inner(s, n_args, shape, add, rsh, or, hsr, "+", ">>", "|", "<<");
run_inner(s, n_args, shape, add, rsh, sub, and, "+", ">>", "-", "&");
run_inner(s, n_args, shape, add, rsh, sub, add, "+", ">>", "-", "+");
run_inner(s, n_args, shape, add, rsh, sub, xor, "+", ">>", "-", "^");
run_inner(s, n_args, shape, add, rsh, sub, or, "+", ">>", "-", "|");
run_inner(s, n_args, shape, add, rsh, sub, sub, "+", ">>", "-", "-");
run_inner(s, n_args, shape, add, rsh, sub, bus, "+", ">>", "-", "←");
run_inner(s, n_args, shape, add, rsh, sub, mul, "+", ">>", "-", "*");
run_inner(s, n_args, shape, add, rsh, sub, rsh, "+", ">>", "-", ">>");
run_inner(s, n_args, shape, add, rsh, sub, hsr, "+", ">>", "-", "<<");
run_inner(s, n_args, shape, add, rsh, bus, and, "+", ">>", "←", "&");
run_inner(s, n_args, shape, add, rsh, bus, add, "+", ">>", "←", "+");
run_inner(s, n_args, shape, add, rsh, bus, xor, "+", ">>", "←", "^");
run_inner(s, n_args, shape, add, rsh, bus, or, "+", ">>", "←", "|");
run_inner(s, n_args, shape, add, rsh, bus, sub, "+", ">>", "←", "-");
run_inner(s, n_args, shape, add, rsh, bus, bus, "+", ">>", "←", "←");
run_inner(s, n_args, shape, add, rsh, bus, mul, "+", ">>", "←", "*");
run_inner(s, n_args, shape, add, rsh, bus, rsh, "+", ">>", "←", ">>");
run_inner(s, n_args, shape, add, rsh, bus, hsr, "+", ">>", "←", "<<");
run_inner(s, n_args, shape, add, rsh, mul, and, "+", ">>", "*", "&");
run_inner(s, n_args, shape, add, rsh, mul, add, "+", ">>", "*", "+");
run_inner(s, n_args, shape, add, rsh, mul, xor, "+", ">>", "*", "^");
run_inner(s, n_args, shape, add, rsh, mul, or, "+", ">>", "*", "|");
run_inner(s, n_args, shape, add, rsh, mul, sub, "+", ">>", "*", "-");
run_inner(s, n_args, shape, add, rsh, mul, bus, "+", ">>", "*", "←");
run_inner(s, n_args, shape, add, rsh, mul, mul, "+", ">>", "*", "*");
run_inner(s, n_args, shape, add, rsh, mul, rsh, "+", ">>", "*", ">>");
run_inner(s, n_args, shape, add, rsh, mul, hsr, "+", ">>", "*", "<<");
run_inner(s, n_args, shape, add, rsh, rsh, and, "+", ">>", ">>", "&");
run_inner(s, n_args, shape, add, rsh, rsh, add, "+", ">>", ">>", "+");
run_inner(s, n_args, shape, add, rsh, rsh, xor, "+", ">>", ">>", "^");
run_inner(s, n_args, shape, add, rsh, rsh, or, "+", ">>", ">>", "|");
run_inner(s, n_args, shape, add, rsh, rsh, sub, "+", ">>", ">>", "-");
run_inner(s, n_args, shape, add, rsh, rsh, bus, "+", ">>", ">>", "←");
run_inner(s, n_args, shape, add, rsh, rsh, mul, "+", ">>", ">>", "*");
run_inner(s, n_args, shape, add, rsh, rsh, rsh, "+", ">>", ">>", ">>");
run_inner(s, n_args, shape, add, rsh, rsh, hsr, "+", ">>", ">>", "<<");
run_inner(s, n_args, shape, add, rsh, hsr, and, "+", ">>", "<<", "&");
run_inner(s, n_args, shape, add, rsh, hsr, add, "+", ">>", "<<", "+");
run_inner(s, n_args, shape, add, rsh, hsr, xor, "+", ">>", "<<", "^");
run_inner(s, n_args, shape, add, rsh, hsr, or, "+", ">>", "<<", "|");
run_inner(s, n_args, shape, add, rsh, hsr, sub, "+", ">>", "<<", "-");
run_inner(s, n_args, shape, add, rsh, hsr, bus, "+", ">>", "<<", "←");
run_inner(s, n_args, shape, add, rsh, hsr, mul, "+", ">>", "<<", "*");
run_inner(s, n_args, shape, add, rsh, hsr, rsh, "+", ">>", "<<", ">>");
run_inner(s, n_args, shape, add, rsh, hsr, hsr, "+", ">>", "<<", "<<");
run_inner(s, n_args, shape, add, hsr, and, and, "+", "<<", "&", "&");
run_inner(s, n_args, shape, add, hsr, and, add, "+", "<<", "&", "+");
run_inner(s, n_args, shape, add, hsr, and, xor, "+", "<<", "&", "^");
run_inner(s, n_args, shape, add, hsr, and, or, "+", "<<", "&", "|");
run_inner(s, n_args, shape, add, hsr, and, sub, "+", "<<", "&", "-");
run_inner(s, n_args, shape, add, hsr, and, bus, "+", "<<", "&", "←");
run_inner(s, n_args, shape, add, hsr, and, mul, "+", "<<", "&", "*");
run_inner(s, n_args, shape, add, hsr, and, rsh, "+", "<<", "&", ">>");
run_inner(s, n_args, shape, add, hsr, and, hsr, "+", "<<", "&", "<<");
run_inner(s, n_args, shape, add, hsr, add, and, "+", "<<", "+", "&");
run_inner(s, n_args, shape, add, hsr, add, add, "+", "<<", "+", "+");
run_inner(s, n_args, shape, add, hsr, add, xor, "+", "<<", "+", "^");
run_inner(s, n_args, shape, add, hsr, add, or, "+", "<<", "+", "|");
run_inner(s, n_args, shape, add, hsr, add, sub, "+", "<<", "+", "-");
run_inner(s, n_args, shape, add, hsr, add, bus, "+", "<<", "+", "←");
run_inner(s, n_args, shape, add, hsr, add, mul, "+", "<<", "+", "*");
run_inner(s, n_args, shape, add, hsr, add, rsh, "+", "<<", "+", ">>");
run_inner(s, n_args, shape, add, hsr, add, hsr, "+", "<<", "+", "<<");
run_inner(s, n_args, shape, add, hsr, xor, and, "+", "<<", "^", "&");
run_inner(s, n_args, shape, add, hsr, xor, add, "+", "<<", "^", "+");
run_inner(s, n_args, shape, add, hsr, xor, xor, "+", "<<", "^", "^");
run_inner(s, n_args, shape, add, hsr, xor, or, "+", "<<", "^", "|");
run_inner(s, n_args, shape, add, hsr, xor, sub, "+", "<<", "^", "-");
run_inner(s, n_args, shape, add, hsr, xor, bus, "+", "<<", "^", "←");
run_inner(s, n_args, shape, add, hsr, xor, mul, "+", "<<", "^", "*");
run_inner(s, n_args, shape, add, hsr, xor, rsh, "+", "<<", "^", ">>");
run_inner(s, n_args, shape, add, hsr, xor, hsr, "+", "<<", "^", "<<");
run_inner(s, n_args, shape, add, hsr, or, and, "+", "<<", "|", "&");
run_inner(s, n_args, shape, add, hsr, or, add, "+", "<<", "|", "+");
run_inner(s, n_args, shape, add, hsr, or, xor, "+", "<<", "|", "^");
run_inner(s, n_args, shape, add, hsr, or, or, "+", "<<", "|", "|");
run_inner(s, n_args, shape, add, hsr, or, sub, "+", "<<", "|", "-");
run_inner(s, n_args, shape, add, hsr, or, bus, "+", "<<", "|", "←");
run_inner(s, n_args, shape, add, hsr, or, mul, "+", "<<", "|", "*");
run_inner(s, n_args, shape, add, hsr, or, rsh, "+", "<<", "|", ">>");
run_inner(s, n_args, shape, add, hsr, or, hsr, "+", "<<", "|", "<<");
run_inner(s, n_args, shape, add, hsr, sub, and, "+", "<<", "-", "&");
run_inner(s, n_args, shape, add, hsr, sub, add, "+", "<<", "-", "+");
run_inner(s, n_args, shape, add, hsr, sub, xor, "+", "<<", "-", "^");
run_inner(s, n_args, shape, add, hsr, sub, or, "+", "<<", "-", "|");
run_inner(s, n_args, shape, add, hsr, sub, sub, "+", "<<", "-", "-");
run_inner(s, n_args, shape, add, hsr, sub, bus, "+", "<<", "-", "←");
run_inner(s, n_args, shape, add, hsr, sub, mul, "+", "<<", "-", "*");
run_inner(s, n_args, shape, add, hsr, sub, rsh, "+", "<<", "-", ">>");
run_inner(s, n_args, shape, add, hsr, sub, hsr, "+", "<<", "-", "<<");
run_inner(s, n_args, shape, add, hsr, bus, and, "+", "<<", "←", "&");
run_inner(s, n_args, shape, add, hsr, bus, add, "+", "<<", "←", "+");
run_inner(s, n_args, shape, add, hsr, bus, xor, "+", "<<", "←", "^");
run_inner(s, n_args, shape, add, hsr, bus, or, "+", "<<", "←", "|");
run_inner(s, n_args, shape, add, hsr, bus, sub, "+", "<<", "←", "-");
run_inner(s, n_args, shape, add, hsr, bus, bus, "+", "<<", "←", "←");
run_inner(s, n_args, shape, add, hsr, bus, mul, "+", "<<", "←", "*");
run_inner(s, n_args, shape, add, hsr, bus, rsh, "+", "<<", "←", ">>");
run_inner(s, n_args, shape, add, hsr, bus, hsr, "+", "<<", "←", "<<");
run_inner(s, n_args, shape, add, hsr, mul, and, "+", "<<", "*", "&");
run_inner(s, n_args, shape, add, hsr, mul, add, "+", "<<", "*", "+");
run_inner(s, n_args, shape, add, hsr, mul, xor, "+", "<<", "*", "^");
run_inner(s, n_args, shape, add, hsr, mul, or, "+", "<<", "*", "|");
run_inner(s, n_args, shape, add, hsr, mul, sub, "+", "<<", "*", "-");
run_inner(s, n_args, shape, add, hsr, mul, bus, "+", "<<", "*", "←");
run_inner(s, n_args, shape, add, hsr, mul, mul, "+", "<<", "*", "*");
run_inner(s, n_args, shape, add, hsr, mul, rsh, "+", "<<", "*", ">>");
run_inner(s, n_args, shape, add, hsr, mul, hsr, "+", "<<", "*", "<<");
run_inner(s, n_args, shape, add, hsr, rsh, and, "+", "<<", ">>", "&");
run_inner(s, n_args, shape, add, hsr, rsh, add, "+", "<<", ">>", "+");
run_inner(s, n_args, shape, add, hsr, rsh, xor, "+", "<<", ">>", "^");
run_inner(s, n_args, shape, add, hsr, rsh, or, "+", "<<", ">>", "|");
run_inner(s, n_args, shape, add, hsr, rsh, sub, "+", "<<", ">>", "-");
run_inner(s, n_args, shape, add, hsr, rsh, bus, "+", "<<", ">>", "←");
run_inner(s, n_args, shape, add, hsr, rsh, mul, "+", "<<", ">>", "*");
run_inner(s, n_args, shape, add, hsr, rsh, rsh, "+", "<<", ">>", ">>");
run_inner(s, n_args, shape, add, hsr, rsh, hsr, "+", "<<", ">>", "<<");
run_inner(s, n_args, shape, add, hsr, hsr, and, "+", "<<", "<<", "&");
run_inner(s, n_args, shape, add, hsr, hsr, add, "+", "<<", "<<", "+");
run_inner(s, n_args, shape, add, hsr, hsr, xor, "+", "<<", "<<", "^");
run_inner(s, n_args, shape, add, hsr, hsr, or, "+", "<<", "<<", "|");
run_inner(s, n_args, shape, add, hsr, hsr, sub, "+", "<<", "<<", "-");
run_inner(s, n_args, shape, add, hsr, hsr, bus, "+", "<<", "<<", "←");
run_inner(s, n_args, shape, add, hsr, hsr, mul, "+", "<<", "<<", "*");
run_inner(s, n_args, shape, add, hsr, hsr, rsh, "+", "<<", "<<", ">>");
run_inner(s, n_args, shape, add, hsr, hsr, hsr, "+", "<<", "<<", "<<");
}));
threads.push(thread::spawn(move || {
run_inner(s, n_args, shape, xor, and, and, and, "^", "&", "&", "&");
run_inner(s, n_args, shape, xor, and, and, add, "^", "&", "&", "+");
run_inner(s, n_args, shape, xor, and, and, xor, "^", "&", "&", "^");
run_inner(s, n_args, shape, xor, and, and, or, "^", "&", "&", "|");
run_inner(s, n_args, shape, xor, and, and, sub, "^", "&", "&", "-");
run_inner(s, n_args, shape, xor, and, and, bus, "^", "&", "&", "←");
run_inner(s, n_args, shape, xor, and, and, mul, "^", "&", "&", "*");
run_inner(s, n_args, shape, xor, and, and, rsh, "^", "&", "&", ">>");
run_inner(s, n_args, shape, xor, and, and, hsr, "^", "&", "&", "<<");
run_inner(s, n_args, shape, xor, and, add, and, "^", "&", "+", "&");
run_inner(s, n_args, shape, xor, and, add, add, "^", "&", "+", "+");
run_inner(s, n_args, shape, xor, and, add, xor, "^", "&", "+", "^");
run_inner(s, n_args, shape, xor, and, add, or, "^", "&", "+", "|");
run_inner(s, n_args, shape, xor, and, add, sub, "^", "&", "+", "-");
run_inner(s, n_args, shape, xor, and, add, bus, "^", "&", "+", "←");
run_inner(s, n_args, shape, xor, and, add, mul, "^", "&", "+", "*");
run_inner(s, n_args, shape, xor, and, add, rsh, "^", "&", "+", ">>");
run_inner(s, n_args, shape, xor, and, add, hsr, "^", "&", "+", "<<");
run_inner(s, n_args, shape, xor, and, xor, and, "^", "&", "^", "&");
run_inner(s, n_args, shape, xor, and, xor, add, "^", "&", "^", "+");
run_inner(s, n_args, shape, xor, and, xor, xor, "^", "&", "^", "^");
run_inner(s, n_args, shape, xor, and, xor, or, "^", "&", "^", "|");
run_inner(s, n_args, shape, xor, and, xor, sub, "^", "&", "^", "-");
run_inner(s, n_args, shape, xor, and, xor, bus, "^", "&", "^", "←");
run_inner(s, n_args, shape, xor, and, xor, mul, "^", "&", "^", "*");
run_inner(s, n_args, shape, xor, and, xor, rsh, "^", "&", "^", ">>");
run_inner(s, n_args, shape, xor, and, xor, hsr, "^", "&", "^", "<<");
run_inner(s, n_args, shape, xor, and, or, and, "^", "&", "|", "&");
run_inner(s, n_args, shape, xor, and, or, add, "^", "&", "|", "+");
run_inner(s, n_args, shape, xor, and, or, xor, "^", "&", "|", "^");
run_inner(s, n_args, shape, xor, and, or, or, "^", "&", "|", "|");
run_inner(s, n_args, shape, xor, and, or, sub, "^", "&", "|", "-");
run_inner(s, n_args, shape, xor, and, or, bus, "^", "&", "|", "←");
run_inner(s, n_args, shape, xor, and, or, mul, "^", "&", "|", "*");
run_inner(s, n_args, shape, xor, and, or, rsh, "^", "&", "|", ">>");
run_inner(s, n_args, shape, xor, and, or, hsr, "^", "&", "|", "<<");
run_inner(s, n_args, shape, xor, and, sub, and, "^", "&", "-", "&");
run_inner(s, n_args, shape, xor, and, sub, add, "^", "&", "-", "+");
run_inner(s, n_args, shape, xor, and, sub, xor, "^", "&", "-", "^");
run_inner(s, n_args, shape, xor, and, sub, or, "^", "&", "-", "|");
run_inner(s, n_args, shape, xor, and, sub, sub, "^", "&", "-", "-");
run_inner(s, n_args, shape, xor, and, sub, bus, "^", "&", "-", "←");
run_inner(s, n_args, shape, xor, and, sub, mul, "^", "&", "-", "*");
run_inner(s, n_args, shape, xor, and, sub, rsh, "^", "&", "-", ">>");
run_inner(s, n_args, shape, xor, and, sub, hsr, "^", "&", "-", "<<");
run_inner(s, n_args, shape, xor, and, bus, and, "^", "&", "←", "&");
run_inner(s, n_args, shape, xor, and, bus, add, "^", "&", "←", "+");
run_inner(s, n_args, shape, xor, and, bus, xor, "^", "&", "←", "^");
run_inner(s, n_args, shape, xor, and, bus, or, "^", "&", "←", "|");
run_inner(s, n_args, shape, xor, and, bus, sub, "^", "&", "←", "-");
run_inner(s, n_args, shape, xor, and, bus, bus, "^", "&", "←", "←");
run_inner(s, n_args, shape, xor, and, bus, mul, "^", "&", "←", "*");
run_inner(s, n_args, shape, xor, and, bus, rsh, "^", "&", "←", ">>");
run_inner(s, n_args, shape, xor, and, bus, hsr, "^", "&", "←", "<<");
run_inner(s, n_args, shape, xor, and, mul, and, "^", "&", "*", "&");
run_inner(s, n_args, shape, xor, and, mul, add, "^", "&", "*", "+");
run_inner(s, n_args, shape, xor, and, mul, xor, "^", "&", "*", "^");
run_inner(s, n_args, shape, xor, and, mul, or, "^", "&", "*", "|");
run_inner(s, n_args, shape, xor, and, mul, sub, "^", "&", "*", "-");
run_inner(s, n_args, shape, xor, and, mul, bus, "^", "&", "*", "←");
run_inner(s, n_args, shape, xor, and, mul, mul, "^", "&", "*", "*");
run_inner(s, n_args, shape, xor, and, mul, rsh, "^", "&", "*", ">>");
run_inner(s, n_args, shape, xor, and, mul, hsr, "^", "&", "*", "<<");
run_inner(s, n_args, shape, xor, and, rsh, and, "^", "&", ">>", "&");
run_inner(s, n_args, shape, xor, and, rsh, add, "^", "&", ">>", "+");
run_inner(s, n_args, shape, xor, and, rsh, xor, "^", "&", ">>", "^");
run_inner(s, n_args, shape, xor, and, rsh, or, "^", "&", ">>", "|");
run_inner(s, n_args, shape, xor, and, rsh, sub, "^", "&", ">>", "-");
run_inner(s, n_args, shape, xor, and, rsh, bus, "^", "&", ">>", "←");
run_inner(s, n_args, shape, xor, and, rsh, mul, "^", "&", ">>", "*");
run_inner(s, n_args, shape, xor, and, rsh, rsh, "^", "&", ">>", ">>");
run_inner(s, n_args, shape, xor, and, rsh, hsr, "^", "&", ">>", "<<");
run_inner(s, n_args, shape, xor, and, hsr, and, "^", "&", "<<", "&");
run_inner(s, n_args, shape, xor, and, hsr, add, "^", "&", "<<", "+");
run_inner(s, n_args, shape, xor, and, hsr, xor, "^", "&", "<<", "^");
run_inner(s, n_args, shape, xor, and, hsr, or, "^", "&", "<<", "|");
run_inner(s, n_args, shape, xor, and, hsr, sub, "^", "&", "<<", "-");
run_inner(s, n_args, shape, xor, and, hsr, bus, "^", "&", "<<", "←");
run_inner(s, n_args, shape, xor, and, hsr, mul, "^", "&", "<<", "*");
run_inner(s, n_args, shape, xor, and, hsr, rsh, "^", "&", "<<", ">>");
run_inner(s, n_args, shape, xor, and, hsr, hsr, "^", "&", "<<", "<<");
run_inner(s, n_args, shape, xor, add, and, and, "^", "+", "&", "&");
run_inner(s, n_args, shape, xor, add, and, add, "^", "+", "&", "+");
run_inner(s, n_args, shape, xor, add, and, xor, "^", "+", "&", "^");
run_inner(s, n_args, shape, xor, add, and, or, "^", "+", "&", "|");
run_inner(s, n_args, shape, xor, add, and, sub, "^", "+", "&", "-");
run_inner(s, n_args, shape, xor, add, and, bus, "^", "+", "&", "←");
run_inner(s, n_args, shape, xor, add, and, mul, "^", "+", "&", "*");
run_inner(s, n_args, shape, xor, add, and, rsh, "^", "+", "&", ">>");
run_inner(s, n_args, shape, xor, add, and, hsr, "^", "+", "&", "<<");
run_inner(s, n_args, shape, xor, add, add, and, "^", "+", "+", "&");
run_inner(s, n_args, shape, xor, add, add, add, "^", "+", "+", "+");
run_inner(s, n_args, shape, xor, add, add, xor, "^", "+", "+", "^");
run_inner(s, n_args, shape, xor, add, add, or, "^", "+", "+", "|");
run_inner(s, n_args, shape, xor, add, add, sub, "^", "+", "+", "-");
run_inner(s, n_args, shape, xor, add, add, bus, "^", "+", "+", "←");
run_inner(s, n_args, shape, xor, add, add, mul, "^", "+", "+", "*");
run_inner(s, n_args, shape, xor, add, add, rsh, "^", "+", "+", ">>");
run_inner(s, n_args, shape, xor, add, add, hsr, "^", "+", "+", "<<");
run_inner(s, n_args, shape, xor, add, xor, and, "^", "+", "^", "&");
run_inner(s, n_args, shape, xor, add, xor, add, "^", "+", "^", "+");
run_inner(s, n_args, shape, xor, add, xor, xor, "^", "+", "^", "^");
run_inner(s, n_args, shape, xor, add, xor, or, "^", "+", "^", "|");
run_inner(s, n_args, shape, xor, add, xor, sub, "^", "+", "^", "-");
run_inner(s, n_args, shape, xor, add, xor, bus, "^", "+", "^", "←");
run_inner(s, n_args, shape, xor, add, xor, mul, "^", "+", "^", "*");
run_inner(s, n_args, shape, xor, add, xor, rsh, "^", "+", "^", ">>");
run_inner(s, n_args, shape, xor, add, xor, hsr, "^", "+", "^", "<<");
run_inner(s, n_args, shape, xor, add, or, and, "^", "+", "|", "&");
run_inner(s, n_args, shape, xor, add, or, add, "^", "+", "|", "+");
run_inner(s, n_args, shape, xor, add, or, xor, "^", "+", "|", "^");
run_inner(s, n_args, shape, xor, add, or, or, "^", "+", "|", "|");
run_inner(s, n_args, shape, xor, add, or, sub, "^", "+", "|", "-");
run_inner(s, n_args, shape, xor, add, or, bus, "^", "+", "|", "←");
run_inner(s, n_args, shape, xor, add, or, mul, "^", "+", "|", "*");
run_inner(s, n_args, shape, xor, add, or, rsh, "^", "+", "|", ">>");
run_inner(s, n_args, shape, xor, add, or, hsr, "^", "+", "|", "<<");
run_inner(s, n_args, shape, xor, add, sub, and, "^", "+", "-", "&");
run_inner(s, n_args, shape, xor, add, sub, add, "^", "+", "-", "+");
run_inner(s, n_args, shape, xor, add, sub, xor, "^", "+", "-", "^");
run_inner(s, n_args, shape, xor, add, sub, or, "^", "+", "-", "|");
run_inner(s, n_args, shape, xor, add, sub, sub, "^", "+", "-", "-");
run_inner(s, n_args, shape, xor, add, sub, bus, "^", "+", "-", "←");
run_inner(s, n_args, shape, xor, add, sub, mul, "^", "+", "-", "*");
run_inner(s, n_args, shape, xor, add, sub, rsh, "^", "+", "-", ">>");
run_inner(s, n_args, shape, xor, add, sub, hsr, "^", "+", "-", "<<");
run_inner(s, n_args, shape, xor, add, bus, and, "^", "+", "←", "&");
run_inner(s, n_args, shape, xor, add, bus, add, "^", "+", "←", "+");
run_inner(s, n_args, shape, xor, add, bus, xor, "^", "+", "←", "^");
run_inner(s, n_args, shape, xor, add, bus, or, "^", "+", "←", "|");
run_inner(s, n_args, shape, xor, add, bus, sub, "^", "+", "←", "-");
run_inner(s, n_args, shape, xor, add, bus, bus, "^", "+", "←", "←");
run_inner(s, n_args, shape, xor, add, bus, mul, "^", "+", "←", "*");
run_inner(s, n_args, shape, xor, add, bus, rsh, "^", "+", "←", ">>");
run_inner(s, n_args, shape, xor, add, bus, hsr, "^", "+", "←", "<<");
run_inner(s, n_args, shape, xor, add, mul, and, "^", "+", "*", "&");
run_inner(s, n_args, shape, xor, add, mul, add, "^", "+", "*", "+");
run_inner(s, n_args, shape, xor, add, mul, xor, "^", "+", "*", "^");
run_inner(s, n_args, shape, xor, add, mul, or, "^", "+", "*", "|");
run_inner(s, n_args, shape, xor, add, mul, sub, "^", "+", "*", "-");
run_inner(s, n_args, shape, xor, add, mul, bus, "^", "+", "*", "←");
run_inner(s, n_args, shape, xor, add, mul, mul, "^", "+", "*", "*");
run_inner(s, n_args, shape, xor, add, mul, rsh, "^", "+", "*", ">>");
run_inner(s, n_args, shape, xor, add, mul, hsr, "^", "+", "*", "<<");
run_inner(s, n_args, shape, xor, add, rsh, and, "^", "+", ">>", "&");
run_inner(s, n_args, shape, xor, add, rsh, add, "^", "+", ">>", "+");
run_inner(s, n_args, shape, xor, add, rsh, xor, "^", "+", ">>", "^");
run_inner(s, n_args, shape, xor, add, rsh, or, "^", "+", ">>", "|");
run_inner(s, n_args, shape, xor, add, rsh, sub, "^", "+", ">>", "-");
run_inner(s, n_args, shape, xor, add, rsh, bus, "^", "+", ">>", "←");
run_inner(s, n_args, shape, xor, add, rsh, mul, "^", "+", ">>", "*");
run_inner(s, n_args, shape, xor, add, rsh, rsh, "^", "+", ">>", ">>");
run_inner(s, n_args, shape, xor, add, rsh, hsr, "^", "+", ">>", "<<");
run_inner(s, n_args, shape, xor, add, hsr, and, "^", "+", "<<", "&");
run_inner(s, n_args, shape, xor, add, hsr, add, "^", "+", "<<", "+");
run_inner(s, n_args, shape, xor, add, hsr, xor, "^", "+", "<<", "^");
run_inner(s, n_args, shape, xor, add, hsr, or, "^", "+", "<<", "|");
run_inner(s, n_args, shape, xor, add, hsr, sub, "^", "+", "<<", "-");
run_inner(s, n_args, shape, xor, add, hsr, bus, "^", "+", "<<", "←");
run_inner(s, n_args, shape, xor, add, hsr, mul, "^", "+", "<<", "*");
run_inner(s, n_args, shape, xor, add, hsr, rsh, "^", "+", "<<", ">>");
run_inner(s, n_args, shape, xor, add, hsr, hsr, "^", "+", "<<", "<<");
run_inner(s, n_args, shape, xor, xor, and, and, "^", "^", "&", "&");
run_inner(s, n_args, shape, xor, xor, and, add, "^", "^", "&", "+");
run_inner(s, n_args, shape, xor, xor, and, xor, "^", "^", "&", "^");
run_inner(s, n_args, shape, xor, xor, and, or, "^", "^", "&", "|");
run_inner(s, n_args, shape, xor, xor, and, sub, "^", "^", "&", "-");
run_inner(s, n_args, shape, xor, xor, and, bus, "^", "^", "&", "←");
run_inner(s, n_args, shape, xor, xor, and, mul, "^", "^", "&", "*");
run_inner(s, n_args, shape, xor, xor, and, rsh, "^", "^", "&", ">>");
run_inner(s, n_args, shape, xor, xor, and, hsr, "^", "^", "&", "<<");
run_inner(s, n_args, shape, xor, xor, add, and, "^", "^", "+", "&");
run_inner(s, n_args, shape, xor, xor, add, add, "^", "^", "+", "+");
run_inner(s, n_args, shape, xor, xor, add, xor, "^", "^", "+", "^");
run_inner(s, n_args, shape, xor, xor, add, or, "^", "^", "+", "|");
run_inner(s, n_args, shape, xor, xor, add, sub, "^", "^", "+", "-");
run_inner(s, n_args, shape, xor, xor, add, bus, "^", "^", "+", "←");
run_inner(s, n_args, shape, xor, xor, add, mul, "^", "^", "+", "*");
run_inner(s, n_args, shape, xor, xor, add, rsh, "^", "^", "+", ">>");
run_inner(s, n_args, shape, xor, xor, add, hsr, "^", "^", "+", "<<");
run_inner(s, n_args, shape, xor, xor, xor, and, "^", "^", "^", "&");
run_inner(s, n_args, shape, xor, xor, xor, add, "^", "^", "^", "+");
run_inner(s, n_args, shape, xor, xor, xor, xor, "^", "^", "^", "^");
run_inner(s, n_args, shape, xor, xor, xor, or, "^", "^", "^", "|");
run_inner(s, n_args, shape, xor, xor, xor, sub, "^", "^", "^", "-");
run_inner(s, n_args, shape, xor, xor, xor, bus, "^", "^", "^", "←");
run_inner(s, n_args, shape, xor, xor, xor, mul, "^", "^", "^", "*");
run_inner(s, n_args, shape, xor, xor, xor, rsh, "^", "^", "^", ">>");
run_inner(s, n_args, shape, xor, xor, xor, hsr, "^", "^", "^", "<<");
run_inner(s, n_args, shape, xor, xor, or, and, "^", "^", "|", "&");
run_inner(s, n_args, shape, xor, xor, or, add, "^", "^", "|", "+");
run_inner(s, n_args, shape, xor, xor, or, xor, "^", "^", "|", "^");
run_inner(s, n_args, shape, xor, xor, or, or, "^", "^", "|", "|");
run_inner(s, n_args, shape, xor, xor, or, sub, "^", "^", "|", "-");
run_inner(s, n_args, shape, xor, xor, or, bus, "^", "^", "|", "←");
run_inner(s, n_args, shape, xor, xor, or, mul, "^", "^", "|", "*");
run_inner(s, n_args, shape, xor, xor, or, rsh, "^", "^", "|", ">>");
run_inner(s, n_args, shape, xor, xor, or, hsr, "^", "^", "|", "<<");
run_inner(s, n_args, shape, xor, xor, sub, and, "^", "^", "-", "&");
run_inner(s, n_args, shape, xor, xor, sub, add, "^", "^", "-", "+");
run_inner(s, n_args, shape, xor, xor, sub, xor, "^", "^", "-", "^");
run_inner(s, n_args, shape, xor, xor, sub, or, "^", "^", "-", "|");
run_inner(s, n_args, shape, xor, xor, sub, sub, "^", "^", "-", "-");
run_inner(s, n_args, shape, xor, xor, sub, bus, "^", "^", "-", "←");
run_inner(s, n_args, shape, xor, xor, sub, mul, "^", "^", "-", "*");
run_inner(s, n_args, shape, xor, xor, sub, rsh, "^", "^", "-", ">>");
run_inner(s, n_args, shape, xor, xor, sub, hsr, "^", "^", "-", "<<");
run_inner(s, n_args, shape, xor, xor, bus, and, "^", "^", "←", "&");
run_inner(s, n_args, shape, xor, xor, bus, add, "^", "^", "←", "+");
run_inner(s, n_args, shape, xor, xor, bus, xor, "^", "^", "←", "^");
run_inner(s, n_args, shape, xor, xor, bus, or, "^", "^", "←", "|");
run_inner(s, n_args, shape, xor, xor, bus, sub, "^", "^", "←", "-");
run_inner(s, n_args, shape, xor, xor, bus, bus, "^", "^", "←", "←");
run_inner(s, n_args, shape, xor, xor, bus, mul, "^", "^", "←", "*");
run_inner(s, n_args, shape, xor, xor, bus, rsh, "^", "^", "←", ">>");
run_inner(s, n_args, shape, xor, xor, bus, hsr, "^", "^", "←", "<<");
run_inner(s, n_args, shape, xor, xor, mul, and, "^", "^", "*", "&");
run_inner(s, n_args, shape, xor, xor, mul, add, "^", "^", "*", "+");
run_inner(s, n_args, shape, xor, xor, mul, xor, "^", "^", "*", "^");
run_inner(s, n_args, shape, xor, xor, mul, or, "^", "^", "*", "|");
run_inner(s, n_args, shape, xor, xor, mul, sub, "^", "^", "*", "-");
run_inner(s, n_args, shape, xor, xor, mul, bus, "^", "^", "*", "←");
run_inner(s, n_args, shape, xor, xor, mul, mul, "^", "^", "*", "*");
run_inner(s, n_args, shape, xor, xor, mul, rsh, "^", "^", "*", ">>");
run_inner(s, n_args, shape, xor, xor, mul, hsr, "^", "^", "*", "<<");
run_inner(s, n_args, shape, xor, xor, rsh, and, "^", "^", ">>", "&");
run_inner(s, n_args, shape, xor, xor, rsh, add, "^", "^", ">>", "+");
run_inner(s, n_args, shape, xor, xor, rsh, xor, "^", "^", ">>", "^");
run_inner(s, n_args, shape, xor, xor, rsh, or, "^", "^", ">>", "|");
run_inner(s, n_args, shape, xor, xor, rsh, sub, "^", "^", ">>", "-");
run_inner(s, n_args, shape, xor, xor, rsh, bus, "^", "^", ">>", "←");
run_inner(s, n_args, shape, xor, xor, rsh, mul, "^", "^", ">>", "*");
run_inner(s, n_args, shape, xor, xor, rsh, rsh, "^", "^", ">>", ">>");
run_inner(s, n_args, shape, xor, xor, rsh, hsr, "^", "^", ">>", "<<");
run_inner(s, n_args, shape, xor, xor, hsr, and, "^", "^", "<<", "&");
run_inner(s, n_args, shape, xor, xor, hsr, add, "^", "^", "<<", "+");
run_inner(s, n_args, shape, xor, xor, hsr, xor, "^", "^", "<<", "^");
run_inner(s, n_args, shape, xor, xor, hsr, or, "^", "^", "<<", "|");
run_inner(s, n_args, shape, xor, xor, hsr, sub, "^", "^", "<<", "-");
run_inner(s, n_args, shape, xor, xor, hsr, bus, "^", "^", "<<", "←");
run_inner(s, n_args, shape, xor, xor, hsr, mul, "^", "^", "<<", "*");
run_inner(s, n_args, shape, xor, xor, hsr, rsh, "^", "^", "<<", ">>");
run_inner(s, n_args, shape, xor, xor, hsr, hsr, "^", "^", "<<", "<<");
run_inner(s, n_args, shape, xor, or, and, and, "^", "|", "&", "&");
run_inner(s, n_args, shape, xor, or, and, add, "^", "|", "&", "+");
run_inner(s, n_args, shape, xor, or, and, xor, "^", "|", "&", "^");
run_inner(s, n_args, shape, xor, or, and, or, "^", "|", "&", "|");
run_inner(s, n_args, shape, xor, or, and, sub, "^", "|", "&", "-");
run_inner(s, n_args, shape, xor, or, and, bus, "^", "|", "&", "←");
run_inner(s, n_args, shape, xor, or, and, mul, "^", "|", "&", "*");
run_inner(s, n_args, shape, xor, or, and, rsh, "^", "|", "&", ">>");
run_inner(s, n_args, shape, xor, or, and, hsr, "^", "|", "&", "<<");
run_inner(s, n_args, shape, xor, or, add, and, "^", "|", "+", "&");
run_inner(s, n_args, shape, xor, or, add, add, "^", "|", "+", "+");
run_inner(s, n_args, shape, xor, or, add, xor, "^", "|", "+", "^");
run_inner(s, n_args, shape, xor, or, add, or, "^", "|", "+", "|");
run_inner(s, n_args, shape, xor, or, add, sub, "^", "|", "+", "-");
run_inner(s, n_args, shape, xor, or, add, bus, "^", "|", "+", "←");
run_inner(s, n_args, shape, xor, or, add, mul, "^", "|", "+", "*");
run_inner(s, n_args, shape, xor, or, add, rsh, "^", "|", "+", ">>");
run_inner(s, n_args, shape, xor, or, add, hsr, "^", "|", "+", "<<");
run_inner(s, n_args, shape, xor, or, xor, and, "^", "|", "^", "&");
run_inner(s, n_args, shape, xor, or, xor, add, "^", "|", "^", "+");
run_inner(s, n_args, shape, xor, or, xor, xor, "^", "|", "^", "^");
run_inner(s, n_args, shape, xor, or, xor, or, "^", "|", "^", "|");
run_inner(s, n_args, shape, xor, or, xor, sub, "^", "|", "^", "-");
run_inner(s, n_args, shape, xor, or, xor, bus, "^", "|", "^", "←");
run_inner(s, n_args, shape, xor, or, xor, mul, "^", "|", "^", "*");
run_inner(s, n_args, shape, xor, or, xor, rsh, "^", "|", "^", ">>");
run_inner(s, n_args, shape, xor, or, xor, hsr, "^", "|", "^", "<<");
run_inner(s, n_args, shape, xor, or, or, and, "^", "|", "|", "&");
run_inner(s, n_args, shape, xor, or, or, add, "^", "|", "|", "+");
run_inner(s, n_args, shape, xor, or, or, xor, "^", "|", "|", "^");
run_inner(s, n_args, shape, xor, or, or, or, "^", "|", "|", "|");
run_inner(s, n_args, shape, xor, or, or, sub, "^", "|", "|", "-");
run_inner(s, n_args, shape, xor, or, or, bus, "^", "|", "|", "←");
run_inner(s, n_args, shape, xor, or, or, mul, "^", "|", "|", "*");
run_inner(s, n_args, shape, xor, or, or, rsh, "^", "|", "|", ">>");
run_inner(s, n_args, shape, xor, or, or, hsr, "^", "|", "|", "<<");
run_inner(s, n_args, shape, xor, or, sub, and, "^", "|", "-", "&");
run_inner(s, n_args, shape, xor, or, sub, add, "^", "|", "-", "+");
run_inner(s, n_args, shape, xor, or, sub, xor, "^", "|", "-", "^");
run_inner(s, n_args, shape, xor, or, sub, or, "^", "|", "-", "|");
run_inner(s, n_args, shape, xor, or, sub, sub, "^", "|", "-", "-");
run_inner(s, n_args, shape, xor, or, sub, bus, "^", "|", "-", "←");
run_inner(s, n_args, shape, xor, or, sub, mul, "^", "|", "-", "*");
run_inner(s, n_args, shape, xor, or, sub, rsh, "^", "|", "-", ">>");
run_inner(s, n_args, shape, xor, or, sub, hsr, "^", "|", "-", "<<");
run_inner(s, n_args, shape, xor, or, bus, and, "^", "|", "←", "&");
run_inner(s, n_args, shape, xor, or, bus, add, "^", "|", "←", "+");
run_inner(s, n_args, shape, xor, or, bus, xor, "^", "|", "←", "^");
run_inner(s, n_args, shape, xor, or, bus, or, "^", "|", "←", "|");
run_inner(s, n_args, shape, xor, or, bus, sub, "^", "|", "←", "-");
run_inner(s, n_args, shape, xor, or, bus, bus, "^", "|", "←", "←");
run_inner(s, n_args, shape, xor, or, bus, mul, "^", "|", "←", "*");
run_inner(s, n_args, shape, xor, or, bus, rsh, "^", "|", "←", ">>");
run_inner(s, n_args, shape, xor, or, bus, hsr, "^", "|", "←", "<<");
run_inner(s, n_args, shape, xor, or, mul, and, "^", "|", "*", "&");
run_inner(s, n_args, shape, xor, or, mul, add, "^", "|", "*", "+");
run_inner(s, n_args, shape, xor, or, mul, xor, "^", "|", "*", "^");
run_inner(s, n_args, shape, xor, or, mul, or, "^", "|", "*", "|");
run_inner(s, n_args, shape, xor, or, mul, sub, "^", "|", "*", "-");
run_inner(s, n_args, shape, xor, or, mul, bus, "^", "|", "*", "←");
run_inner(s, n_args, shape, xor, or, mul, mul, "^", "|", "*", "*");
run_inner(s, n_args, shape, xor, or, mul, rsh, "^", "|", "*", ">>");
run_inner(s, n_args, shape, xor, or, mul, hsr, "^", "|", "*", "<<");
run_inner(s, n_args, shape, xor, or, rsh, and, "^", "|", ">>", "&");
run_inner(s, n_args, shape, xor, or, rsh, add, "^", "|", ">>", "+");
run_inner(s, n_args, shape, xor, or, rsh, xor, "^", "|", ">>", "^");
run_inner(s, n_args, shape, xor, or, rsh, or, "^", "|", ">>", "|");
run_inner(s, n_args, shape, xor, or, rsh, sub, "^", "|", ">>", "-");
run_inner(s, n_args, shape, xor, or, rsh, bus, "^", "|", ">>", "←");
run_inner(s, n_args, shape, xor, or, rsh, mul, "^", "|", ">>", "*");
run_inner(s, n_args, shape, xor, or, rsh, rsh, "^", "|", ">>", ">>");
run_inner(s, n_args, shape, xor, or, rsh, hsr, "^", "|", ">>", "<<");
run_inner(s, n_args, shape, xor, or, hsr, and, "^", "|", "<<", "&");
run_inner(s, n_args, shape, xor, or, hsr, add, "^", "|", "<<", "+");
run_inner(s, n_args, shape, xor, or, hsr, xor, "^", "|", "<<", "^");
run_inner(s, n_args, shape, xor, or, hsr, or, "^", "|", "<<", "|");
run_inner(s, n_args, shape, xor, or, hsr, sub, "^", "|", "<<", "-");
run_inner(s, n_args, shape, xor, or, hsr, bus, "^", "|", "<<", "←");
run_inner(s, n_args, shape, xor, or, hsr, mul, "^", "|", "<<", "*");
run_inner(s, n_args, shape, xor, or, hsr, rsh, "^", "|", "<<", ">>");
run_inner(s, n_args, shape, xor, or, hsr, hsr, "^", "|", "<<", "<<");
run_inner(s, n_args, shape, xor, sub, and, and, "^", "-", "&", "&");
run_inner(s, n_args, shape, xor, sub, and, add, "^", "-", "&", "+");
run_inner(s, n_args, shape, xor, sub, and, xor, "^", "-", "&", "^");
run_inner(s, n_args, shape, xor, sub, and, or, "^", "-", "&", "|");
run_inner(s, n_args, shape, xor, sub, and, sub, "^", "-", "&", "-");
run_inner(s, n_args, shape, xor, sub, and, bus, "^", "-", "&", "←");
run_inner(s, n_args, shape, xor, sub, and, mul, "^", "-", "&", "*");
run_inner(s, n_args, shape, xor, sub, and, rsh, "^", "-", "&", ">>");
run_inner(s, n_args, shape, xor, sub, and, hsr, "^", "-", "&", "<<");
run_inner(s, n_args, shape, xor, sub, add, and, "^", "-", "+", "&");
run_inner(s, n_args, shape, xor, sub, add, add, "^", "-", "+", "+");
run_inner(s, n_args, shape, xor, sub, add, xor, "^", "-", "+", "^");
run_inner(s, n_args, shape, xor, sub, add, or, "^", "-", "+", "|");
run_inner(s, n_args, shape, xor, sub, add, sub, "^", "-", "+", "-");
run_inner(s, n_args, shape, xor, sub, add, bus, "^", "-", "+", "←");
run_inner(s, n_args, shape, xor, sub, add, mul, "^", "-", "+", "*");
run_inner(s, n_args, shape, xor, sub, add, rsh, "^", "-", "+", ">>");
run_inner(s, n_args, shape, xor, sub, add, hsr, "^", "-", "+", "<<");
run_inner(s, n_args, shape, xor, sub, xor, and, "^", "-", "^", "&");
run_inner(s, n_args, shape, xor, sub, xor, add, "^", "-", "^", "+");
run_inner(s, n_args, shape, xor, sub, xor, xor, "^", "-", "^", "^");
run_inner(s, n_args, shape, xor, sub, xor, or, "^", "-", "^", "|");
run_inner(s, n_args, shape, xor, sub, xor, sub, "^", "-", "^", "-");
run_inner(s, n_args, shape, xor, sub, xor, bus, "^", "-", "^", "←");
run_inner(s, n_args, shape, xor, sub, xor, mul, "^", "-", "^", "*");
run_inner(s, n_args, shape, xor, sub, xor, rsh, "^", "-", "^", ">>");
run_inner(s, n_args, shape, xor, sub, xor, hsr, "^", "-", "^", "<<");
run_inner(s, n_args, shape, xor, sub, or, and, "^", "-", "|", "&");
run_inner(s, n_args, shape, xor, sub, or, add, "^", "-", "|", "+");
run_inner(s, n_args, shape, xor, sub, or, xor, "^", "-", "|", "^");
run_inner(s, n_args, shape, xor, sub, or, or, "^", "-", "|", "|");
run_inner(s, n_args, shape, xor, sub, or, sub, "^", "-", "|", "-");
run_inner(s, n_args, shape, xor, sub, or, bus, "^", "-", "|", "←");
run_inner(s, n_args, shape, xor, sub, or, mul, "^", "-", "|", "*");
run_inner(s, n_args, shape, xor, sub, or, rsh, "^", "-", "|", ">>");
run_inner(s, n_args, shape, xor, sub, or, hsr, "^", "-", "|", "<<");
run_inner(s, n_args, shape, xor, sub, sub, and, "^", "-", "-", "&");
run_inner(s, n_args, shape, xor, sub, sub, add, "^", "-", "-", "+");
run_inner(s, n_args, shape, xor, sub, sub, xor, "^", "-", "-", "^");
run_inner(s, n_args, shape, xor, sub, sub, or, "^", "-", "-", "|");
run_inner(s, n_args, shape, xor, sub, sub, sub, "^", "-", "-", "-");
run_inner(s, n_args, shape, xor, sub, sub, bus, "^", "-", "-", "←");
run_inner(s, n_args, shape, xor, sub, sub, mul, "^", "-", "-", "*");
run_inner(s, n_args, shape, xor, sub, sub, rsh, "^", "-", "-", ">>");
run_inner(s, n_args, shape, xor, sub, sub, hsr, "^", "-", "-", "<<");
run_inner(s, n_args, shape, xor, sub, bus, and, "^", "-", "←", "&");
run_inner(s, n_args, shape, xor, sub, bus, add, "^", "-", "←", "+");
run_inner(s, n_args, shape, xor, sub, bus, xor, "^", "-", "←", "^");
run_inner(s, n_args, shape, xor, sub, bus, or, "^", "-", "←", "|");
run_inner(s, n_args, shape, xor, sub, bus, sub, "^", "-", "←", "-");
run_inner(s, n_args, shape, xor, sub, bus, bus, "^", "-", "←", "←");
run_inner(s, n_args, shape, xor, sub, bus, mul, "^", "-", "←", "*");
run_inner(s, n_args, shape, xor, sub, bus, rsh, "^", "-", "←", ">>");
run_inner(s, n_args, shape, xor, sub, bus, hsr, "^", "-", "←", "<<");
run_inner(s, n_args, shape, xor, sub, mul, and, "^", "-", "*", "&");
run_inner(s, n_args, shape, xor, sub, mul, add, "^", "-", "*", "+");
run_inner(s, n_args, shape, xor, sub, mul, xor, "^", "-", "*", "^");
run_inner(s, n_args, shape, xor, sub, mul, or, "^", "-", "*", "|");
run_inner(s, n_args, shape, xor, sub, mul, sub, "^", "-", "*", "-");
run_inner(s, n_args, shape, xor, sub, mul, bus, "^", "-", "*", "←");
run_inner(s, n_args, shape, xor, sub, mul, mul, "^", "-", "*", "*");
run_inner(s, n_args, shape, xor, sub, mul, rsh, "^", "-", "*", ">>");
run_inner(s, n_args, shape, xor, sub, mul, hsr, "^", "-", "*", "<<");
run_inner(s, n_args, shape, xor, sub, rsh, and, "^", "-", ">>", "&");
run_inner(s, n_args, shape, xor, sub, rsh, add, "^", "-", ">>", "+");
run_inner(s, n_args, shape, xor, sub, rsh, xor, "^", "-", ">>", "^");
run_inner(s, n_args, shape, xor, sub, rsh, or, "^", "-", ">>", "|");
run_inner(s, n_args, shape, xor, sub, rsh, sub, "^", "-", ">>", "-");
run_inner(s, n_args, shape, xor, sub, rsh, bus, "^", "-", ">>", "←");
run_inner(s, n_args, shape, xor, sub, rsh, mul, "^", "-", ">>", "*");
run_inner(s, n_args, shape, xor, sub, rsh, rsh, "^", "-", ">>", ">>");
run_inner(s, n_args, shape, xor, sub, rsh, hsr, "^", "-", ">>", "<<");
run_inner(s, n_args, shape, xor, sub, hsr, and, "^", "-", "<<", "&");
run_inner(s, n_args, shape, xor, sub, hsr, add, "^", "-", "<<", "+");
run_inner(s, n_args, shape, xor, sub, hsr, xor, "^", "-", "<<", "^");
run_inner(s, n_args, shape, xor, sub, hsr, or, "^", "-", "<<", "|");
run_inner(s, n_args, shape, xor, sub, hsr, sub, "^", "-", "<<", "-");
run_inner(s, n_args, shape, xor, sub, hsr, bus, "^", "-", "<<", "←");
run_inner(s, n_args, shape, xor, sub, hsr, mul, "^", "-", "<<", "*");
run_inner(s, n_args, shape, xor, sub, hsr, rsh, "^", "-", "<<", ">>");
run_inner(s, n_args, shape, xor, sub, hsr, hsr, "^", "-", "<<", "<<");
run_inner(s, n_args, shape, xor, bus, and, and, "^", "←", "&", "&");
run_inner(s, n_args, shape, xor, bus, and, add, "^", "←", "&", "+");
run_inner(s, n_args, shape, xor, bus, and, xor, "^", "←", "&", "^");
run_inner(s, n_args, shape, xor, bus, and, or, "^", "←", "&", "|");
run_inner(s, n_args, shape, xor, bus, and, sub, "^", "←", "&", "-");
run_inner(s, n_args, shape, xor, bus, and, bus, "^", "←", "&", "←");
run_inner(s, n_args, shape, xor, bus, and, mul, "^", "←", "&", "*");
run_inner(s, n_args, shape, xor, bus, and, rsh, "^", "←", "&", ">>");
run_inner(s, n_args, shape, xor, bus, and, hsr, "^", "←", "&", "<<");
run_inner(s, n_args, shape, xor, bus, add, and, "^", "←", "+", "&");
run_inner(s, n_args, shape, xor, bus, add, add, "^", "←", "+", "+");
run_inner(s, n_args, shape, xor, bus, add, xor, "^", "←", "+", "^");
run_inner(s, n_args, shape, xor, bus, add, or, "^", "←", "+", "|");
run_inner(s, n_args, shape, xor, bus, add, sub, "^", "←", "+", "-");
run_inner(s, n_args, shape, xor, bus, add, bus, "^", "←", "+", "←");
run_inner(s, n_args, shape, xor, bus, add, mul, "^", "←", "+", "*");
run_inner(s, n_args, shape, xor, bus, add, rsh, "^", "←", "+", ">>");
run_inner(s, n_args, shape, xor, bus, add, hsr, "^", "←", "+", "<<");
run_inner(s, n_args, shape, xor, bus, xor, and, "^", "←", "^", "&");
run_inner(s, n_args, shape, xor, bus, xor, add, "^", "←", "^", "+");
run_inner(s, n_args, shape, xor, bus, xor, xor, "^", "←", "^", "^");
run_inner(s, n_args, shape, xor, bus, xor, or, "^", "←", "^", "|");
run_inner(s, n_args, shape, xor, bus, xor, sub, "^", "←", "^", "-");
run_inner(s, n_args, shape, xor, bus, xor, bus, "^", "←", "^", "←");
run_inner(s, n_args, shape, xor, bus, xor, mul, "^", "←", "^", "*");
run_inner(s, n_args, shape, xor, bus, xor, rsh, "^", "←", "^", ">>");
run_inner(s, n_args, shape, xor, bus, xor, hsr, "^", "←", "^", "<<");
run_inner(s, n_args, shape, xor, bus, or, and, "^", "←", "|", "&");
run_inner(s, n_args, shape, xor, bus, or, add, "^", "←", "|", "+");
run_inner(s, n_args, shape, xor, bus, or, xor, "^", "←", "|", "^");
run_inner(s, n_args, shape, xor, bus, or, or, "^", "←", "|", "|");
run_inner(s, n_args, shape, xor, bus, or, sub, "^", "←", "|", "-");
run_inner(s, n_args, shape, xor, bus, or, bus, "^", "←", "|", "←");
run_inner(s, n_args, shape, xor, bus, or, mul, "^", "←", "|", "*");
run_inner(s, n_args, shape, xor, bus, or, rsh, "^", "←", "|", ">>");
run_inner(s, n_args, shape, xor, bus, or, hsr, "^", "←", "|", "<<");
run_inner(s, n_args, shape, xor, bus, sub, and, "^", "←", "-", "&");
run_inner(s, n_args, shape, xor, bus, sub, add, "^", "←", "-", "+");
run_inner(s, n_args, shape, xor, bus, sub, xor, "^", "←", "-", "^");
run_inner(s, n_args, shape, xor, bus, sub, or, "^", "←", "-", "|");
run_inner(s, n_args, shape, xor, bus, sub, sub, "^", "←", "-", "-");
run_inner(s, n_args, shape, xor, bus, sub, bus, "^", "←", "-", "←");
run_inner(s, n_args, shape, xor, bus, sub, mul, "^", "←", "-", "*");
run_inner(s, n_args, shape, xor, bus, sub, rsh, "^", "←", "-", ">>");
run_inner(s, n_args, shape, xor, bus, sub, hsr, "^", "←", "-", "<<");
run_inner(s, n_args, shape, xor, bus, bus, and, "^", "←", "←", "&");
run_inner(s, n_args, shape, xor, bus, bus, add, "^", "←", "←", "+");
run_inner(s, n_args, shape, xor, bus, bus, xor, "^", "←", "←", "^");
run_inner(s, n_args, shape, xor, bus, bus, or, "^", "←", "←", "|");
run_inner(s, n_args, shape, xor, bus, bus, sub, "^", "←", "←", "-");
run_inner(s, n_args, shape, xor, bus, bus, bus, "^", "←", "←", "←");
run_inner(s, n_args, shape, xor, bus, bus, mul, "^", "←", "←", "*");
run_inner(s, n_args, shape, xor, bus, bus, rsh, "^", "←", "←", ">>");
run_inner(s, n_args, shape, xor, bus, bus, hsr, "^", "←", "←", "<<");
run_inner(s, n_args, shape, xor, bus, mul, and, "^", "←", "*", "&");
run_inner(s, n_args, shape, xor, bus, mul, add, "^", "←", "*", "+");
run_inner(s, n_args, shape, xor, bus, mul, xor, "^", "←", "*", "^");
run_inner(s, n_args, shape, xor, bus, mul, or, "^", "←", "*", "|");
run_inner(s, n_args, shape, xor, bus, mul, sub, "^", "←", "*", "-");
run_inner(s, n_args, shape, xor, bus, mul, bus, "^", "←", "*", "←");
run_inner(s, n_args, shape, xor, bus, mul, mul, "^", "←", "*", "*");
run_inner(s, n_args, shape, xor, bus, mul, rsh, "^", "←", "*", ">>");
run_inner(s, n_args, shape, xor, bus, mul, hsr, "^", "←", "*", "<<");
run_inner(s, n_args, shape, xor, bus, rsh, and, "^", "←", ">>", "&");
run_inner(s, n_args, shape, xor, bus, rsh, add, "^", "←", ">>", "+");
run_inner(s, n_args, shape, xor, bus, rsh, xor, "^", "←", ">>", "^");
run_inner(s, n_args, shape, xor, bus, rsh, or, "^", "←", ">>", "|");
run_inner(s, n_args, shape, xor, bus, rsh, sub, "^", "←", ">>", "-");
run_inner(s, n_args, shape, xor, bus, rsh, bus, "^", "←", ">>", "←");
run_inner(s, n_args, shape, xor, bus, rsh, mul, "^", "←", ">>", "*");
run_inner(s, n_args, shape, xor, bus, rsh, rsh, "^", "←", ">>", ">>");
run_inner(s, n_args, shape, xor, bus, rsh, hsr, "^", "←", ">>", "<<");
run_inner(s, n_args, shape, xor, bus, hsr, and, "^", "←", "<<", "&");
run_inner(s, n_args, shape, xor, bus, hsr, add, "^", "←", "<<", "+");
run_inner(s, n_args, shape, xor, bus, hsr, xor, "^", "←", "<<", "^");
run_inner(s, n_args, shape, xor, bus, hsr, or, "^", "←", "<<", "|");
run_inner(s, n_args, shape, xor, bus, hsr, sub, "^", "←", "<<", "-");
run_inner(s, n_args, shape, xor, bus, hsr, bus, "^", "←", "<<", "←");
run_inner(s, n_args, shape, xor, bus, hsr, mul, "^", "←", "<<", "*");
run_inner(s, n_args, shape, xor, bus, hsr, rsh, "^", "←", "<<", ">>");
run_inner(s, n_args, shape, xor, bus, hsr, hsr, "^", "←", "<<", "<<");
run_inner(s, n_args, shape, xor, mul, and, and, "^", "*", "&", "&");
run_inner(s, n_args, shape, xor, mul, and, add, "^", "*", "&", "+");
run_inner(s, n_args, shape, xor, mul, and, xor, "^", "*", "&", "^");
run_inner(s, n_args, shape, xor, mul, and, or, "^", "*", "&", "|");
run_inner(s, n_args, shape, xor, mul, and, sub, "^", "*", "&", "-");
run_inner(s, n_args, shape, xor, mul, and, bus, "^", "*", "&", "←");
run_inner(s, n_args, shape, xor, mul, and, mul, "^", "*", "&", "*");
run_inner(s, n_args, shape, xor, mul, and, rsh, "^", "*", "&", ">>");
run_inner(s, n_args, shape, xor, mul, and, hsr, "^", "*", "&", "<<");
run_inner(s, n_args, shape, xor, mul, add, and, "^", "*", "+", "&");
run_inner(s, n_args, shape, xor, mul, add, add, "^", "*", "+", "+");
run_inner(s, n_args, shape, xor, mul, add, xor, "^", "*", "+", "^");
run_inner(s, n_args, shape, xor, mul, add, or, "^", "*", "+", "|");
run_inner(s, n_args, shape, xor, mul, add, sub, "^", "*", "+", "-");
run_inner(s, n_args, shape, xor, mul, add, bus, "^", "*", "+", "←");
run_inner(s, n_args, shape, xor, mul, add, mul, "^", "*", "+", "*");
run_inner(s, n_args, shape, xor, mul, add, rsh, "^", "*", "+", ">>");
run_inner(s, n_args, shape, xor, mul, add, hsr, "^", "*", "+", "<<");
run_inner(s, n_args, shape, xor, mul, xor, and, "^", "*", "^", "&");
run_inner(s, n_args, shape, xor, mul, xor, add, "^", "*", "^", "+");
run_inner(s, n_args, shape, xor, mul, xor, xor, "^", "*", "^", "^");
run_inner(s, n_args, shape, xor, mul, xor, or, "^", "*", "^", "|");
run_inner(s, n_args, shape, xor, mul, xor, sub, "^", "*", "^", "-");
run_inner(s, n_args, shape, xor, mul, xor, bus, "^", "*", "^", "←");
run_inner(s, n_args, shape, xor, mul, xor, mul, "^", "*", "^", "*");
run_inner(s, n_args, shape, xor, mul, xor, rsh, "^", "*", "^", ">>");
run_inner(s, n_args, shape, xor, mul, xor, hsr, "^", "*", "^", "<<");
run_inner(s, n_args, shape, xor, mul, or, and, "^", "*", "|", "&");
run_inner(s, n_args, shape, xor, mul, or, add, "^", "*", "|", "+");
run_inner(s, n_args, shape, xor, mul, or, xor, "^", "*", "|", "^");
run_inner(s, n_args, shape, xor, mul, or, or, "^", "*", "|", "|");
run_inner(s, n_args, shape, xor, mul, or, sub, "^", "*", "|", "-");
run_inner(s, n_args, shape, xor, mul, or, bus, "^", "*", "|", "←");
run_inner(s, n_args, shape, xor, mul, or, mul, "^", "*", "|", "*");
run_inner(s, n_args, shape, xor, mul, or, rsh, "^", "*", "|", ">>");
run_inner(s, n_args, shape, xor, mul, or, hsr, "^", "*", "|", "<<");
run_inner(s, n_args, shape, xor, mul, sub, and, "^", "*", "-", "&");
run_inner(s, n_args, shape, xor, mul, sub, add, "^", "*", "-", "+");
run_inner(s, n_args, shape, xor, mul, sub, xor, "^", "*", "-", "^");
run_inner(s, n_args, shape, xor, mul, sub, or, "^", "*", "-", "|");
run_inner(s, n_args, shape, xor, mul, sub, sub, "^", "*", "-", "-");
run_inner(s, n_args, shape, xor, mul, sub, bus, "^", "*", "-", "←");
run_inner(s, n_args, shape, xor, mul, sub, mul, "^", "*", "-", "*");
run_inner(s, n_args, shape, xor, mul, sub, rsh, "^", "*", "-", ">>");
run_inner(s, n_args, shape, xor, mul, sub, hsr, "^", "*", "-", "<<");
run_inner(s, n_args, shape, xor, mul, bus, and, "^", "*", "←", "&");
run_inner(s, n_args, shape, xor, mul, bus, add, "^", "*", "←", "+");
run_inner(s, n_args, shape, xor, mul, bus, xor, "^", "*", "←", "^");
run_inner(s, n_args, shape, xor, mul, bus, or, "^", "*", "←", "|");
run_inner(s, n_args, shape, xor, mul, bus, sub, "^", "*", "←", "-");
run_inner(s, n_args, shape, xor, mul, bus, bus, "^", "*", "←", "←");
run_inner(s, n_args, shape, xor, mul, bus, mul, "^", "*", "←", "*");
run_inner(s, n_args, shape, xor, mul, bus, rsh, "^", "*", "←", ">>");
run_inner(s, n_args, shape, xor, mul, bus, hsr, "^", "*", "←", "<<");
run_inner(s, n_args, shape, xor, mul, mul, and, "^", "*", "*", "&");
run_inner(s, n_args, shape, xor, mul, mul, add, "^", "*", "*", "+");
run_inner(s, n_args, shape, xor, mul, mul, xor, "^", "*", "*", "^");
run_inner(s, n_args, shape, xor, mul, mul, or, "^", "*", "*", "|");
run_inner(s, n_args, shape, xor, mul, mul, sub, "^", "*", "*", "-");
run_inner(s, n_args, shape, xor, mul, mul, bus, "^", "*", "*", "←");
run_inner(s, n_args, shape, xor, mul, mul, mul, "^", "*", "*", "*");
run_inner(s, n_args, shape, xor, mul, mul, rsh, "^", "*", "*", ">>");
run_inner(s, n_args, shape, xor, mul, mul, hsr, "^", "*", "*", "<<");
run_inner(s, n_args, shape, xor, mul, rsh, and, "^", "*", ">>", "&");
run_inner(s, n_args, shape, xor, mul, rsh, add, "^", "*", ">>", "+");
run_inner(s, n_args, shape, xor, mul, rsh, xor, "^", "*", ">>", "^");
run_inner(s, n_args, shape, xor, mul, rsh, or, "^", "*", ">>", "|");
run_inner(s, n_args, shape, xor, mul, rsh, sub, "^", "*", ">>", "-");
run_inner(s, n_args, shape, xor, mul, rsh, bus, "^", "*", ">>", "←");
run_inner(s, n_args, shape, xor, mul, rsh, mul, "^", "*", ">>", "*");
run_inner(s, n_args, shape, xor, mul, rsh, rsh, "^", "*", ">>", ">>");
run_inner(s, n_args, shape, xor, mul, rsh, hsr, "^", "*", ">>", "<<");
run_inner(s, n_args, shape, xor, mul, hsr, and, "^", "*", "<<", "&");
run_inner(s, n_args, shape, xor, mul, hsr, add, "^", "*", "<<", "+");
run_inner(s, n_args, shape, xor, mul, hsr, xor, "^", "*", "<<", "^");
run_inner(s, n_args, shape, xor, mul, hsr, or, "^", "*", "<<", "|");
run_inner(s, n_args, shape, xor, mul, hsr, sub, "^", "*", "<<", "-");
run_inner(s, n_args, shape, xor, mul, hsr, bus, "^", "*", "<<", "←");
run_inner(s, n_args, shape, xor, mul, hsr, mul, "^", "*", "<<", "*");
run_inner(s, n_args, shape, xor, mul, hsr, rsh, "^", "*", "<<", ">>");
run_inner(s, n_args, shape, xor, mul, hsr, hsr, "^", "*", "<<", "<<");
run_inner(s, n_args, shape, xor, rsh, and, and, "^", ">>", "&", "&");
run_inner(s, n_args, shape, xor, rsh, and, add, "^", ">>", "&", "+");
run_inner(s, n_args, shape, xor, rsh, and, xor, "^", ">>", "&", "^");
run_inner(s, n_args, shape, xor, rsh, and, or, "^", ">>", "&", "|");
run_inner(s, n_args, shape, xor, rsh, and, sub, "^", ">>", "&", "-");
run_inner(s, n_args, shape, xor, rsh, and, bus, "^", ">>", "&", "←");
run_inner(s, n_args, shape, xor, rsh, and, mul, "^", ">>", "&", "*");
run_inner(s, n_args, shape, xor, rsh, and, rsh, "^", ">>", "&", ">>");
run_inner(s, n_args, shape, xor, rsh, and, hsr, "^", ">>", "&", "<<");
run_inner(s, n_args, shape, xor, rsh, add, and, "^", ">>", "+", "&");
run_inner(s, n_args, shape, xor, rsh, add, add, "^", ">>", "+", "+");
run_inner(s, n_args, shape, xor, rsh, add, xor, "^", ">>", "+", "^");
run_inner(s, n_args, shape, xor, rsh, add, or, "^", ">>", "+", "|");
run_inner(s, n_args, shape, xor, rsh, add, sub, "^", ">>", "+", "-");
run_inner(s, n_args, shape, xor, rsh, add, bus, "^", ">>", "+", "←");
run_inner(s, n_args, shape, xor, rsh, add, mul, "^", ">>", "+", "*");
run_inner(s, n_args, shape, xor, rsh, add, rsh, "^", ">>", "+", ">>");
run_inner(s, n_args, shape, xor, rsh, add, hsr, "^", ">>", "+", "<<");
run_inner(s, n_args, shape, xor, rsh, xor, and, "^", ">>", "^", "&");
run_inner(s, n_args, shape, xor, rsh, xor, add, "^", ">>", "^", "+");
run_inner(s, n_args, shape, xor, rsh, xor, xor, "^", ">>", "^", "^");
run_inner(s, n_args, shape, xor, rsh, xor, or, "^", ">>", "^", "|");
run_inner(s, n_args, shape, xor, rsh, xor, sub, "^", ">>", "^", "-");
run_inner(s, n_args, shape, xor, rsh, xor, bus, "^", ">>", "^", "←");
run_inner(s, n_args, shape, xor, rsh, xor, mul, "^", ">>", "^", "*");
run_inner(s, n_args, shape, xor, rsh, xor, rsh, "^", ">>", "^", ">>");
run_inner(s, n_args, shape, xor, rsh, xor, hsr, "^", ">>", "^", "<<");
run_inner(s, n_args, shape, xor, rsh, or, and, "^", ">>", "|", "&");
run_inner(s, n_args, shape, xor, rsh, or, add, "^", ">>", "|", "+");
run_inner(s, n_args, shape, xor, rsh, or, xor, "^", ">>", "|", "^");
run_inner(s, n_args, shape, xor, rsh, or, or, "^", ">>", "|", "|");
run_inner(s, n_args, shape, xor, rsh, or, sub, "^", ">>", "|", "-");
run_inner(s, n_args, shape, xor, rsh, or, bus, "^", ">>", "|", "←");
run_inner(s, n_args, shape, xor, rsh, or, mul, "^", ">>", "|", "*");
run_inner(s, n_args, shape, xor, rsh, or, rsh, "^", ">>", "|", ">>");
run_inner(s, n_args, shape, xor, rsh, or, hsr, "^", ">>", "|", "<<");
run_inner(s, n_args, shape, xor, rsh, sub, and, "^", ">>", "-", "&");
run_inner(s, n_args, shape, xor, rsh, sub, add, "^", ">>", "-", "+");
run_inner(s, n_args, shape, xor, rsh, sub, xor, "^", ">>", "-", "^");
run_inner(s, n_args, shape, xor, rsh, sub, or, "^", ">>", "-", "|");
run_inner(s, n_args, shape, xor, rsh, sub, sub, "^", ">>", "-", "-");
run_inner(s, n_args, shape, xor, rsh, sub, bus, "^", ">>", "-", "←");
run_inner(s, n_args, shape, xor, rsh, sub, mul, "^", ">>", "-", "*");
run_inner(s, n_args, shape, xor, rsh, sub, rsh, "^", ">>", "-", ">>");
run_inner(s, n_args, shape, xor, rsh, sub, hsr, "^", ">>", "-", "<<");
run_inner(s, n_args, shape, xor, rsh, bus, and, "^", ">>", "←", "&");
run_inner(s, n_args, shape, xor, rsh, bus, add, "^", ">>", "←", "+");
run_inner(s, n_args, shape, xor, rsh, bus, xor, "^", ">>", "←", "^");
run_inner(s, n_args, shape, xor, rsh, bus, or, "^", ">>", "←", "|");
run_inner(s, n_args, shape, xor, rsh, bus, sub, "^", ">>", "←", "-");
run_inner(s, n_args, shape, xor, rsh, bus, bus, "^", ">>", "←", "←");
run_inner(s, n_args, shape, xor, rsh, bus, mul, "^", ">>", "←", "*");
run_inner(s, n_args, shape, xor, rsh, bus, rsh, "^", ">>", "←", ">>");
run_inner(s, n_args, shape, xor, rsh, bus, hsr, "^", ">>", "←", "<<");
run_inner(s, n_args, shape, xor, rsh, mul, and, "^", ">>", "*", "&");
run_inner(s, n_args, shape, xor, rsh, mul, add, "^", ">>", "*", "+");
run_inner(s, n_args, shape, xor, rsh, mul, xor, "^", ">>", "*", "^");
run_inner(s, n_args, shape, xor, rsh, mul, or, "^", ">>", "*", "|");
run_inner(s, n_args, shape, xor, rsh, mul, sub, "^", ">>", "*", "-");
run_inner(s, n_args, shape, xor, rsh, mul, bus, "^", ">>", "*", "←");
run_inner(s, n_args, shape, xor, rsh, mul, mul, "^", ">>", "*", "*");
run_inner(s, n_args, shape, xor, rsh, mul, rsh, "^", ">>", "*", ">>");
run_inner(s, n_args, shape, xor, rsh, mul, hsr, "^", ">>", "*", "<<");
run_inner(s, n_args, shape, xor, rsh, rsh, and, "^", ">>", ">>", "&");
run_inner(s, n_args, shape, xor, rsh, rsh, add, "^", ">>", ">>", "+");
run_inner(s, n_args, shape, xor, rsh, rsh, xor, "^", ">>", ">>", "^");
run_inner(s, n_args, shape, xor, rsh, rsh, or, "^", ">>", ">>", "|");
run_inner(s, n_args, shape, xor, rsh, rsh, sub, "^", ">>", ">>", "-");
run_inner(s, n_args, shape, xor, rsh, rsh, bus, "^", ">>", ">>", "←");
run_inner(s, n_args, shape, xor, rsh, rsh, mul, "^", ">>", ">>", "*");
run_inner(s, n_args, shape, xor, rsh, rsh, rsh, "^", ">>", ">>", ">>");
run_inner(s, n_args, shape, xor, rsh, rsh, hsr, "^", ">>", ">>", "<<");
run_inner(s, n_args, shape, xor, rsh, hsr, and, "^", ">>", "<<", "&");
run_inner(s, n_args, shape, xor, rsh, hsr, add, "^", ">>", "<<", "+");
run_inner(s, n_args, shape, xor, rsh, hsr, xor, "^", ">>", "<<", "^");
run_inner(s, n_args, shape, xor, rsh, hsr, or, "^", ">>", "<<", "|");
run_inner(s, n_args, shape, xor, rsh, hsr, sub, "^", ">>", "<<", "-");
run_inner(s, n_args, shape, xor, rsh, hsr, bus, "^", ">>", "<<", "←");
run_inner(s, n_args, shape, xor, rsh, hsr, mul, "^", ">>", "<<", "*");
run_inner(s, n_args, shape, xor, rsh, hsr, rsh, "^", ">>", "<<", ">>");
run_inner(s, n_args, shape, xor, rsh, hsr, hsr, "^", ">>", "<<", "<<");
run_inner(s, n_args, shape, xor, hsr, and, and, "^", "<<", "&", "&");
run_inner(s, n_args, shape, xor, hsr, and, add, "^", "<<", "&", "+");
run_inner(s, n_args, shape, xor, hsr, and, xor, "^", "<<", "&", "^");
run_inner(s, n_args, shape, xor, hsr, and, or, "^", "<<", "&", "|");
run_inner(s, n_args, shape, xor, hsr, and, sub, "^", "<<", "&", "-");
run_inner(s, n_args, shape, xor, hsr, and, bus, "^", "<<", "&", "←");
run_inner(s, n_args, shape, xor, hsr, and, mul, "^", "<<", "&", "*");
run_inner(s, n_args, shape, xor, hsr, and, rsh, "^", "<<", "&", ">>");
run_inner(s, n_args, shape, xor, hsr, and, hsr, "^", "<<", "&", "<<");
run_inner(s, n_args, shape, xor, hsr, add, and, "^", "<<", "+", "&");
run_inner(s, n_args, shape, xor, hsr, add, add, "^", "<<", "+", "+");
run_inner(s, n_args, shape, xor, hsr, add, xor, "^", "<<", "+", "^");
run_inner(s, n_args, shape, xor, hsr, add, or, "^", "<<", "+", "|");
run_inner(s, n_args, shape, xor, hsr, add, sub, "^", "<<", "+", "-");
run_inner(s, n_args, shape, xor, hsr, add, bus, "^", "<<", "+", "←");
run_inner(s, n_args, shape, xor, hsr, add, mul, "^", "<<", "+", "*");
run_inner(s, n_args, shape, xor, hsr, add, rsh, "^", "<<", "+", ">>");
run_inner(s, n_args, shape, xor, hsr, add, hsr, "^", "<<", "+", "<<");
run_inner(s, n_args, shape, xor, hsr, xor, and, "^", "<<", "^", "&");
run_inner(s, n_args, shape, xor, hsr, xor, add, "^", "<<", "^", "+");
run_inner(s, n_args, shape, xor, hsr, xor, xor, "^", "<<", "^", "^");
run_inner(s, n_args, shape, xor, hsr, xor, or, "^", "<<", "^", "|");
run_inner(s, n_args, shape, xor, hsr, xor, sub, "^", "<<", "^", "-");
run_inner(s, n_args, shape, xor, hsr, xor, bus, "^", "<<", "^", "←");
run_inner(s, n_args, shape, xor, hsr, xor, mul, "^", "<<", "^", "*");
run_inner(s, n_args, shape, xor, hsr, xor, rsh, "^", "<<", "^", ">>");
run_inner(s, n_args, shape, xor, hsr, xor, hsr, "^", "<<", "^", "<<");
run_inner(s, n_args, shape, xor, hsr, or, and, "^", "<<", "|", "&");
run_inner(s, n_args, shape, xor, hsr, or, add, "^", "<<", "|", "+");
run_inner(s, n_args, shape, xor, hsr, or, xor, "^", "<<", "|", "^");
run_inner(s, n_args, shape, xor, hsr, or, or, "^", "<<", "|", "|");
run_inner(s, n_args, shape, xor, hsr, or, sub, "^", "<<", "|", "-");
run_inner(s, n_args, shape, xor, hsr, or, bus, "^", "<<", "|", "←");
run_inner(s, n_args, shape, xor, hsr, or, mul, "^", "<<", "|", "*");
run_inner(s, n_args, shape, xor, hsr, or, rsh, "^", "<<", "|", ">>");
run_inner(s, n_args, shape, xor, hsr, or, hsr, "^", "<<", "|", "<<");
run_inner(s, n_args, shape, xor, hsr, sub, and, "^", "<<", "-", "&");
run_inner(s, n_args, shape, xor, hsr, sub, add, "^", "<<", "-", "+");
run_inner(s, n_args, shape, xor, hsr, sub, xor, "^", "<<", "-", "^");
run_inner(s, n_args, shape, xor, hsr, sub, or, "^", "<<", "-", "|");
run_inner(s, n_args, shape, xor, hsr, sub, sub, "^", "<<", "-", "-");
run_inner(s, n_args, shape, xor, hsr, sub, bus, "^", "<<", "-", "←");
run_inner(s, n_args, shape, xor, hsr, sub, mul, "^", "<<", "-", "*");
run_inner(s, n_args, shape, xor, hsr, sub, rsh, "^", "<<", "-", ">>");
run_inner(s, n_args, shape, xor, hsr, sub, hsr, "^", "<<", "-", "<<");
run_inner(s, n_args, shape, xor, hsr, bus, and, "^", "<<", "←", "&");
run_inner(s, n_args, shape, xor, hsr, bus, add, "^", "<<", "←", "+");
run_inner(s, n_args, shape, xor, hsr, bus, xor, "^", "<<", "←", "^");
run_inner(s, n_args, shape, xor, hsr, bus, or, "^", "<<", "←", "|");
run_inner(s, n_args, shape, xor, hsr, bus, sub, "^", "<<", "←", "-");
run_inner(s, n_args, shape, xor, hsr, bus, bus, "^", "<<", "←", "←");
run_inner(s, n_args, shape, xor, hsr, bus, mul, "^", "<<", "←", "*");
run_inner(s, n_args, shape, xor, hsr, bus, rsh, "^", "<<", "←", ">>");
run_inner(s, n_args, shape, xor, hsr, bus, hsr, "^", "<<", "←", "<<");
run_inner(s, n_args, shape, xor, hsr, mul, and, "^", "<<", "*", "&");
run_inner(s, n_args, shape, xor, hsr, mul, add, "^", "<<", "*", "+");
run_inner(s, n_args, shape, xor, hsr, mul, xor, "^", "<<", "*", "^");
run_inner(s, n_args, shape, xor, hsr, mul, or, "^", "<<", "*", "|");
run_inner(s, n_args, shape, xor, hsr, mul, sub, "^", "<<", "*", "-");
run_inner(s, n_args, shape, xor, hsr, mul, bus, "^", "<<", "*", "←");
run_inner(s, n_args, shape, xor, hsr, mul, mul, "^", "<<", "*", "*");
run_inner(s, n_args, shape, xor, hsr, mul, rsh, "^", "<<", "*", ">>");
run_inner(s, n_args, shape, xor, hsr, mul, hsr, "^", "<<", "*", "<<");
run_inner(s, n_args, shape, xor, hsr, rsh, and, "^", "<<", ">>", "&");
run_inner(s, n_args, shape, xor, hsr, rsh, add, "^", "<<", ">>", "+");
run_inner(s, n_args, shape, xor, hsr, rsh, xor, "^", "<<", ">>", "^");
run_inner(s, n_args, shape, xor, hsr, rsh, or, "^", "<<", ">>", "|");
run_inner(s, n_args, shape, xor, hsr, rsh, sub, "^", "<<", ">>", "-");
run_inner(s, n_args, shape, xor, hsr, rsh, bus, "^", "<<", ">>", "←");
run_inner(s, n_args, shape, xor, hsr, rsh, mul, "^", "<<", ">>", "*");
run_inner(s, n_args, shape, xor, hsr, rsh, rsh, "^", "<<", ">>", ">>");
run_inner(s, n_args, shape, xor, hsr, rsh, hsr, "^", "<<", ">>", "<<");
run_inner(s, n_args, shape, xor, hsr, hsr, and, "^", "<<", "<<", "&");
run_inner(s, n_args, shape, xor, hsr, hsr, add, "^", "<<", "<<", "+");
run_inner(s, n_args, shape, xor, hsr, hsr, xor, "^", "<<", "<<", "^");
run_inner(s, n_args, shape, xor, hsr, hsr, or, "^", "<<", "<<", "|");
run_inner(s, n_args, shape, xor, hsr, hsr, sub, "^", "<<", "<<", "-");
run_inner(s, n_args, shape, xor, hsr, hsr, bus, "^", "<<", "<<", "←");
run_inner(s, n_args, shape, xor, hsr, hsr, mul, "^", "<<", "<<", "*");
run_inner(s, n_args, shape, xor, hsr, hsr, rsh, "^", "<<", "<<", ">>");
run_inner(s, n_args, shape, xor, hsr, hsr, hsr, "^", "<<", "<<", "<<");
}));
threads.push(thread::spawn(move || {
run_inner(s, n_args, shape, or, and, and, and, "|", "&", "&", "&");
run_inner(s, n_args, shape, or, and, and, add, "|", "&", "&", "+");
run_inner(s, n_args, shape, or, and, and, xor, "|", "&", "&", "^");
run_inner(s, n_args, shape, or, and, and, or, "|", "&", "&", "|");
run_inner(s, n_args, shape, or, and, and, sub, "|", "&", "&", "-");
run_inner(s, n_args, shape, or, and, and, bus, "|", "&", "&", "←");
run_inner(s, n_args, shape, or, and, and, mul, "|", "&", "&", "*");
run_inner(s, n_args, shape, or, and, and, rsh, "|", "&", "&", ">>");
run_inner(s, n_args, shape, or, and, and, hsr, "|", "&", "&", "<<");
run_inner(s, n_args, shape, or, and, add, and, "|", "&", "+", "&");
run_inner(s, n_args, shape, or, and, add, add, "|", "&", "+", "+");
run_inner(s, n_args, shape, or, and, add, xor, "|", "&", "+", "^");
run_inner(s, n_args, shape, or, and, add, or, "|", "&", "+", "|");
run_inner(s, n_args, shape, or, and, add, sub, "|", "&", "+", "-");
run_inner(s, n_args, shape, or, and, add, bus, "|", "&", "+", "←");
run_inner(s, n_args, shape, or, and, add, mul, "|", "&", "+", "*");
run_inner(s, n_args, shape, or, and, add, rsh, "|", "&", "+", ">>");
run_inner(s, n_args, shape, or, and, add, hsr, "|", "&", "+", "<<");
run_inner(s, n_args, shape, or, and, xor, and, "|", "&", "^", "&");
run_inner(s, n_args, shape, or, and, xor, add, "|", "&", "^", "+");
run_inner(s, n_args, shape, or, and, xor, xor, "|", "&", "^", "^");
run_inner(s, n_args, shape, or, and, xor, or, "|", "&", "^", "|");
run_inner(s, n_args, shape, or, and, xor, sub, "|", "&", "^", "-");
run_inner(s, n_args, shape, or, and, xor, bus, "|", "&", "^", "←");
run_inner(s, n_args, shape, or, and, xor, mul, "|", "&", "^", "*");
run_inner(s, n_args, shape, or, and, xor, rsh, "|", "&", "^", ">>");
run_inner(s, n_args, shape, or, and, xor, hsr, "|", "&", "^", "<<");
run_inner(s, n_args, shape, or, and, or, and, "|", "&", "|", "&");
run_inner(s, n_args, shape, or, and, or, add, "|", "&", "|", "+");
run_inner(s, n_args, shape, or, and, or, xor, "|", "&", "|", "^");
run_inner(s, n_args, shape, or, and, or, or, "|", "&", "|", "|");
run_inner(s, n_args, shape, or, and, or, sub, "|", "&", "|", "-");
run_inner(s, n_args, shape, or, and, or, bus, "|", "&", "|", "←");
run_inner(s, n_args, shape, or, and, or, mul, "|", "&", "|", "*");
run_inner(s, n_args, shape, or, and, or, rsh, "|", "&", "|", ">>");
run_inner(s, n_args, shape, or, and, or, hsr, "|", "&", "|", "<<");
run_inner(s, n_args, shape, or, and, sub, and, "|", "&", "-", "&");
run_inner(s, n_args, shape, or, and, sub, add, "|", "&", "-", "+");
run_inner(s, n_args, shape, or, and, sub, xor, "|", "&", "-", "^");
run_inner(s, n_args, shape, or, and, sub, or, "|", "&", "-", "|");
run_inner(s, n_args, shape, or, and, sub, sub, "|", "&", "-", "-");
run_inner(s, n_args, shape, or, and, sub, bus, "|", "&", "-", "←");
run_inner(s, n_args, shape, or, and, sub, mul, "|", "&", "-", "*");
run_inner(s, n_args, shape, or, and, sub, rsh, "|", "&", "-", ">>");
run_inner(s, n_args, shape, or, and, sub, hsr, "|", "&", "-", "<<");
run_inner(s, n_args, shape, or, and, bus, and, "|", "&", "←", "&");
run_inner(s, n_args, shape, or, and, bus, add, "|", "&", "←", "+");
run_inner(s, n_args, shape, or, and, bus, xor, "|", "&", "←", "^");
run_inner(s, n_args, shape, or, and, bus, or, "|", "&", "←", "|");
run_inner(s, n_args, shape, or, and, bus, sub, "|", "&", "←", "-");
run_inner(s, n_args, shape, or, and, bus, bus, "|", "&", "←", "←");
run_inner(s, n_args, shape, or, and, bus, mul, "|", "&", "←", "*");
run_inner(s, n_args, shape, or, and, bus, rsh, "|", "&", "←", ">>");
run_inner(s, n_args, shape, or, and, bus, hsr, "|", "&", "←", "<<");
run_inner(s, n_args, shape, or, and, mul, and, "|", "&", "*", "&");
run_inner(s, n_args, shape, or, and, mul, add, "|", "&", "*", "+");
run_inner(s, n_args, shape, or, and, mul, xor, "|", "&", "*", "^");
run_inner(s, n_args, shape, or, and, mul, or, "|", "&", "*", "|");
run_inner(s, n_args, shape, or, and, mul, sub, "|", "&", "*", "-");
run_inner(s, n_args, shape, or, and, mul, bus, "|", "&", "*", "←");
run_inner(s, n_args, shape, or, and, mul, mul, "|", "&", "*", "*");
run_inner(s, n_args, shape, or, and, mul, rsh, "|", "&", "*", ">>");
run_inner(s, n_args, shape, or, and, mul, hsr, "|", "&", "*", "<<");
run_inner(s, n_args, shape, or, and, rsh, and, "|", "&", ">>", "&");
run_inner(s, n_args, shape, or, and, rsh, add, "|", "&", ">>", "+");
run_inner(s, n_args, shape, or, and, rsh, xor, "|", "&", ">>", "^");
run_inner(s, n_args, shape, or, and, rsh, or, "|", "&", ">>", "|");
run_inner(s, n_args, shape, or, and, rsh, sub, "|", "&", ">>", "-");
run_inner(s, n_args, shape, or, and, rsh, bus, "|", "&", ">>", "←");
run_inner(s, n_args, shape, or, and, rsh, mul, "|", "&", ">>", "*");
run_inner(s, n_args, shape, or, and, rsh, rsh, "|", "&", ">>", ">>");
run_inner(s, n_args, shape, or, and, rsh, hsr, "|", "&", ">>", "<<");
run_inner(s, n_args, shape, or, and, hsr, and, "|", "&", "<<", "&");
run_inner(s, n_args, shape, or, and, hsr, add, "|", "&", "<<", "+");
run_inner(s, n_args, shape, or, and, hsr, xor, "|", "&", "<<", "^");
run_inner(s, n_args, shape, or, and, hsr, or, "|", "&", "<<", "|");
run_inner(s, n_args, shape, or, and, hsr, sub, "|", "&", "<<", "-");
run_inner(s, n_args, shape, or, and, hsr, bus, "|", "&", "<<", "←");
run_inner(s, n_args, shape, or, and, hsr, mul, "|", "&", "<<", "*");
run_inner(s, n_args, shape, or, and, hsr, rsh, "|", "&", "<<", ">>");
run_inner(s, n_args, shape, or, and, hsr, hsr, "|", "&", "<<", "<<");
run_inner(s, n_args, shape, or, add, and, and, "|", "+", "&", "&");
run_inner(s, n_args, shape, or, add, and, add, "|", "+", "&", "+");
run_inner(s, n_args, shape, or, add, and, xor, "|", "+", "&", "^");
run_inner(s, n_args, shape, or, add, and, or, "|", "+", "&", "|");
run_inner(s, n_args, shape, or, add, and, sub, "|", "+", "&", "-");
run_inner(s, n_args, shape, or, add, and, bus, "|", "+", "&", "←");
run_inner(s, n_args, shape, or, add, and, mul, "|", "+", "&", "*");
run_inner(s, n_args, shape, or, add, and, rsh, "|", "+", "&", ">>");
run_inner(s, n_args, shape, or, add, and, hsr, "|", "+", "&", "<<");
run_inner(s, n_args, shape, or, add, add, and, "|", "+", "+", "&");
run_inner(s, n_args, shape, or, add, add, add, "|", "+", "+", "+");
run_inner(s, n_args, shape, or, add, add, xor, "|", "+", "+", "^");
run_inner(s, n_args, shape, or, add, add, or, "|", "+", "+", "|");
run_inner(s, n_args, shape, or, add, add, sub, "|", "+", "+", "-");
run_inner(s, n_args, shape, or, add, add, bus, "|", "+", "+", "←");
run_inner(s, n_args, shape, or, add, add, mul, "|", "+", "+", "*");
run_inner(s, n_args, shape, or, add, add, rsh, "|", "+", "+", ">>");
run_inner(s, n_args, shape, or, add, add, hsr, "|", "+", "+", "<<");
run_inner(s, n_args, shape, or, add, xor, and, "|", "+", "^", "&");
run_inner(s, n_args, shape, or, add, xor, add, "|", "+", "^", "+");
run_inner(s, n_args, shape, or, add, xor, xor, "|", "+", "^", "^");
run_inner(s, n_args, shape, or, add, xor, or, "|", "+", "^", "|");
run_inner(s, n_args, shape, or, add, xor, sub, "|", "+", "^", "-");
run_inner(s, n_args, shape, or, add, xor, bus, "|", "+", "^", "←");
run_inner(s, n_args, shape, or, add, xor, mul, "|", "+", "^", "*");
run_inner(s, n_args, shape, or, add, xor, rsh, "|", "+", "^", ">>");
run_inner(s, n_args, shape, or, add, xor, hsr, "|", "+", "^", "<<");
run_inner(s, n_args, shape, or, add, or, and, "|", "+", "|", "&");
run_inner(s, n_args, shape, or, add, or, add, "|", "+", "|", "+");
run_inner(s, n_args, shape, or, add, or, xor, "|", "+", "|", "^");
run_inner(s, n_args, shape, or, add, or, or, "|", "+", "|", "|");
run_inner(s, n_args, shape, or, add, or, sub, "|", "+", "|", "-");
run_inner(s, n_args, shape, or, add, or, bus, "|", "+", "|", "←");
run_inner(s, n_args, shape, or, add, or, mul, "|", "+", "|", "*");
run_inner(s, n_args, shape, or, add, or, rsh, "|", "+", "|", ">>");
run_inner(s, n_args, shape, or, add, or, hsr, "|", "+", "|", "<<");
run_inner(s, n_args, shape, or, add, sub, and, "|", "+", "-", "&");
run_inner(s, n_args, shape, or, add, sub, add, "|", "+", "-", "+");
run_inner(s, n_args, shape, or, add, sub, xor, "|", "+", "-", "^");
run_inner(s, n_args, shape, or, add, sub, or, "|", "+", "-", "|");
run_inner(s, n_args, shape, or, add, sub, sub, "|", "+", "-", "-");
run_inner(s, n_args, shape, or, add, sub, bus, "|", "+", "-", "←");
run_inner(s, n_args, shape, or, add, sub, mul, "|", "+", "-", "*");
run_inner(s, n_args, shape, or, add, sub, rsh, "|", "+", "-", ">>");
run_inner(s, n_args, shape, or, add, sub, hsr, "|", "+", "-", "<<");
run_inner(s, n_args, shape, or, add, bus, and, "|", "+", "←", "&");
run_inner(s, n_args, shape, or, add, bus, add, "|", "+", "←", "+");
run_inner(s, n_args, shape, or, add, bus, xor, "|", "+", "←", "^");
run_inner(s, n_args, shape, or, add, bus, or, "|", "+", "←", "|");
run_inner(s, n_args, shape, or, add, bus, sub, "|", "+", "←", "-");
run_inner(s, n_args, shape, or, add, bus, bus, "|", "+", "←", "←");
run_inner(s, n_args, shape, or, add, bus, mul, "|", "+", "←", "*");
run_inner(s, n_args, shape, or, add, bus, rsh, "|", "+", "←", ">>");
run_inner(s, n_args, shape, or, add, bus, hsr, "|", "+", "←", "<<");
run_inner(s, n_args, shape, or, add, mul, and, "|", "+", "*", "&");
run_inner(s, n_args, shape, or, add, mul, add, "|", "+", "*", "+");
run_inner(s, n_args, shape, or, add, mul, xor, "|", "+", "*", "^");
run_inner(s, n_args, shape, or, add, mul, or, "|", "+", "*", "|");
run_inner(s, n_args, shape, or, add, mul, sub, "|", "+", "*", "-");
run_inner(s, n_args, shape, or, add, mul, bus, "|", "+", "*", "←");
run_inner(s, n_args, shape, or, add, mul, mul, "|", "+", "*", "*");
run_inner(s, n_args, shape, or, add, mul, rsh, "|", "+", "*", ">>");
run_inner(s, n_args, shape, or, add, mul, hsr, "|", "+", "*", "<<");
run_inner(s, n_args, shape, or, add, rsh, and, "|", "+", ">>", "&");
run_inner(s, n_args, shape, or, add, rsh, add, "|", "+", ">>", "+");
run_inner(s, n_args, shape, or, add, rsh, xor, "|", "+", ">>", "^");
run_inner(s, n_args, shape, or, add, rsh, or, "|", "+", ">>", "|");
run_inner(s, n_args, shape, or, add, rsh, sub, "|", "+", ">>", "-");
run_inner(s, n_args, shape, or, add, rsh, bus, "|", "+", ">>", "←");
run_inner(s, n_args, shape, or, add, rsh, mul, "|", "+", ">>", "*");
run_inner(s, n_args, shape, or, add, rsh, rsh, "|", "+", ">>", ">>");
run_inner(s, n_args, shape, or, add, rsh, hsr, "|", "+", ">>", "<<");
run_inner(s, n_args, shape, or, add, hsr, and, "|", "+", "<<", "&");
run_inner(s, n_args, shape, or, add, hsr, add, "|", "+", "<<", "+");
run_inner(s, n_args, shape, or, add, hsr, xor, "|", "+", "<<", "^");
run_inner(s, n_args, shape, or, add, hsr, or, "|", "+", "<<", "|");
run_inner(s, n_args, shape, or, add, hsr, sub, "|", "+", "<<", "-");
run_inner(s, n_args, shape, or, add, hsr, bus, "|", "+", "<<", "←");
run_inner(s, n_args, shape, or, add, hsr, mul, "|", "+", "<<", "*");
run_inner(s, n_args, shape, or, add, hsr, rsh, "|", "+", "<<", ">>");
run_inner(s, n_args, shape, or, add, hsr, hsr, "|", "+", "<<", "<<");
run_inner(s, n_args, shape, or, xor, and, and, "|", "^", "&", "&");
run_inner(s, n_args, shape, or, xor, and, add, "|", "^", "&", "+");
run_inner(s, n_args, shape, or, xor, and, xor, "|", "^", "&", "^");
run_inner(s, n_args, shape, or, xor, and, or, "|", "^", "&", "|");
run_inner(s, n_args, shape, or, xor, and, sub, "|", "^", "&", "-");
run_inner(s, n_args, shape, or, xor, and, bus, "|", "^", "&", "←");
run_inner(s, n_args, shape, or, xor, and, mul, "|", "^", "&", "*");
run_inner(s, n_args, shape, or, xor, and, rsh, "|", "^", "&", ">>");
run_inner(s, n_args, shape, or, xor, and, hsr, "|", "^", "&", "<<");
run_inner(s, n_args, shape, or, xor, add, and, "|", "^", "+", "&");
run_inner(s, n_args, shape, or, xor, add, add, "|", "^", "+", "+");
run_inner(s, n_args, shape, or, xor, add, xor, "|", "^", "+", "^");
run_inner(s, n_args, shape, or, xor, add, or, "|", "^", "+", "|");
run_inner(s, n_args, shape, or, xor, add, sub, "|", "^", "+", "-");
run_inner(s, n_args, shape, or, xor, add, bus, "|", "^", "+", "←");
run_inner(s, n_args, shape, or, xor, add, mul, "|", "^", "+", "*");
run_inner(s, n_args, shape, or, xor, add, rsh, "|", "^", "+", ">>");
run_inner(s, n_args, shape, or, xor, add, hsr, "|", "^", "+", "<<");
run_inner(s, n_args, shape, or, xor, xor, and, "|", "^", "^", "&");
run_inner(s, n_args, shape, or, xor, xor, add, "|", "^", "^", "+");
run_inner(s, n_args, shape, or, xor, xor, xor, "|", "^", "^", "^");
run_inner(s, n_args, shape, or, xor, xor, or, "|", "^", "^", "|");
run_inner(s, n_args, shape, or, xor, xor, sub, "|", "^", "^", "-");
run_inner(s, n_args, shape, or, xor, xor, bus, "|", "^", "^", "←");
run_inner(s, n_args, shape, or, xor, xor, mul, "|", "^", "^", "*");
run_inner(s, n_args, shape, or, xor, xor, rsh, "|", "^", "^", ">>");
run_inner(s, n_args, shape, or, xor, xor, hsr, "|", "^", "^", "<<");
run_inner(s, n_args, shape, or, xor, or, and, "|", "^", "|", "&");
run_inner(s, n_args, shape, or, xor, or, add, "|", "^", "|", "+");
run_inner(s, n_args, shape, or, xor, or, xor, "|", "^", "|", "^");
run_inner(s, n_args, shape, or, xor, or, or, "|", "^", "|", "|");
run_inner(s, n_args, shape, or, xor, or, sub, "|", "^", "|", "-");
run_inner(s, n_args, shape, or, xor, or, bus, "|", "^", "|", "←");
run_inner(s, n_args, shape, or, xor, or, mul, "|", "^", "|", "*");
run_inner(s, n_args, shape, or, xor, or, rsh, "|", "^", "|", ">>");
run_inner(s, n_args, shape, or, xor, or, hsr, "|", "^", "|", "<<");
run_inner(s, n_args, shape, or, xor, sub, and, "|", "^", "-", "&");
run_inner(s, n_args, shape, or, xor, sub, add, "|", "^", "-", "+");
run_inner(s, n_args, shape, or, xor, sub, xor, "|", "^", "-", "^");
run_inner(s, n_args, shape, or, xor, sub, or, "|", "^", "-", "|");
run_inner(s, n_args, shape, or, xor, sub, sub, "|", "^", "-", "-");
run_inner(s, n_args, shape, or, xor, sub, bus, "|", "^", "-", "←");
run_inner(s, n_args, shape, or, xor, sub, mul, "|", "^", "-", "*");
run_inner(s, n_args, shape, or, xor, sub, rsh, "|", "^", "-", ">>");
run_inner(s, n_args, shape, or, xor, sub, hsr, "|", "^", "-", "<<");
run_inner(s, n_args, shape, or, xor, bus, and, "|", "^", "←", "&");
run_inner(s, n_args, shape, or, xor, bus, add, "|", "^", "←", "+");
run_inner(s, n_args, shape, or, xor, bus, xor, "|", "^", "←", "^");
run_inner(s, n_args, shape, or, xor, bus, or, "|", "^", "←", "|");
run_inner(s, n_args, shape, or, xor, bus, sub, "|", "^", "←", "-");
run_inner(s, n_args, shape, or, xor, bus, bus, "|", "^", "←", "←");
run_inner(s, n_args, shape, or, xor, bus, mul, "|", "^", "←", "*");
run_inner(s, n_args, shape, or, xor, bus, rsh, "|", "^", "←", ">>");
run_inner(s, n_args, shape, or, xor, bus, hsr, "|", "^", "←", "<<");
run_inner(s, n_args, shape, or, xor, mul, and, "|", "^", "*", "&");
run_inner(s, n_args, shape, or, xor, mul, add, "|", "^", "*", "+");
run_inner(s, n_args, shape, or, xor, mul, xor, "|", "^", "*", "^");
run_inner(s, n_args, shape, or, xor, mul, or, "|", "^", "*", "|");
run_inner(s, n_args, shape, or, xor, mul, sub, "|", "^", "*", "-");
run_inner(s, n_args, shape, or, xor, mul, bus, "|", "^", "*", "←");
run_inner(s, n_args, shape, or, xor, mul, mul, "|", "^", "*", "*");
run_inner(s, n_args, shape, or, xor, mul, rsh, "|", "^", "*", ">>");
run_inner(s, n_args, shape, or, xor, mul, hsr, "|", "^", "*", "<<");
run_inner(s, n_args, shape, or, xor, rsh, and, "|", "^", ">>", "&");
run_inner(s, n_args, shape, or, xor, rsh, add, "|", "^", ">>", "+");
run_inner(s, n_args, shape, or, xor, rsh, xor, "|", "^", ">>", "^");
run_inner(s, n_args, shape, or, xor, rsh, or, "|", "^", ">>", "|");
run_inner(s, n_args, shape, or, xor, rsh, sub, "|", "^", ">>", "-");
run_inner(s, n_args, shape, or, xor, rsh, bus, "|", "^", ">>", "←");
run_inner(s, n_args, shape, or, xor, rsh, mul, "|", "^", ">>", "*");
run_inner(s, n_args, shape, or, xor, rsh, rsh, "|", "^", ">>", ">>");
run_inner(s, n_args, shape, or, xor, rsh, hsr, "|", "^", ">>", "<<");
run_inner(s, n_args, shape, or, xor, hsr, and, "|", "^", "<<", "&");
run_inner(s, n_args, shape, or, xor, hsr, add, "|", "^", "<<", "+");
run_inner(s, n_args, shape, or, xor, hsr, xor, "|", "^", "<<", "^");
run_inner(s, n_args, shape, or, xor, hsr, or, "|", "^", "<<", "|");
run_inner(s, n_args, shape, or, xor, hsr, sub, "|", "^", "<<", "-");
run_inner(s, n_args, shape, or, xor, hsr, bus, "|", "^", "<<", "←");
run_inner(s, n_args, shape, or, xor, hsr, mul, "|", "^", "<<", "*");
run_inner(s, n_args, shape, or, xor, hsr, rsh, "|", "^", "<<", ">>");
run_inner(s, n_args, shape, or, xor, hsr, hsr, "|", "^", "<<", "<<");
run_inner(s, n_args, shape, or, or, and, and, "|", "|", "&", "&");
run_inner(s, n_args, shape, or, or, and, add, "|", "|", "&", "+");
run_inner(s, n_args, shape, or, or, and, xor, "|", "|", "&", "^");
run_inner(s, n_args, shape, or, or, and, or, "|", "|", "&", "|");
run_inner(s, n_args, shape, or, or, and, sub, "|", "|", "&", "-");
run_inner(s, n_args, shape, or, or, and, bus, "|", "|", "&", "←");
run_inner(s, n_args, shape, or, or, and, mul, "|", "|", "&", "*");
run_inner(s, n_args, shape, or, or, and, rsh, "|", "|", "&", ">>");
run_inner(s, n_args, shape, or, or, and, hsr, "|", "|", "&", "<<");
run_inner(s, n_args, shape, or, or, add, and, "|", "|", "+", "&");
run_inner(s, n_args, shape, or, or, add, add, "|", "|", "+", "+");
run_inner(s, n_args, shape, or, or, add, xor, "|", "|", "+", "^");
run_inner(s, n_args, shape, or, or, add, or, "|", "|", "+", "|");
run_inner(s, n_args, shape, or, or, add, sub, "|", "|", "+", "-");
run_inner(s, n_args, shape, or, or, add, bus, "|", "|", "+", "←");
run_inner(s, n_args, shape, or, or, add, mul, "|", "|", "+", "*");
run_inner(s, n_args, shape, or, or, add, rsh, "|", "|", "+", ">>");
run_inner(s, n_args, shape, or, or, add, hsr, "|", "|", "+", "<<");
run_inner(s, n_args, shape, or, or, xor, and, "|", "|", "^", "&");
run_inner(s, n_args, shape, or, or, xor, add, "|", "|", "^", "+");
run_inner(s, n_args, shape, or, or, xor, xor, "|", "|", "^", "^");
run_inner(s, n_args, shape, or, or, xor, or, "|", "|", "^", "|");
run_inner(s, n_args, shape, or, or, xor, sub, "|", "|", "^", "-");
run_inner(s, n_args, shape, or, or, xor, bus, "|", "|", "^", "←");
run_inner(s, n_args, shape, or, or, xor, mul, "|", "|", "^", "*");
run_inner(s, n_args, shape, or, or, xor, rsh, "|", "|", "^", ">>");
run_inner(s, n_args, shape, or, or, xor, hsr, "|", "|", "^", "<<");
run_inner(s, n_args, shape, or, or, or, and, "|", "|", "|", "&");
run_inner(s, n_args, shape, or, or, or, add, "|", "|", "|", "+");
run_inner(s, n_args, shape, or, or, or, xor, "|", "|", "|", "^");
run_inner(s, n_args, shape, or, or, or, or, "|", "|", "|", "|");
run_inner(s, n_args, shape, or, or, or, sub, "|", "|", "|", "-");
run_inner(s, n_args, shape, or, or, or, bus, "|", "|", "|", "←");
run_inner(s, n_args, shape, or, or, or, mul, "|", "|", "|", "*");
run_inner(s, n_args, shape, or, or, or, rsh, "|", "|", "|", ">>");
run_inner(s, n_args, shape, or, or, or, hsr, "|", "|", "|", "<<");
run_inner(s, n_args, shape, or, or, sub, and, "|", "|", "-", "&");
run_inner(s, n_args, shape, or, or, sub, add, "|", "|", "-", "+");
run_inner(s, n_args, shape, or, or, sub, xor, "|", "|", "-", "^");
run_inner(s, n_args, shape, or, or, sub, or, "|", "|", "-", "|");
run_inner(s, n_args, shape, or, or, sub, sub, "|", "|", "-", "-");
run_inner(s, n_args, shape, or, or, sub, bus, "|", "|", "-", "←");
run_inner(s, n_args, shape, or, or, sub, mul, "|", "|", "-", "*");
run_inner(s, n_args, shape, or, or, sub, rsh, "|", "|", "-", ">>");
run_inner(s, n_args, shape, or, or, sub, hsr, "|", "|", "-", "<<");
run_inner(s, n_args, shape, or, or, bus, and, "|", "|", "←", "&");
run_inner(s, n_args, shape, or, or, bus, add, "|", "|", "←", "+");
run_inner(s, n_args, shape, or, or, bus, xor, "|", "|", "←", "^");
run_inner(s, n_args, shape, or, or, bus, or, "|", "|", "←", "|");
run_inner(s, n_args, shape, or, or, bus, sub, "|", "|", "←", "-");
run_inner(s, n_args, shape, or, or, bus, bus, "|", "|", "←", "←");
run_inner(s, n_args, shape, or, or, bus, mul, "|", "|", "←", "*");
run_inner(s, n_args, shape, or, or, bus, rsh, "|", "|", "←", ">>");
run_inner(s, n_args, shape, or, or, bus, hsr, "|", "|", "←", "<<");
run_inner(s, n_args, shape, or, or, mul, and, "|", "|", "*", "&");
run_inner(s, n_args, shape, or, or, mul, add, "|", "|", "*", "+");
run_inner(s, n_args, shape, or, or, mul, xor, "|", "|", "*", "^");
run_inner(s, n_args, shape, or, or, mul, or, "|", "|", "*", "|");
run_inner(s, n_args, shape, or, or, mul, sub, "|", "|", "*", "-");
run_inner(s, n_args, shape, or, or, mul, bus, "|", "|", "*", "←");
run_inner(s, n_args, shape, or, or, mul, mul, "|", "|", "*", "*");
run_inner(s, n_args, shape, or, or, mul, rsh, "|", "|", "*", ">>");
run_inner(s, n_args, shape, or, or, mul, hsr, "|", "|", "*", "<<");
run_inner(s, n_args, shape, or, or, rsh, and, "|", "|", ">>", "&");
run_inner(s, n_args, shape, or, or, rsh, add, "|", "|", ">>", "+");
run_inner(s, n_args, shape, or, or, rsh, xor, "|", "|", ">>", "^");
run_inner(s, n_args, shape, or, or, rsh, or, "|", "|", ">>", "|");
run_inner(s, n_args, shape, or, or, rsh, sub, "|", "|", ">>", "-");
run_inner(s, n_args, shape, or, or, rsh, bus, "|", "|", ">>", "←");
run_inner(s, n_args, shape, or, or, rsh, mul, "|", "|", ">>", "*");
run_inner(s, n_args, shape, or, or, rsh, rsh, "|", "|", ">>", ">>");
run_inner(s, n_args, shape, or, or, rsh, hsr, "|", "|", ">>", "<<");
run_inner(s, n_args, shape, or, or, hsr, and, "|", "|", "<<", "&");
run_inner(s, n_args, shape, or, or, hsr, add, "|", "|", "<<", "+");
run_inner(s, n_args, shape, or, or, hsr, xor, "|", "|", "<<", "^");
run_inner(s, n_args, shape, or, or, hsr, or, "|", "|", "<<", "|");
run_inner(s, n_args, shape, or, or, hsr, sub, "|", "|", "<<", "-");
run_inner(s, n_args, shape, or, or, hsr, bus, "|", "|", "<<", "←");
run_inner(s, n_args, shape, or, or, hsr, mul, "|", "|", "<<", "*");
run_inner(s, n_args, shape, or, or, hsr, rsh, "|", "|", "<<", ">>");
run_inner(s, n_args, shape, or, or, hsr, hsr, "|", "|", "<<", "<<");
run_inner(s, n_args, shape, or, sub, and, and, "|", "-", "&", "&");
run_inner(s, n_args, shape, or, sub, and, add, "|", "-", "&", "+");
run_inner(s, n_args, shape, or, sub, and, xor, "|", "-", "&", "^");
run_inner(s, n_args, shape, or, sub, and, or, "|", "-", "&", "|");
run_inner(s, n_args, shape, or, sub, and, sub, "|", "-", "&", "-");
run_inner(s, n_args, shape, or, sub, and, bus, "|", "-", "&", "←");
run_inner(s, n_args, shape, or, sub, and, mul, "|", "-", "&", "*");
run_inner(s, n_args, shape, or, sub, and, rsh, "|", "-", "&", ">>");
run_inner(s, n_args, shape, or, sub, and, hsr, "|", "-", "&", "<<");
run_inner(s, n_args, shape, or, sub, add, and, "|", "-", "+", "&");
run_inner(s, n_args, shape, or, sub, add, add, "|", "-", "+", "+");
run_inner(s, n_args, shape, or, sub, add, xor, "|", "-", "+", "^");
run_inner(s, n_args, shape, or, sub, add, or, "|", "-", "+", "|");
run_inner(s, n_args, shape, or, sub, add, sub, "|", "-", "+", "-");
run_inner(s, n_args, shape, or, sub, add, bus, "|", "-", "+", "←");
run_inner(s, n_args, shape, or, sub, add, mul, "|", "-", "+", "*");
run_inner(s, n_args, shape, or, sub, add, rsh, "|", "-", "+", ">>");
run_inner(s, n_args, shape, or, sub, add, hsr, "|", "-", "+", "<<");
run_inner(s, n_args, shape, or, sub, xor, and, "|", "-", "^", "&");
run_inner(s, n_args, shape, or, sub, xor, add, "|", "-", "^", "+");
run_inner(s, n_args, shape, or, sub, xor, xor, "|", "-", "^", "^");
run_inner(s, n_args, shape, or, sub, xor, or, "|", "-", "^", "|");
run_inner(s, n_args, shape, or, sub, xor, sub, "|", "-", "^", "-");
run_inner(s, n_args, shape, or, sub, xor, bus, "|", "-", "^", "←");
run_inner(s, n_args, shape, or, sub, xor, mul, "|", "-", "^", "*");
run_inner(s, n_args, shape, or, sub, xor, rsh, "|", "-", "^", ">>");
run_inner(s, n_args, shape, or, sub, xor, hsr, "|", "-", "^", "<<");
run_inner(s, n_args, shape, or, sub, or, and, "|", "-", "|", "&");
run_inner(s, n_args, shape, or, sub, or, add, "|", "-", "|", "+");
run_inner(s, n_args, shape, or, sub, or, xor, "|", "-", "|", "^");
run_inner(s, n_args, shape, or, sub, or, or, "|", "-", "|", "|");
run_inner(s, n_args, shape, or, sub, or, sub, "|", "-", "|", "-");
run_inner(s, n_args, shape, or, sub, or, bus, "|", "-", "|", "←");
run_inner(s, n_args, shape, or, sub, or, mul, "|", "-", "|", "*");
run_inner(s, n_args, shape, or, sub, or, rsh, "|", "-", "|", ">>");
run_inner(s, n_args, shape, or, sub, or, hsr, "|", "-", "|", "<<");
run_inner(s, n_args, shape, or, sub, sub, and, "|", "-", "-", "&");
run_inner(s, n_args, shape, or, sub, sub, add, "|", "-", "-", "+");
run_inner(s, n_args, shape, or, sub, sub, xor, "|", "-", "-", "^");
run_inner(s, n_args, shape, or, sub, sub, or, "|", "-", "-", "|");
run_inner(s, n_args, shape, or, sub, sub, sub, "|", "-", "-", "-");
run_inner(s, n_args, shape, or, sub, sub, bus, "|", "-", "-", "←");
run_inner(s, n_args, shape, or, sub, sub, mul, "|", "-", "-", "*");
run_inner(s, n_args, shape, or, sub, sub, rsh, "|", "-", "-", ">>");
run_inner(s, n_args, shape, or, sub, sub, hsr, "|", "-", "-", "<<");
run_inner(s, n_args, shape, or, sub, bus, and, "|", "-", "←", "&");
run_inner(s, n_args, shape, or, sub, bus, add, "|", "-", "←", "+");
run_inner(s, n_args, shape, or, sub, bus, xor, "|", "-", "←", "^");
run_inner(s, n_args, shape, or, sub, bus, or, "|", "-", "←", "|");
run_inner(s, n_args, shape, or, sub, bus, sub, "|", "-", "←", "-");
run_inner(s, n_args, shape, or, sub, bus, bus, "|", "-", "←", "←");
run_inner(s, n_args, shape, or, sub, bus, mul, "|", "-", "←", "*");
run_inner(s, n_args, shape, or, sub, bus, rsh, "|", "-", "←", ">>");
run_inner(s, n_args, shape, or, sub, bus, hsr, "|", "-", "←", "<<");
run_inner(s, n_args, shape, or, sub, mul, and, "|", "-", "*", "&");
run_inner(s, n_args, shape, or, sub, mul, add, "|", "-", "*", "+");
run_inner(s, n_args, shape, or, sub, mul, xor, "|", "-", "*", "^");
run_inner(s, n_args, shape, or, sub, mul, or, "|", "-", "*", "|");
run_inner(s, n_args, shape, or, sub, mul, sub, "|", "-", "*", "-");
run_inner(s, n_args, shape, or, sub, mul, bus, "|", "-", "*", "←");
run_inner(s, n_args, shape, or, sub, mul, mul, "|", "-", "*", "*");
run_inner(s, n_args, shape, or, sub, mul, rsh, "|", "-", "*", ">>");
run_inner(s, n_args, shape, or, sub, mul, hsr, "|", "-", "*", "<<");
run_inner(s, n_args, shape, or, sub, rsh, and, "|", "-", ">>", "&");
run_inner(s, n_args, shape, or, sub, rsh, add, "|", "-", ">>", "+");
run_inner(s, n_args, shape, or, sub, rsh, xor, "|", "-", ">>", "^");
run_inner(s, n_args, shape, or, sub, rsh, or, "|", "-", ">>", "|");
run_inner(s, n_args, shape, or, sub, rsh, sub, "|", "-", ">>", "-");
run_inner(s, n_args, shape, or, sub, rsh, bus, "|", "-", ">>", "←");
run_inner(s, n_args, shape, or, sub, rsh, mul, "|", "-", ">>", "*");
run_inner(s, n_args, shape, or, sub, rsh, rsh, "|", "-", ">>", ">>");
run_inner(s, n_args, shape, or, sub, rsh, hsr, "|", "-", ">>", "<<");
run_inner(s, n_args, shape, or, sub, hsr, and, "|", "-", "<<", "&");
run_inner(s, n_args, shape, or, sub, hsr, add, "|", "-", "<<", "+");
run_inner(s, n_args, shape, or, sub, hsr, xor, "|", "-", "<<", "^");
run_inner(s, n_args, shape, or, sub, hsr, or, "|", "-", "<<", "|");
run_inner(s, n_args, shape, or, sub, hsr, sub, "|", "-", "<<", "-");
run_inner(s, n_args, shape, or, sub, hsr, bus, "|", "-", "<<", "←");
run_inner(s, n_args, shape, or, sub, hsr, mul, "|", "-", "<<", "*");
run_inner(s, n_args, shape, or, sub, hsr, rsh, "|", "-", "<<", ">>");
run_inner(s, n_args, shape, or, sub, hsr, hsr, "|", "-", "<<", "<<");
run_inner(s, n_args, shape, or, bus, and, and, "|", "←", "&", "&");
run_inner(s, n_args, shape, or, bus, and, add, "|", "←", "&", "+");
run_inner(s, n_args, shape, or, bus, and, xor, "|", "←", "&", "^");
run_inner(s, n_args, shape, or, bus, and, or, "|", "←", "&", "|");
run_inner(s, n_args, shape, or, bus, and, sub, "|", "←", "&", "-");
run_inner(s, n_args, shape, or, bus, and, bus, "|", "←", "&", "←");
run_inner(s, n_args, shape, or, bus, and, mul, "|", "←", "&", "*");
run_inner(s, n_args, shape, or, bus, and, rsh, "|", "←", "&", ">>");
run_inner(s, n_args, shape, or, bus, and, hsr, "|", "←", "&", "<<");
run_inner(s, n_args, shape, or, bus, add, and, "|", "←", "+", "&");
run_inner(s, n_args, shape, or, bus, add, add, "|", "←", "+", "+");
run_inner(s, n_args, shape, or, bus, add, xor, "|", "←", "+", "^");
run_inner(s, n_args, shape, or, bus, add, or, "|", "←", "+", "|");
run_inner(s, n_args, shape, or, bus, add, sub, "|", "←", "+", "-");
run_inner(s, n_args, shape, or, bus, add, bus, "|", "←", "+", "←");
run_inner(s, n_args, shape, or, bus, add, mul, "|", "←", "+", "*");
run_inner(s, n_args, shape, or, bus, add, rsh, "|", "←", "+", ">>");
run_inner(s, n_args, shape, or, bus, add, hsr, "|", "←", "+", "<<");
run_inner(s, n_args, shape, or, bus, xor, and, "|", "←", "^", "&");
run_inner(s, n_args, shape, or, bus, xor, add, "|", "←", "^", "+");
run_inner(s, n_args, shape, or, bus, xor, xor, "|", "←", "^", "^");
run_inner(s, n_args, shape, or, bus, xor, or, "|", "←", "^", "|");
run_inner(s, n_args, shape, or, bus, xor, sub, "|", "←", "^", "-");
run_inner(s, n_args, shape, or, bus, xor, bus, "|", "←", "^", "←");
run_inner(s, n_args, shape, or, bus, xor, mul, "|", "←", "^", "*");
run_inner(s, n_args, shape, or, bus, xor, rsh, "|", "←", "^", ">>");
run_inner(s, n_args, shape, or, bus, xor, hsr, "|", "←", "^", "<<");
run_inner(s, n_args, shape, or, bus, or, and, "|", "←", "|", "&");
run_inner(s, n_args, shape, or, bus, or, add, "|", "←", "|", "+");
run_inner(s, n_args, shape, or, bus, or, xor, "|", "←", "|", "^");
run_inner(s, n_args, shape, or, bus, or, or, "|", "←", "|", "|");
run_inner(s, n_args, shape, or, bus, or, sub, "|", "←", "|", "-");
run_inner(s, n_args, shape, or, bus, or, bus, "|", "←", "|", "←");
run_inner(s, n_args, shape, or, bus, or, mul, "|", "←", "|", "*");
run_inner(s, n_args, shape, or, bus, or, rsh, "|", "←", "|", ">>");
run_inner(s, n_args, shape, or, bus, or, hsr, "|", "←", "|", "<<");
run_inner(s, n_args, shape, or, bus, sub, and, "|", "←", "-", "&");
run_inner(s, n_args, shape, or, bus, sub, add, "|", "←", "-", "+");
run_inner(s, n_args, shape, or, bus, sub, xor, "|", "←", "-", "^");
run_inner(s, n_args, shape, or, bus, sub, or, "|", "←", "-", "|");
run_inner(s, n_args, shape, or, bus, sub, sub, "|", "←", "-", "-");
run_inner(s, n_args, shape, or, bus, sub, bus, "|", "←", "-", "←");
run_inner(s, n_args, shape, or, bus, sub, mul, "|", "←", "-", "*");
run_inner(s, n_args, shape, or, bus, sub, rsh, "|", "←", "-", ">>");
run_inner(s, n_args, shape, or, bus, sub, hsr, "|", "←", "-", "<<");
run_inner(s, n_args, shape, or, bus, bus, and, "|", "←", "←", "&");
run_inner(s, n_args, shape, or, bus, bus, add, "|", "←", "←", "+");
run_inner(s, n_args, shape, or, bus, bus, xor, "|", "←", "←", "^");
run_inner(s, n_args, shape, or, bus, bus, or, "|", "←", "←", "|");
run_inner(s, n_args, shape, or, bus, bus, sub, "|", "←", "←", "-");
run_inner(s, n_args, shape, or, bus, bus, bus, "|", "←", "←", "←");
run_inner(s, n_args, shape, or, bus, bus, mul, "|", "←", "←", "*");
run_inner(s, n_args, shape, or, bus, bus, rsh, "|", "←", "←", ">>");
run_inner(s, n_args, shape, or, bus, bus, hsr, "|", "←", "←", "<<");
run_inner(s, n_args, shape, or, bus, mul, and, "|", "←", "*", "&");
run_inner(s, n_args, shape, or, bus, mul, add, "|", "←", "*", "+");
run_inner(s, n_args, shape, or, bus, mul, xor, "|", "←", "*", "^");
run_inner(s, n_args, shape, or, bus, mul, or, "|", "←", "*", "|");
run_inner(s, n_args, shape, or, bus, mul, sub, "|", "←", "*", "-");
run_inner(s, n_args, shape, or, bus, mul, bus, "|", "←", "*", "←");
run_inner(s, n_args, shape, or, bus, mul, mul, "|", "←", "*", "*");
run_inner(s, n_args, shape, or, bus, mul, rsh, "|", "←", "*", ">>");
run_inner(s, n_args, shape, or, bus, mul, hsr, "|", "←", "*", "<<");
run_inner(s, n_args, shape, or, bus, rsh, and, "|", "←", ">>", "&");
run_inner(s, n_args, shape, or, bus, rsh, add, "|", "←", ">>", "+");
run_inner(s, n_args, shape, or, bus, rsh, xor, "|", "←", ">>", "^");
run_inner(s, n_args, shape, or, bus, rsh, or, "|", "←", ">>", "|");
run_inner(s, n_args, shape, or, bus, rsh, sub, "|", "←", ">>", "-");
run_inner(s, n_args, shape, or, bus, rsh, bus, "|", "←", ">>", "←");
run_inner(s, n_args, shape, or, bus, rsh, mul, "|", "←", ">>", "*");
run_inner(s, n_args, shape, or, bus, rsh, rsh, "|", "←", ">>", ">>");
run_inner(s, n_args, shape, or, bus, rsh, hsr, "|", "←", ">>", "<<");
run_inner(s, n_args, shape, or, bus, hsr, and, "|", "←", "<<", "&");
run_inner(s, n_args, shape, or, bus, hsr, add, "|", "←", "<<", "+");
run_inner(s, n_args, shape, or, bus, hsr, xor, "|", "←", "<<", "^");
run_inner(s, n_args, shape, or, bus, hsr, or, "|", "←", "<<", "|");
run_inner(s, n_args, shape, or, bus, hsr, sub, "|", "←", "<<", "-");
run_inner(s, n_args, shape, or, bus, hsr, bus, "|", "←", "<<", "←");
run_inner(s, n_args, shape, or, bus, hsr, mul, "|", "←", "<<", "*");
run_inner(s, n_args, shape, or, bus, hsr, rsh, "|", "←", "<<", ">>");
run_inner(s, n_args, shape, or, bus, hsr, hsr, "|", "←", "<<", "<<");
run_inner(s, n_args, shape, or, mul, and, and, "|", "*", "&", "&");
run_inner(s, n_args, shape, or, mul, and, add, "|", "*", "&", "+");
run_inner(s, n_args, shape, or, mul, and, xor, "|", "*", "&", "^");
run_inner(s, n_args, shape, or, mul, and, or, "|", "*", "&", "|");
run_inner(s, n_args, shape, or, mul, and, sub, "|", "*", "&", "-");
run_inner(s, n_args, shape, or, mul, and, bus, "|", "*", "&", "←");
run_inner(s, n_args, shape, or, mul, and, mul, "|", "*", "&", "*");
run_inner(s, n_args, shape, or, mul, and, rsh, "|", "*", "&", ">>");
run_inner(s, n_args, shape, or, mul, and, hsr, "|", "*", "&", "<<");
run_inner(s, n_args, shape, or, mul, add, and, "|", "*", "+", "&");
run_inner(s, n_args, shape, or, mul, add, add, "|", "*", "+", "+");
run_inner(s, n_args, shape, or, mul, add, xor, "|", "*", "+", "^");
run_inner(s, n_args, shape, or, mul, add, or, "|", "*", "+", "|");
run_inner(s, n_args, shape, or, mul, add, sub, "|", "*", "+", "-");
run_inner(s, n_args, shape, or, mul, add, bus, "|", "*", "+", "←");
run_inner(s, n_args, shape, or, mul, add, mul, "|", "*", "+", "*");
run_inner(s, n_args, shape, or, mul, add, rsh, "|", "*", "+", ">>");
run_inner(s, n_args, shape, or, mul, add, hsr, "|", "*", "+", "<<");
run_inner(s, n_args, shape, or, mul, xor, and, "|", "*", "^", "&");
run_inner(s, n_args, shape, or, mul, xor, add, "|", "*", "^", "+");
run_inner(s, n_args, shape, or, mul, xor, xor, "|", "*", "^", "^");
run_inner(s, n_args, shape, or, mul, xor, or, "|", "*", "^", "|");
run_inner(s, n_args, shape, or, mul, xor, sub, "|", "*", "^", "-");
run_inner(s, n_args, shape, or, mul, xor, bus, "|", "*", "^", "←");
run_inner(s, n_args, shape, or, mul, xor, mul, "|", "*", "^", "*");
run_inner(s, n_args, shape, or, mul, xor, rsh, "|", "*", "^", ">>");
run_inner(s, n_args, shape, or, mul, xor, hsr, "|", "*", "^", "<<");
run_inner(s, n_args, shape, or, mul, or, and, "|", "*", "|", "&");
run_inner(s, n_args, shape, or, mul, or, add, "|", "*", "|", "+");
run_inner(s, n_args, shape, or, mul, or, xor, "|", "*", "|", "^");
run_inner(s, n_args, shape, or, mul, or, or, "|", "*", "|", "|");
run_inner(s, n_args, shape, or, mul, or, sub, "|", "*", "|", "-");
run_inner(s, n_args, shape, or, mul, or, bus, "|", "*", "|", "←");
run_inner(s, n_args, shape, or, mul, or, mul, "|", "*", "|", "*");
run_inner(s, n_args, shape, or, mul, or, rsh, "|", "*", "|", ">>");
run_inner(s, n_args, shape, or, mul, or, hsr, "|", "*", "|", "<<");
run_inner(s, n_args, shape, or, mul, sub, and, "|", "*", "-", "&");
run_inner(s, n_args, shape, or, mul, sub, add, "|", "*", "-", "+");
run_inner(s, n_args, shape, or, mul, sub, xor, "|", "*", "-", "^");
run_inner(s, n_args, shape, or, mul, sub, or, "|", "*", "-", "|");
run_inner(s, n_args, shape, or, mul, sub, sub, "|", "*", "-", "-");
run_inner(s, n_args, shape, or, mul, sub, bus, "|", "*", "-", "←");
run_inner(s, n_args, shape, or, mul, sub, mul, "|", "*", "-", "*");
run_inner(s, n_args, shape, or, mul, sub, rsh, "|", "*", "-", ">>");
run_inner(s, n_args, shape, or, mul, sub, hsr, "|", "*", "-", "<<");
run_inner(s, n_args, shape, or, mul, bus, and, "|", "*", "←", "&");
run_inner(s, n_args, shape, or, mul, bus, add, "|", "*", "←", "+");
run_inner(s, n_args, shape, or, mul, bus, xor, "|", "*", "←", "^");
run_inner(s, n_args, shape, or, mul, bus, or, "|", "*", "←", "|");
run_inner(s, n_args, shape, or, mul, bus, sub, "|", "*", "←", "-");
run_inner(s, n_args, shape, or, mul, bus, bus, "|", "*", "←", "←");
run_inner(s, n_args, shape, or, mul, bus, mul, "|", "*", "←", "*");
run_inner(s, n_args, shape, or, mul, bus, rsh, "|", "*", "←", ">>");
run_inner(s, n_args, shape, or, mul, bus, hsr, "|", "*", "←", "<<");
run_inner(s, n_args, shape, or, mul, mul, and, "|", "*", "*", "&");
run_inner(s, n_args, shape, or, mul, mul, add, "|", "*", "*", "+");
run_inner(s, n_args, shape, or, mul, mul, xor, "|", "*", "*", "^");
run_inner(s, n_args, shape, or, mul, mul, or, "|", "*", "*", "|");
run_inner(s, n_args, shape, or, mul, mul, sub, "|", "*", "*", "-");
run_inner(s, n_args, shape, or, mul, mul, bus, "|", "*", "*", "←");
run_inner(s, n_args, shape, or, mul, mul, mul, "|", "*", "*", "*");
run_inner(s, n_args, shape, or, mul, mul, rsh, "|", "*", "*", ">>");
run_inner(s, n_args, shape, or, mul, mul, hsr, "|", "*", "*", "<<");
run_inner(s, n_args, shape, or, mul, rsh, and, "|", "*", ">>", "&");
run_inner(s, n_args, shape, or, mul, rsh, add, "|", "*", ">>", "+");
run_inner(s, n_args, shape, or, mul, rsh, xor, "|", "*", ">>", "^");
run_inner(s, n_args, shape, or, mul, rsh, or, "|", "*", ">>", "|");
run_inner(s, n_args, shape, or, mul, rsh, sub, "|", "*", ">>", "-");
run_inner(s, n_args, shape, or, mul, rsh, bus, "|", "*", ">>", "←");
run_inner(s, n_args, shape, or, mul, rsh, mul, "|", "*", ">>", "*");
run_inner(s, n_args, shape, or, mul, rsh, rsh, "|", "*", ">>", ">>");
run_inner(s, n_args, shape, or, mul, rsh, hsr, "|", "*", ">>", "<<");
run_inner(s, n_args, shape, or, mul, hsr, and, "|", "*", "<<", "&");
run_inner(s, n_args, shape, or, mul, hsr, add, "|", "*", "<<", "+");
run_inner(s, n_args, shape, or, mul, hsr, xor, "|", "*", "<<", "^");
run_inner(s, n_args, shape, or, mul, hsr, or, "|", "*", "<<", "|");
run_inner(s, n_args, shape, or, mul, hsr, sub, "|", "*", "<<", "-");
run_inner(s, n_args, shape, or, mul, hsr, bus, "|", "*", "<<", "←");
run_inner(s, n_args, shape, or, mul, hsr, mul, "|", "*", "<<", "*");
run_inner(s, n_args, shape, or, mul, hsr, rsh, "|", "*", "<<", ">>");
run_inner(s, n_args, shape, or, mul, hsr, hsr, "|", "*", "<<", "<<");
run_inner(s, n_args, shape, or, rsh, and, and, "|", ">>", "&", "&");
run_inner(s, n_args, shape, or, rsh, and, add, "|", ">>", "&", "+");
run_inner(s, n_args, shape, or, rsh, and, xor, "|", ">>", "&", "^");
run_inner(s, n_args, shape, or, rsh, and, or, "|", ">>", "&", "|");
run_inner(s, n_args, shape, or, rsh, and, sub, "|", ">>", "&", "-");
run_inner(s, n_args, shape, or, rsh, and, bus, "|", ">>", "&", "←");
run_inner(s, n_args, shape, or, rsh, and, mul, "|", ">>", "&", "*");
run_inner(s, n_args, shape, or, rsh, and, rsh, "|", ">>", "&", ">>");
run_inner(s, n_args, shape, or, rsh, and, hsr, "|", ">>", "&", "<<");
run_inner(s, n_args, shape, or, rsh, add, and, "|", ">>", "+", "&");
run_inner(s, n_args, shape, or, rsh, add, add, "|", ">>", "+", "+");
run_inner(s, n_args, shape, or, rsh, add, xor, "|", ">>", "+", "^");
run_inner(s, n_args, shape, or, rsh, add, or, "|", ">>", "+", "|");
run_inner(s, n_args, shape, or, rsh, add, sub, "|", ">>", "+", "-");
run_inner(s, n_args, shape, or, rsh, add, bus, "|", ">>", "+", "←");
run_inner(s, n_args, shape, or, rsh, add, mul, "|", ">>", "+", "*");
run_inner(s, n_args, shape, or, rsh, add, rsh, "|", ">>", "+", ">>");
run_inner(s, n_args, shape, or, rsh, add, hsr, "|", ">>", "+", "<<");
run_inner(s, n_args, shape, or, rsh, xor, and, "|", ">>", "^", "&");
run_inner(s, n_args, shape, or, rsh, xor, add, "|", ">>", "^", "+");
run_inner(s, n_args, shape, or, rsh, xor, xor, "|", ">>", "^", "^");
run_inner(s, n_args, shape, or, rsh, xor, or, "|", ">>", "^", "|");
run_inner(s, n_args, shape, or, rsh, xor, sub, "|", ">>", "^", "-");
run_inner(s, n_args, shape, or, rsh, xor, bus, "|", ">>", "^", "←");
run_inner(s, n_args, shape, or, rsh, xor, mul, "|", ">>", "^", "*");
run_inner(s, n_args, shape, or, rsh, xor, rsh, "|", ">>", "^", ">>");
run_inner(s, n_args, shape, or, rsh, xor, hsr, "|", ">>", "^", "<<");
run_inner(s, n_args, shape, or, rsh, or, and, "|", ">>", "|", "&");
run_inner(s, n_args, shape, or, rsh, or, add, "|", ">>", "|", "+");
run_inner(s, n_args, shape, or, rsh, or, xor, "|", ">>", "|", "^");
run_inner(s, n_args, shape, or, rsh, or, or, "|", ">>", "|", "|");
run_inner(s, n_args, shape, or, rsh, or, sub, "|", ">>", "|", "-");
run_inner(s, n_args, shape, or, rsh, or, bus, "|", ">>", "|", "←");
run_inner(s, n_args, shape, or, rsh, or, mul, "|", ">>", "|", "*");
run_inner(s, n_args, shape, or, rsh, or, rsh, "|", ">>", "|", ">>");
run_inner(s, n_args, shape, or, rsh, or, hsr, "|", ">>", "|", "<<");
run_inner(s, n_args, shape, or, rsh, sub, and, "|", ">>", "-", "&");
run_inner(s, n_args, shape, or, rsh, sub, add, "|", ">>", "-", "+");
run_inner(s, n_args, shape, or, rsh, sub, xor, "|", ">>", "-", "^");
run_inner(s, n_args, shape, or, rsh, sub, or, "|", ">>", "-", "|");
run_inner(s, n_args, shape, or, rsh, sub, sub, "|", ">>", "-", "-");
run_inner(s, n_args, shape, or, rsh, sub, bus, "|", ">>", "-", "←");
run_inner(s, n_args, shape, or, rsh, sub, mul, "|", ">>", "-", "*");
run_inner(s, n_args, shape, or, rsh, sub, rsh, "|", ">>", "-", ">>");
run_inner(s, n_args, shape, or, rsh, sub, hsr, "|", ">>", "-", "<<");
run_inner(s, n_args, shape, or, rsh, bus, and, "|", ">>", "←", "&");
run_inner(s, n_args, shape, or, rsh, bus, add, "|", ">>", "←", "+");
run_inner(s, n_args, shape, or, rsh, bus, xor, "|", ">>", "←", "^");
run_inner(s, n_args, shape, or, rsh, bus, or, "|", ">>", "←", "|");
run_inner(s, n_args, shape, or, rsh, bus, sub, "|", ">>", "←", "-");
run_inner(s, n_args, shape, or, rsh, bus, bus, "|", ">>", "←", "←");
run_inner(s, n_args, shape, or, rsh, bus, mul, "|", ">>", "←", "*");
run_inner(s, n_args, shape, or, rsh, bus, rsh, "|", ">>", "←", ">>");
run_inner(s, n_args, shape, or, rsh, bus, hsr, "|", ">>", "←", "<<");
run_inner(s, n_args, shape, or, rsh, mul, and, "|", ">>", "*", "&");
run_inner(s, n_args, shape, or, rsh, mul, add, "|", ">>", "*", "+");
run_inner(s, n_args, shape, or, rsh, mul, xor, "|", ">>", "*", "^");
run_inner(s, n_args, shape, or, rsh, mul, or, "|", ">>", "*", "|");
run_inner(s, n_args, shape, or, rsh, mul, sub, "|", ">>", "*", "-");
run_inner(s, n_args, shape, or, rsh, mul, bus, "|", ">>", "*", "←");
run_inner(s, n_args, shape, or, rsh, mul, mul, "|", ">>", "*", "*");
run_inner(s, n_args, shape, or, rsh, mul, rsh, "|", ">>", "*", ">>");
run_inner(s, n_args, shape, or, rsh, mul, hsr, "|", ">>", "*", "<<");
run_inner(s, n_args, shape, or, rsh, rsh, and, "|", ">>", ">>", "&");
run_inner(s, n_args, shape, or, rsh, rsh, add, "|", ">>", ">>", "+");
run_inner(s, n_args, shape, or, rsh, rsh, xor, "|", ">>", ">>", "^");
run_inner(s, n_args, shape, or, rsh, rsh, or, "|", ">>", ">>", "|");
run_inner(s, n_args, shape, or, rsh, rsh, sub, "|", ">>", ">>", "-");
run_inner(s, n_args, shape, or, rsh, rsh, bus, "|", ">>", ">>", "←");
run_inner(s, n_args, shape, or, rsh, rsh, mul, "|", ">>", ">>", "*");
run_inner(s, n_args, shape, or, rsh, rsh, rsh, "|", ">>", ">>", ">>");
run_inner(s, n_args, shape, or, rsh, rsh, hsr, "|", ">>", ">>", "<<");
run_inner(s, n_args, shape, or, rsh, hsr, and, "|", ">>", "<<", "&");
run_inner(s, n_args, shape, or, rsh, hsr, add, "|", ">>", "<<", "+");
run_inner(s, n_args, shape, or, rsh, hsr, xor, "|", ">>", "<<", "^");
run_inner(s, n_args, shape, or, rsh, hsr, or, "|", ">>", "<<", "|");
run_inner(s, n_args, shape, or, rsh, hsr, sub, "|", ">>", "<<", "-");
run_inner(s, n_args, shape, or, rsh, hsr, bus, "|", ">>", "<<", "←");
run_inner(s, n_args, shape, or, rsh, hsr, mul, "|", ">>", "<<", "*");
run_inner(s, n_args, shape, or, rsh, hsr, rsh, "|", ">>", "<<", ">>");
run_inner(s, n_args, shape, or, rsh, hsr, hsr, "|", ">>", "<<", "<<");
run_inner(s, n_args, shape, or, hsr, and, and, "|", "<<", "&", "&");
run_inner(s, n_args, shape, or, hsr, and, add, "|", "<<", "&", "+");
run_inner(s, n_args, shape, or, hsr, and, xor, "|", "<<", "&", "^");
run_inner(s, n_args, shape, or, hsr, and, or, "|", "<<", "&", "|");
run_inner(s, n_args, shape, or, hsr, and, sub, "|", "<<", "&", "-");
run_inner(s, n_args, shape, or, hsr, and, bus, "|", "<<", "&", "←");
run_inner(s, n_args, shape, or, hsr, and, mul, "|", "<<", "&", "*");
run_inner(s, n_args, shape, or, hsr, and, rsh, "|", "<<", "&", ">>");
run_inner(s, n_args, shape, or, hsr, and, hsr, "|", "<<", "&", "<<");
run_inner(s, n_args, shape, or, hsr, add, and, "|", "<<", "+", "&");
run_inner(s, n_args, shape, or, hsr, add, add, "|", "<<", "+", "+");
run_inner(s, n_args, shape, or, hsr, add, xor, "|", "<<", "+", "^");
run_inner(s, n_args, shape, or, hsr, add, or, "|", "<<", "+", "|");
run_inner(s, n_args, shape, or, hsr, add, sub, "|", "<<", "+", "-");
run_inner(s, n_args, shape, or, hsr, add, bus, "|", "<<", "+", "←");
run_inner(s, n_args, shape, or, hsr, add, mul, "|", "<<", "+", "*");
run_inner(s, n_args, shape, or, hsr, add, rsh, "|", "<<", "+", ">>");
run_inner(s, n_args, shape, or, hsr, add, hsr, "|", "<<", "+", "<<");
run_inner(s, n_args, shape, or, hsr, xor, and, "|", "<<", "^", "&");
run_inner(s, n_args, shape, or, hsr, xor, add, "|", "<<", "^", "+");
run_inner(s, n_args, shape, or, hsr, xor, xor, "|", "<<", "^", "^");
run_inner(s, n_args, shape, or, hsr, xor, or, "|", "<<", "^", "|");
run_inner(s, n_args, shape, or, hsr, xor, sub, "|", "<<", "^", "-");
run_inner(s, n_args, shape, or, hsr, xor, bus, "|", "<<", "^", "←");
run_inner(s, n_args, shape, or, hsr, xor, mul, "|", "<<", "^", "*");
run_inner(s, n_args, shape, or, hsr, xor, rsh, "|", "<<", "^", ">>");
run_inner(s, n_args, shape, or, hsr, xor, hsr, "|", "<<", "^", "<<");
run_inner(s, n_args, shape, or, hsr, or, and, "|", "<<", "|", "&");
run_inner(s, n_args, shape, or, hsr, or, add, "|", "<<", "|", "+");
run_inner(s, n_args, shape, or, hsr, or, xor, "|", "<<", "|", "^");
run_inner(s, n_args, shape, or, hsr, or, or, "|", "<<", "|", "|");
run_inner(s, n_args, shape, or, hsr, or, sub, "|", "<<", "|", "-");
run_inner(s, n_args, shape, or, hsr, or, bus, "|", "<<", "|", "←");
run_inner(s, n_args, shape, or, hsr, or, mul, "|", "<<", "|", "*");
run_inner(s, n_args, shape, or, hsr, or, rsh, "|", "<<", "|", ">>");
run_inner(s, n_args, shape, or, hsr, or, hsr, "|", "<<", "|", "<<");
run_inner(s, n_args, shape, or, hsr, sub, and, "|", "<<", "-", "&");
run_inner(s, n_args, shape, or, hsr, sub, add, "|", "<<", "-", "+");
run_inner(s, n_args, shape, or, hsr, sub, xor, "|", "<<", "-", "^");
run_inner(s, n_args, shape, or, hsr, sub, or, "|", "<<", "-", "|");
run_inner(s, n_args, shape, or, hsr, sub, sub, "|", "<<", "-", "-");
run_inner(s, n_args, shape, or, hsr, sub, bus, "|", "<<", "-", "←");
run_inner(s, n_args, shape, or, hsr, sub, mul, "|", "<<", "-", "*");
run_inner(s, n_args, shape, or, hsr, sub, rsh, "|", "<<", "-", ">>");
run_inner(s, n_args, shape, or, hsr, sub, hsr, "|", "<<", "-", "<<");
run_inner(s, n_args, shape, or, hsr, bus, and, "|", "<<", "←", "&");
run_inner(s, n_args, shape, or, hsr, bus, add, "|", "<<", "←", "+");
run_inner(s, n_args, shape, or, hsr, bus, xor, "|", "<<", "←", "^");
run_inner(s, n_args, shape, or, hsr, bus, or, "|", "<<", "←", "|");
run_inner(s, n_args, shape, or, hsr, bus, sub, "|", "<<", "←", "-");
run_inner(s, n_args, shape, or, hsr, bus, bus, "|", "<<", "←", "←");
run_inner(s, n_args, shape, or, hsr, bus, mul, "|", "<<", "←", "*");
run_inner(s, n_args, shape, or, hsr, bus, rsh, "|", "<<", "←", ">>");
run_inner(s, n_args, shape, or, hsr, bus, hsr, "|", "<<", "←", "<<");
run_inner(s, n_args, shape, or, hsr, mul, and, "|", "<<", "*", "&");
run_inner(s, n_args, shape, or, hsr, mul, add, "|", "<<", "*", "+");
run_inner(s, n_args, shape, or, hsr, mul, xor, "|", "<<", "*", "^");
run_inner(s, n_args, shape, or, hsr, mul, or, "|", "<<", "*", "|");
run_inner(s, n_args, shape, or, hsr, mul, sub, "|", "<<", "*", "-");
run_inner(s, n_args, shape, or, hsr, mul, bus, "|", "<<", "*", "←");
run_inner(s, n_args, shape, or, hsr, mul, mul, "|", "<<", "*", "*");
run_inner(s, n_args, shape, or, hsr, mul, rsh, "|", "<<", "*", ">>");
run_inner(s, n_args, shape, or, hsr, mul, hsr, "|", "<<", "*", "<<");
run_inner(s, n_args, shape, or, hsr, rsh, and, "|", "<<", ">>", "&");
run_inner(s, n_args, shape, or, hsr, rsh, add, "|", "<<", ">>", "+");
run_inner(s, n_args, shape, or, hsr, rsh, xor, "|", "<<", ">>", "^");
run_inner(s, n_args, shape, or, hsr, rsh, or, "|", "<<", ">>", "|");
run_inner(s, n_args, shape, or, hsr, rsh, sub, "|", "<<", ">>", "-");
run_inner(s, n_args, shape, or, hsr, rsh, bus, "|", "<<", ">>", "←");
run_inner(s, n_args, shape, or, hsr, rsh, mul, "|", "<<", ">>", "*");
run_inner(s, n_args, shape, or, hsr, rsh, rsh, "|", "<<", ">>", ">>");
run_inner(s, n_args, shape, or, hsr, rsh, hsr, "|", "<<", ">>", "<<");
run_inner(s, n_args, shape, or, hsr, hsr, and, "|", "<<", "<<", "&");
run_inner(s, n_args, shape, or, hsr, hsr, add, "|", "<<", "<<", "+");
run_inner(s, n_args, shape, or, hsr, hsr, xor, "|", "<<", "<<", "^");
run_inner(s, n_args, shape, or, hsr, hsr, or, "|", "<<", "<<", "|");
run_inner(s, n_args, shape, or, hsr, hsr, sub, "|", "<<", "<<", "-");
run_inner(s, n_args, shape, or, hsr, hsr, bus, "|", "<<", "<<", "←");
run_inner(s, n_args, shape, or, hsr, hsr, mul, "|", "<<", "<<", "*");
run_inner(s, n_args, shape, or, hsr, hsr, rsh, "|", "<<", "<<", ">>");
run_inner(s, n_args, shape, or, hsr, hsr, hsr, "|", "<<", "<<", "<<");
}));
threads.push(thread::spawn(move || {
run_inner(s, n_args, shape, sub, and, and, and, "-", "&", "&", "&");
run_inner(s, n_args, shape, sub, and, and, add, "-", "&", "&", "+");
run_inner(s, n_args, shape, sub, and, and, xor, "-", "&", "&", "^");
run_inner(s, n_args, shape, sub, and, and, or, "-", "&", "&", "|");
run_inner(s, n_args, shape, sub, and, and, sub, "-", "&", "&", "-");
run_inner(s, n_args, shape, sub, and, and, bus, "-", "&", "&", "←");
run_inner(s, n_args, shape, sub, and, and, mul, "-", "&", "&", "*");
run_inner(s, n_args, shape, sub, and, and, rsh, "-", "&", "&", ">>");
run_inner(s, n_args, shape, sub, and, and, hsr, "-", "&", "&", "<<");
run_inner(s, n_args, shape, sub, and, add, and, "-", "&", "+", "&");
run_inner(s, n_args, shape, sub, and, add, add, "-", "&", "+", "+");
run_inner(s, n_args, shape, sub, and, add, xor, "-", "&", "+", "^");
run_inner(s, n_args, shape, sub, and, add, or, "-", "&", "+", "|");
run_inner(s, n_args, shape, sub, and, add, sub, "-", "&", "+", "-");
run_inner(s, n_args, shape, sub, and, add, bus, "-", "&", "+", "←");
run_inner(s, n_args, shape, sub, and, add, mul, "-", "&", "+", "*");
run_inner(s, n_args, shape, sub, and, add, rsh, "-", "&", "+", ">>");
run_inner(s, n_args, shape, sub, and, add, hsr, "-", "&", "+", "<<");
run_inner(s, n_args, shape, sub, and, xor, and, "-", "&", "^", "&");
run_inner(s, n_args, shape, sub, and, xor, add, "-", "&", "^", "+");
run_inner(s, n_args, shape, sub, and, xor, xor, "-", "&", "^", "^");
run_inner(s, n_args, shape, sub, and, xor, or, "-", "&", "^", "|");
run_inner(s, n_args, shape, sub, and, xor, sub, "-", "&", "^", "-");
run_inner(s, n_args, shape, sub, and, xor, bus, "-", "&", "^", "←");
run_inner(s, n_args, shape, sub, and, xor, mul, "-", "&", "^", "*");
run_inner(s, n_args, shape, sub, and, xor, rsh, "-", "&", "^", ">>");
run_inner(s, n_args, shape, sub, and, xor, hsr, "-", "&", "^", "<<");
run_inner(s, n_args, shape, sub, and, or, and, "-", "&", "|", "&");
run_inner(s, n_args, shape, sub, and, or, add, "-", "&", "|", "+");
run_inner(s, n_args, shape, sub, and, or, xor, "-", "&", "|", "^");
run_inner(s, n_args, shape, sub, and, or, or, "-", "&", "|", "|");
run_inner(s, n_args, shape, sub, and, or, sub, "-", "&", "|", "-");
run_inner(s, n_args, shape, sub, and, or, bus, "-", "&", "|", "←");
run_inner(s, n_args, shape, sub, and, or, mul, "-", "&", "|", "*");
run_inner(s, n_args, shape, sub, and, or, rsh, "-", "&", "|", ">>");
run_inner(s, n_args, shape, sub, and, or, hsr, "-", "&", "|", "<<");
run_inner(s, n_args, shape, sub, and, sub, and, "-", "&", "-", "&");
run_inner(s, n_args, shape, sub, and, sub, add, "-", "&", "-", "+");
run_inner(s, n_args, shape, sub, and, sub, xor, "-", "&", "-", "^");
run_inner(s, n_args, shape, sub, and, sub, or, "-", "&", "-", "|");
run_inner(s, n_args, shape, sub, and, sub, sub, "-", "&", "-", "-");
run_inner(s, n_args, shape, sub, and, sub, bus, "-", "&", "-", "←");
run_inner(s, n_args, shape, sub, and, sub, mul, "-", "&", "-", "*");
run_inner(s, n_args, shape, sub, and, sub, rsh, "-", "&", "-", ">>");
run_inner(s, n_args, shape, sub, and, sub, hsr, "-", "&", "-", "<<");
run_inner(s, n_args, shape, sub, and, bus, and, "-", "&", "←", "&");
run_inner(s, n_args, shape, sub, and, bus, add, "-", "&", "←", "+");
run_inner(s, n_args, shape, sub, and, bus, xor, "-", "&", "←", "^");
run_inner(s, n_args, shape, sub, and, bus, or, "-", "&", "←", "|");
run_inner(s, n_args, shape, sub, and, bus, sub, "-", "&", "←", "-");
run_inner(s, n_args, shape, sub, and, bus, bus, "-", "&", "←", "←");
run_inner(s, n_args, shape, sub, and, bus, mul, "-", "&", "←", "*");
run_inner(s, n_args, shape, sub, and, bus, rsh, "-", "&", "←", ">>");
run_inner(s, n_args, shape, sub, and, bus, hsr, "-", "&", "←", "<<");
run_inner(s, n_args, shape, sub, and, mul, and, "-", "&", "*", "&");
run_inner(s, n_args, shape, sub, and, mul, add, "-", "&", "*", "+");
run_inner(s, n_args, shape, sub, and, mul, xor, "-", "&", "*", "^");
run_inner(s, n_args, shape, sub, and, mul, or, "-", "&", "*", "|");
run_inner(s, n_args, shape, sub, and, mul, sub, "-", "&", "*", "-");
run_inner(s, n_args, shape, sub, and, mul, bus, "-", "&", "*", "←");
run_inner(s, n_args, shape, sub, and, mul, mul, "-", "&", "*", "*");
run_inner(s, n_args, shape, sub, and, mul, rsh, "-", "&", "*", ">>");
run_inner(s, n_args, shape, sub, and, mul, hsr, "-", "&", "*", "<<");
run_inner(s, n_args, shape, sub, and, rsh, and, "-", "&", ">>", "&");
run_inner(s, n_args, shape, sub, and, rsh, add, "-", "&", ">>", "+");
run_inner(s, n_args, shape, sub, and, rsh, xor, "-", "&", ">>", "^");
run_inner(s, n_args, shape, sub, and, rsh, or, "-", "&", ">>", "|");
run_inner(s, n_args, shape, sub, and, rsh, sub, "-", "&", ">>", "-");
run_inner(s, n_args, shape, sub, and, rsh, bus, "-", "&", ">>", "←");
run_inner(s, n_args, shape, sub, and, rsh, mul, "-", "&", ">>", "*");
run_inner(s, n_args, shape, sub, and, rsh, rsh, "-", "&", ">>", ">>");
run_inner(s, n_args, shape, sub, and, rsh, hsr, "-", "&", ">>", "<<");
run_inner(s, n_args, shape, sub, and, hsr, and, "-", "&", "<<", "&");
run_inner(s, n_args, shape, sub, and, hsr, add, "-", "&", "<<", "+");
run_inner(s, n_args, shape, sub, and, hsr, xor, "-", "&", "<<", "^");
run_inner(s, n_args, shape, sub, and, hsr, or, "-", "&", "<<", "|");
run_inner(s, n_args, shape, sub, and, hsr, sub, "-", "&", "<<", "-");
run_inner(s, n_args, shape, sub, and, hsr, bus, "-", "&", "<<", "←");
run_inner(s, n_args, shape, sub, and, hsr, mul, "-", "&", "<<", "*");
run_inner(s, n_args, shape, sub, and, hsr, rsh, "-", "&", "<<", ">>");
run_inner(s, n_args, shape, sub, and, hsr, hsr, "-", "&", "<<", "<<");
run_inner(s, n_args, shape, sub, add, and, and, "-", "+", "&", "&");
run_inner(s, n_args, shape, sub, add, and, add, "-", "+", "&", "+");
run_inner(s, n_args, shape, sub, add, and, xor, "-", "+", "&", "^");
run_inner(s, n_args, shape, sub, add, and, or, "-", "+", "&", "|");
run_inner(s, n_args, shape, sub, add, and, sub, "-", "+", "&", "-");
run_inner(s, n_args, shape, sub, add, and, bus, "-", "+", "&", "←");
run_inner(s, n_args, shape, sub, add, and, mul, "-", "+", "&", "*");
run_inner(s, n_args, shape, sub, add, and, rsh, "-", "+", "&", ">>");
run_inner(s, n_args, shape, sub, add, and, hsr, "-", "+", "&", "<<");
run_inner(s, n_args, shape, sub, add, add, and, "-", "+", "+", "&");
run_inner(s, n_args, shape, sub, add, add, add, "-", "+", "+", "+");
run_inner(s, n_args, shape, sub, add, add, xor, "-", "+", "+", "^");
run_inner(s, n_args, shape, sub, add, add, or, "-", "+", "+", "|");
run_inner(s, n_args, shape, sub, add, add, sub, "-", "+", "+", "-");
run_inner(s, n_args, shape, sub, add, add, bus, "-", "+", "+", "←");
run_inner(s, n_args, shape, sub, add, add, mul, "-", "+", "+", "*");
run_inner(s, n_args, shape, sub, add, add, rsh, "-", "+", "+", ">>");
run_inner(s, n_args, shape, sub, add, add, hsr, "-", "+", "+", "<<");
run_inner(s, n_args, shape, sub, add, xor, and, "-", "+", "^", "&");
run_inner(s, n_args, shape, sub, add, xor, add, "-", "+", "^", "+");
run_inner(s, n_args, shape, sub, add, xor, xor, "-", "+", "^", "^");
run_inner(s, n_args, shape, sub, add, xor, or, "-", "+", "^", "|");
run_inner(s, n_args, shape, sub, add, xor, sub, "-", "+", "^", "-");
run_inner(s, n_args, shape, sub, add, xor, bus, "-", "+", "^", "←");
run_inner(s, n_args, shape, sub, add, xor, mul, "-", "+", "^", "*");
run_inner(s, n_args, shape, sub, add, xor, rsh, "-", "+", "^", ">>");
run_inner(s, n_args, shape, sub, add, xor, hsr, "-", "+", "^", "<<");
run_inner(s, n_args, shape, sub, add, or, and, "-", "+", "|", "&");
run_inner(s, n_args, shape, sub, add, or, add, "-", "+", "|", "+");
run_inner(s, n_args, shape, sub, add, or, xor, "-", "+", "|", "^");
run_inner(s, n_args, shape, sub, add, or, or, "-", "+", "|", "|");
run_inner(s, n_args, shape, sub, add, or, sub, "-", "+", "|", "-");
run_inner(s, n_args, shape, sub, add, or, bus, "-", "+", "|", "←");
run_inner(s, n_args, shape, sub, add, or, mul, "-", "+", "|", "*");
run_inner(s, n_args, shape, sub, add, or, rsh, "-", "+", "|", ">>");
run_inner(s, n_args, shape, sub, add, or, hsr, "-", "+", "|", "<<");
run_inner(s, n_args, shape, sub, add, sub, and, "-", "+", "-", "&");
run_inner(s, n_args, shape, sub, add, sub, add, "-", "+", "-", "+");
run_inner(s, n_args, shape, sub, add, sub, xor, "-", "+", "-", "^");
run_inner(s, n_args, shape, sub, add, sub, or, "-", "+", "-", "|");
run_inner(s, n_args, shape, sub, add, sub, sub, "-", "+", "-", "-");
run_inner(s, n_args, shape, sub, add, sub, bus, "-", "+", "-", "←");
run_inner(s, n_args, shape, sub, add, sub, mul, "-", "+", "-", "*");
run_inner(s, n_args, shape, sub, add, sub, rsh, "-", "+", "-", ">>");
run_inner(s, n_args, shape, sub, add, sub, hsr, "-", "+", "-", "<<");
run_inner(s, n_args, shape, sub, add, bus, and, "-", "+", "←", "&");
run_inner(s, n_args, shape, sub, add, bus, add, "-", "+", "←", "+");
run_inner(s, n_args, shape, sub, add, bus, xor, "-", "+", "←", "^");
run_inner(s, n_args, shape, sub, add, bus, or, "-", "+", "←", "|");
run_inner(s, n_args, shape, sub, add, bus, sub, "-", "+", "←", "-");
run_inner(s, n_args, shape, sub, add, bus, bus, "-", "+", "←", "←");
run_inner(s, n_args, shape, sub, add, bus, mul, "-", "+", "←", "*");
run_inner(s, n_args, shape, sub, add, bus, rsh, "-", "+", "←", ">>");
run_inner(s, n_args, shape, sub, add, bus, hsr, "-", "+", "←", "<<");
run_inner(s, n_args, shape, sub, add, mul, and, "-", "+", "*", "&");
run_inner(s, n_args, shape, sub, add, mul, add, "-", "+", "*", "+");
run_inner(s, n_args, shape, sub, add, mul, xor, "-", "+", "*", "^");
run_inner(s, n_args, shape, sub, add, mul, or, "-", "+", "*", "|");
run_inner(s, n_args, shape, sub, add, mul, sub, "-", "+", "*", "-");
run_inner(s, n_args, shape, sub, add, mul, bus, "-", "+", "*", "←");
run_inner(s, n_args, shape, sub, add, mul, mul, "-", "+", "*", "*");
run_inner(s, n_args, shape, sub, add, mul, rsh, "-", "+", "*", ">>");
run_inner(s, n_args, shape, sub, add, mul, hsr, "-", "+", "*", "<<");
run_inner(s, n_args, shape, sub, add, rsh, and, "-", "+", ">>", "&");
run_inner(s, n_args, shape, sub, add, rsh, add, "-", "+", ">>", "+");
run_inner(s, n_args, shape, sub, add, rsh, xor, "-", "+", ">>", "^");
run_inner(s, n_args, shape, sub, add, rsh, or, "-", "+", ">>", "|");
run_inner(s, n_args, shape, sub, add, rsh, sub, "-", "+", ">>", "-");
run_inner(s, n_args, shape, sub, add, rsh, bus, "-", "+", ">>", "←");
run_inner(s, n_args, shape, sub, add, rsh, mul, "-", "+", ">>", "*");
run_inner(s, n_args, shape, sub, add, rsh, rsh, "-", "+", ">>", ">>");
run_inner(s, n_args, shape, sub, add, rsh, hsr, "-", "+", ">>", "<<");
run_inner(s, n_args, shape, sub, add, hsr, and, "-", "+", "<<", "&");
run_inner(s, n_args, shape, sub, add, hsr, add, "-", "+", "<<", "+");
run_inner(s, n_args, shape, sub, add, hsr, xor, "-", "+", "<<", "^");
run_inner(s, n_args, shape, sub, add, hsr, or, "-", "+", "<<", "|");
run_inner(s, n_args, shape, sub, add, hsr, sub, "-", "+", "<<", "-");
run_inner(s, n_args, shape, sub, add, hsr, bus, "-", "+", "<<", "←");
run_inner(s, n_args, shape, sub, add, hsr, mul, "-", "+", "<<", "*");
run_inner(s, n_args, shape, sub, add, hsr, rsh, "-", "+", "<<", ">>");
run_inner(s, n_args, shape, sub, add, hsr, hsr, "-", "+", "<<", "<<");
run_inner(s, n_args, shape, sub, xor, and, and, "-", "^", "&", "&");
run_inner(s, n_args, shape, sub, xor, and, add, "-", "^", "&", "+");
run_inner(s, n_args, shape, sub, xor, and, xor, "-", "^", "&", "^");
run_inner(s, n_args, shape, sub, xor, and, or, "-", "^", "&", "|");
run_inner(s, n_args, shape, sub, xor, and, sub, "-", "^", "&", "-");
run_inner(s, n_args, shape, sub, xor, and, bus, "-", "^", "&", "←");
run_inner(s, n_args, shape, sub, xor, and, mul, "-", "^", "&", "*");
run_inner(s, n_args, shape, sub, xor, and, rsh, "-", "^", "&", ">>");
run_inner(s, n_args, shape, sub, xor, and, hsr, "-", "^", "&", "<<");
run_inner(s, n_args, shape, sub, xor, add, and, "-", "^", "+", "&");
run_inner(s, n_args, shape, sub, xor, add, add, "-", "^", "+", "+");
run_inner(s, n_args, shape, sub, xor, add, xor, "-", "^", "+", "^");
run_inner(s, n_args, shape, sub, xor, add, or, "-", "^", "+", "|");
run_inner(s, n_args, shape, sub, xor, add, sub, "-", "^", "+", "-");
run_inner(s, n_args, shape, sub, xor, add, bus, "-", "^", "+", "←");
run_inner(s, n_args, shape, sub, xor, add, mul, "-", "^", "+", "*");
run_inner(s, n_args, shape, sub, xor, add, rsh, "-", "^", "+", ">>");
run_inner(s, n_args, shape, sub, xor, add, hsr, "-", "^", "+", "<<");
run_inner(s, n_args, shape, sub, xor, xor, and, "-", "^", "^", "&");
run_inner(s, n_args, shape, sub, xor, xor, add, "-", "^", "^", "+");
run_inner(s, n_args, shape, sub, xor, xor, xor, "-", "^", "^", "^");
run_inner(s, n_args, shape, sub, xor, xor, or, "-", "^", "^", "|");
run_inner(s, n_args, shape, sub, xor, xor, sub, "-", "^", "^", "-");
run_inner(s, n_args, shape, sub, xor, xor, bus, "-", "^", "^", "←");
run_inner(s, n_args, shape, sub, xor, xor, mul, "-", "^", "^", "*");
run_inner(s, n_args, shape, sub, xor, xor, rsh, "-", "^", "^", ">>");
run_inner(s, n_args, shape, sub, xor, xor, hsr, "-", "^", "^", "<<");
run_inner(s, n_args, shape, sub, xor, or, and, "-", "^", "|", "&");
run_inner(s, n_args, shape, sub, xor, or, add, "-", "^", "|", "+");
run_inner(s, n_args, shape, sub, xor, or, xor, "-", "^", "|", "^");
run_inner(s, n_args, shape, sub, xor, or, or, "-", "^", "|", "|");
run_inner(s, n_args, shape, sub, xor, or, sub, "-", "^", "|", "-");
run_inner(s, n_args, shape, sub, xor, or, bus, "-", "^", "|", "←");
run_inner(s, n_args, shape, sub, xor, or, mul, "-", "^", "|", "*");
run_inner(s, n_args, shape, sub, xor, or, rsh, "-", "^", "|", ">>");
run_inner(s, n_args, shape, sub, xor, or, hsr, "-", "^", "|", "<<");
run_inner(s, n_args, shape, sub, xor, sub, and, "-", "^", "-", "&");
run_inner(s, n_args, shape, sub, xor, sub, add, "-", "^", "-", "+");
run_inner(s, n_args, shape, sub, xor, sub, xor, "-", "^", "-", "^");
run_inner(s, n_args, shape, sub, xor, sub, or, "-", "^", "-", "|");
run_inner(s, n_args, shape, sub, xor, sub, sub, "-", "^", "-", "-");
run_inner(s, n_args, shape, sub, xor, sub, bus, "-", "^", "-", "←");
run_inner(s, n_args, shape, sub, xor, sub, mul, "-", "^", "-", "*");
run_inner(s, n_args, shape, sub, xor, sub, rsh, "-", "^", "-", ">>");
run_inner(s, n_args, shape, sub, xor, sub, hsr, "-", "^", "-", "<<");
run_inner(s, n_args, shape, sub, xor, bus, and, "-", "^", "←", "&");
run_inner(s, n_args, shape, sub, xor, bus, add, "-", "^", "←", "+");
run_inner(s, n_args, shape, sub, xor, bus, xor, "-", "^", "←", "^");
run_inner(s, n_args, shape, sub, xor, bus, or, "-", "^", "←", "|");
run_inner(s, n_args, shape, sub, xor, bus, sub, "-", "^", "←", "-");
run_inner(s, n_args, shape, sub, xor, bus, bus, "-", "^", "←", "←");
run_inner(s, n_args, shape, sub, xor, bus, mul, "-", "^", "←", "*");
run_inner(s, n_args, shape, sub, xor, bus, rsh, "-", "^", "←", ">>");
run_inner(s, n_args, shape, sub, xor, bus, hsr, "-", "^", "←", "<<");
run_inner(s, n_args, shape, sub, xor, mul, and, "-", "^", "*", "&");
run_inner(s, n_args, shape, sub, xor, mul, add, "-", "^", "*", "+");
run_inner(s, n_args, shape, sub, xor, mul, xor, "-", "^", "*", "^");
run_inner(s, n_args, shape, sub, xor, mul, or, "-", "^", "*", "|");
run_inner(s, n_args, shape, sub, xor, mul, sub, "-", "^", "*", "-");
run_inner(s, n_args, shape, sub, xor, mul, bus, "-", "^", "*", "←");
run_inner(s, n_args, shape, sub, xor, mul, mul, "-", "^", "*", "*");
run_inner(s, n_args, shape, sub, xor, mul, rsh, "-", "^", "*", ">>");
run_inner(s, n_args, shape, sub, xor, mul, hsr, "-", "^", "*", "<<");
run_inner(s, n_args, shape, sub, xor, rsh, and, "-", "^", ">>", "&");
run_inner(s, n_args, shape, sub, xor, rsh, add, "-", "^", ">>", "+");
run_inner(s, n_args, shape, sub, xor, rsh, xor, "-", "^", ">>", "^");
run_inner(s, n_args, shape, sub, xor, rsh, or, "-", "^", ">>", "|");
run_inner(s, n_args, shape, sub, xor, rsh, sub, "-", "^", ">>", "-");
run_inner(s, n_args, shape, sub, xor, rsh, bus, "-", "^", ">>", "←");
run_inner(s, n_args, shape, sub, xor, rsh, mul, "-", "^", ">>", "*");
run_inner(s, n_args, shape, sub, xor, rsh, rsh, "-", "^", ">>", ">>");
run_inner(s, n_args, shape, sub, xor, rsh, hsr, "-", "^", ">>", "<<");
run_inner(s, n_args, shape, sub, xor, hsr, and, "-", "^", "<<", "&");
run_inner(s, n_args, shape, sub, xor, hsr, add, "-", "^", "<<", "+");
run_inner(s, n_args, shape, sub, xor, hsr, xor, "-", "^", "<<", "^");
run_inner(s, n_args, shape, sub, xor, hsr, or, "-", "^", "<<", "|");
run_inner(s, n_args, shape, sub, xor, hsr, sub, "-", "^", "<<", "-");
run_inner(s, n_args, shape, sub, xor, hsr, bus, "-", "^", "<<", "←");
run_inner(s, n_args, shape, sub, xor, hsr, mul, "-", "^", "<<", "*");
run_inner(s, n_args, shape, sub, xor, hsr, rsh, "-", "^", "<<", ">>");
run_inner(s, n_args, shape, sub, xor, hsr, hsr, "-", "^", "<<", "<<");
run_inner(s, n_args, shape, sub, or, and, and, "-", "|", "&", "&");
run_inner(s, n_args, shape, sub, or, and, add, "-", "|", "&", "+");
run_inner(s, n_args, shape, sub, or, and, xor, "-", "|", "&", "^");
run_inner(s, n_args, shape, sub, or, and, or, "-", "|", "&", "|");
run_inner(s, n_args, shape, sub, or, and, sub, "-", "|", "&", "-");
run_inner(s, n_args, shape, sub, or, and, bus, "-", "|", "&", "←");
run_inner(s, n_args, shape, sub, or, and, mul, "-", "|", "&", "*");
run_inner(s, n_args, shape, sub, or, and, rsh, "-", "|", "&", ">>");
run_inner(s, n_args, shape, sub, or, and, hsr, "-", "|", "&", "<<");
run_inner(s, n_args, shape, sub, or, add, and, "-", "|", "+", "&");
run_inner(s, n_args, shape, sub, or, add, add, "-", "|", "+", "+");
run_inner(s, n_args, shape, sub, or, add, xor, "-", "|", "+", "^");
run_inner(s, n_args, shape, sub, or, add, or, "-", "|", "+", "|");
run_inner(s, n_args, shape, sub, or, add, sub, "-", "|", "+", "-");
run_inner(s, n_args, shape, sub, or, add, bus, "-", "|", "+", "←");
run_inner(s, n_args, shape, sub, or, add, mul, "-", "|", "+", "*");
run_inner(s, n_args, shape, sub, or, add, rsh, "-", "|", "+", ">>");
run_inner(s, n_args, shape, sub, or, add, hsr, "-", "|", "+", "<<");
run_inner(s, n_args, shape, sub, or, xor, and, "-", "|", "^", "&");
run_inner(s, n_args, shape, sub, or, xor, add, "-", "|", "^", "+");
run_inner(s, n_args, shape, sub, or, xor, xor, "-", "|", "^", "^");
run_inner(s, n_args, shape, sub, or, xor, or, "-", "|", "^", "|");
run_inner(s, n_args, shape, sub, or, xor, sub, "-", "|", "^", "-");
run_inner(s, n_args, shape, sub, or, xor, bus, "-", "|", "^", "←");
run_inner(s, n_args, shape, sub, or, xor, mul, "-", "|", "^", "*");
run_inner(s, n_args, shape, sub, or, xor, rsh, "-", "|", "^", ">>");
run_inner(s, n_args, shape, sub, or, xor, hsr, "-", "|", "^", "<<");
run_inner(s, n_args, shape, sub, or, or, and, "-", "|", "|", "&");
run_inner(s, n_args, shape, sub, or, or, add, "-", "|", "|", "+");
run_inner(s, n_args, shape, sub, or, or, xor, "-", "|", "|", "^");
run_inner(s, n_args, shape, sub, or, or, or, "-", "|", "|", "|");
run_inner(s, n_args, shape, sub, or, or, sub, "-", "|", "|", "-");
run_inner(s, n_args, shape, sub, or, or, bus, "-", "|", "|", "←");
run_inner(s, n_args, shape, sub, or, or, mul, "-", "|", "|", "*");
run_inner(s, n_args, shape, sub, or, or, rsh, "-", "|", "|", ">>");
run_inner(s, n_args, shape, sub, or, or, hsr, "-", "|", "|", "<<");
run_inner(s, n_args, shape, sub, or, sub, and, "-", "|", "-", "&");
run_inner(s, n_args, shape, sub, or, sub, add, "-", "|", "-", "+");
run_inner(s, n_args, shape, sub, or, sub, xor, "-", "|", "-", "^");
run_inner(s, n_args, shape, sub, or, sub, or, "-", "|", "-", "|");
run_inner(s, n_args, shape, sub, or, sub, sub, "-", "|", "-", "-");
run_inner(s, n_args, shape, sub, or, sub, bus, "-", "|", "-", "←");
run_inner(s, n_args, shape, sub, or, sub, mul, "-", "|", "-", "*");
run_inner(s, n_args, shape, sub, or, sub, rsh, "-", "|", "-", ">>");
run_inner(s, n_args, shape, sub, or, sub, hsr, "-", "|", "-", "<<");
run_inner(s, n_args, shape, sub, or, bus, and, "-", "|", "←", "&");
run_inner(s, n_args, shape, sub, or, bus, add, "-", "|", "←", "+");
run_inner(s, n_args, shape, sub, or, bus, xor, "-", "|", "←", "^");
run_inner(s, n_args, shape, sub, or, bus, or, "-", "|", "←", "|");
run_inner(s, n_args, shape, sub, or, bus, sub, "-", "|", "←", "-");
run_inner(s, n_args, shape, sub, or, bus, bus, "-", "|", "←", "←");
run_inner(s, n_args, shape, sub, or, bus, mul, "-", "|", "←", "*");
run_inner(s, n_args, shape, sub, or, bus, rsh, "-", "|", "←", ">>");
run_inner(s, n_args, shape, sub, or, bus, hsr, "-", "|", "←", "<<");
run_inner(s, n_args, shape, sub, or, mul, and, "-", "|", "*", "&");
run_inner(s, n_args, shape, sub, or, mul, add, "-", "|", "*", "+");
run_inner(s, n_args, shape, sub, or, mul, xor, "-", "|", "*", "^");
run_inner(s, n_args, shape, sub, or, mul, or, "-", "|", "*", "|");
run_inner(s, n_args, shape, sub, or, mul, sub, "-", "|", "*", "-");
run_inner(s, n_args, shape, sub, or, mul, bus, "-", "|", "*", "←");
run_inner(s, n_args, shape, sub, or, mul, mul, "-", "|", "*", "*");
run_inner(s, n_args, shape, sub, or, mul, rsh, "-", "|", "*", ">>");
run_inner(s, n_args, shape, sub, or, mul, hsr, "-", "|", "*", "<<");
run_inner(s, n_args, shape, sub, or, rsh, and, "-", "|", ">>", "&");
run_inner(s, n_args, shape, sub, or, rsh, add, "-", "|", ">>", "+");
run_inner(s, n_args, shape, sub, or, rsh, xor, "-", "|", ">>", "^");
run_inner(s, n_args, shape, sub, or, rsh, or, "-", "|", ">>", "|");
run_inner(s, n_args, shape, sub, or, rsh, sub, "-", "|", ">>", "-");
run_inner(s, n_args, shape, sub, or, rsh, bus, "-", "|", ">>", "←");
run_inner(s, n_args, shape, sub, or, rsh, mul, "-", "|", ">>", "*");
run_inner(s, n_args, shape, sub, or, rsh, rsh, "-", "|", ">>", ">>");
run_inner(s, n_args, shape, sub, or, rsh, hsr, "-", "|", ">>", "<<");
run_inner(s, n_args, shape, sub, or, hsr, and, "-", "|", "<<", "&");
run_inner(s, n_args, shape, sub, or, hsr, add, "-", "|", "<<", "+");
run_inner(s, n_args, shape, sub, or, hsr, xor, "-", "|", "<<", "^");
run_inner(s, n_args, shape, sub, or, hsr, or, "-", "|", "<<", "|");
run_inner(s, n_args, shape, sub, or, hsr, sub, "-", "|", "<<", "-");
run_inner(s, n_args, shape, sub, or, hsr, bus, "-", "|", "<<", "←");
run_inner(s, n_args, shape, sub, or, hsr, mul, "-", "|", "<<", "*");
run_inner(s, n_args, shape, sub, or, hsr, rsh, "-", "|", "<<", ">>");
run_inner(s, n_args, shape, sub, or, hsr, hsr, "-", "|", "<<", "<<");
run_inner(s, n_args, shape, sub, sub, and, and, "-", "-", "&", "&");
run_inner(s, n_args, shape, sub, sub, and, add, "-", "-", "&", "+");
run_inner(s, n_args, shape, sub, sub, and, xor, "-", "-", "&", "^");
run_inner(s, n_args, shape, sub, sub, and, or, "-", "-", "&", "|");
run_inner(s, n_args, shape, sub, sub, and, sub, "-", "-", "&", "-");
run_inner(s, n_args, shape, sub, sub, and, bus, "-", "-", "&", "←");
run_inner(s, n_args, shape, sub, sub, and, mul, "-", "-", "&", "*");
run_inner(s, n_args, shape, sub, sub, and, rsh, "-", "-", "&", ">>");
run_inner(s, n_args, shape, sub, sub, and, hsr, "-", "-", "&", "<<");
run_inner(s, n_args, shape, sub, sub, add, and, "-", "-", "+", "&");
run_inner(s, n_args, shape, sub, sub, add, add, "-", "-", "+", "+");
run_inner(s, n_args, shape, sub, sub, add, xor, "-", "-", "+", "^");
run_inner(s, n_args, shape, sub, sub, add, or, "-", "-", "+", "|");
run_inner(s, n_args, shape, sub, sub, add, sub, "-", "-", "+", "-");
run_inner(s, n_args, shape, sub, sub, add, bus, "-", "-", "+", "←");
run_inner(s, n_args, shape, sub, sub, add, mul, "-", "-", "+", "*");
run_inner(s, n_args, shape, sub, sub, add, rsh, "-", "-", "+", ">>");
run_inner(s, n_args, shape, sub, sub, add, hsr, "-", "-", "+", "<<");
run_inner(s, n_args, shape, sub, sub, xor, and, "-", "-", "^", "&");
run_inner(s, n_args, shape, sub, sub, xor, add, "-", "-", "^", "+");
run_inner(s, n_args, shape, sub, sub, xor, xor, "-", "-", "^", "^");
run_inner(s, n_args, shape, sub, sub, xor, or, "-", "-", "^", "|");
run_inner(s, n_args, shape, sub, sub, xor, sub, "-", "-", "^", "-");
run_inner(s, n_args, shape, sub, sub, xor, bus, "-", "-", "^", "←");
run_inner(s, n_args, shape, sub, sub, xor, mul, "-", "-", "^", "*");
run_inner(s, n_args, shape, sub, sub, xor, rsh, "-", "-", "^", ">>");
run_inner(s, n_args, shape, sub, sub, xor, hsr, "-", "-", "^", "<<");
run_inner(s, n_args, shape, sub, sub, or, and, "-", "-", "|", "&");
run_inner(s, n_args, shape, sub, sub, or, add, "-", "-", "|", "+");
run_inner(s, n_args, shape, sub, sub, or, xor, "-", "-", "|", "^");
run_inner(s, n_args, shape, sub, sub, or, or, "-", "-", "|", "|");
run_inner(s, n_args, shape, sub, sub, or, sub, "-", "-", "|", "-");
run_inner(s, n_args, shape, sub, sub, or, bus, "-", "-", "|", "←");
run_inner(s, n_args, shape, sub, sub, or, mul, "-", "-", "|", "*");
run_inner(s, n_args, shape, sub, sub, or, rsh, "-", "-", "|", ">>");
run_inner(s, n_args, shape, sub, sub, or, hsr, "-", "-", "|", "<<");
run_inner(s, n_args, shape, sub, sub, sub, and, "-", "-", "-", "&");
run_inner(s, n_args, shape, sub, sub, sub, add, "-", "-", "-", "+");
run_inner(s, n_args, shape, sub, sub, sub, xor, "-", "-", "-", "^");
run_inner(s, n_args, shape, sub, sub, sub, or, "-", "-", "-", "|");
run_inner(s, n_args, shape, sub, sub, sub, sub, "-", "-", "-", "-");
run_inner(s, n_args, shape, sub, sub, sub, bus, "-", "-", "-", "←");
run_inner(s, n_args, shape, sub, sub, sub, mul, "-", "-", "-", "*");
run_inner(s, n_args, shape, sub, sub, sub, rsh, "-", "-", "-", ">>");
run_inner(s, n_args, shape, sub, sub, sub, hsr, "-", "-", "-", "<<");
run_inner(s, n_args, shape, sub, sub, bus, and, "-", "-", "←", "&");
run_inner(s, n_args, shape, sub, sub, bus, add, "-", "-", "←", "+");
run_inner(s, n_args, shape, sub, sub, bus, xor, "-", "-", "←", "^");
run_inner(s, n_args, shape, sub, sub, bus, or, "-", "-", "←", "|");
run_inner(s, n_args, shape, sub, sub, bus, sub, "-", "-", "←", "-");
run_inner(s, n_args, shape, sub, sub, bus, bus, "-", "-", "←", "←");
run_inner(s, n_args, shape, sub, sub, bus, mul, "-", "-", "←", "*");
run_inner(s, n_args, shape, sub, sub, bus, rsh, "-", "-", "←", ">>");
run_inner(s, n_args, shape, sub, sub, bus, hsr, "-", "-", "←", "<<");
run_inner(s, n_args, shape, sub, sub, mul, and, "-", "-", "*", "&");
run_inner(s, n_args, shape, sub, sub, mul, add, "-", "-", "*", "+");
run_inner(s, n_args, shape, sub, sub, mul, xor, "-", "-", "*", "^");
run_inner(s, n_args, shape, sub, sub, mul, or, "-", "-", "*", "|");
run_inner(s, n_args, shape, sub, sub, mul, sub, "-", "-", "*", "-");
run_inner(s, n_args, shape, sub, sub, mul, bus, "-", "-", "*", "←");
run_inner(s, n_args, shape, sub, sub, mul, mul, "-", "-", "*", "*");
run_inner(s, n_args, shape, sub, sub, mul, rsh, "-", "-", "*", ">>");
run_inner(s, n_args, shape, sub, sub, mul, hsr, "-", "-", "*", "<<");
run_inner(s, n_args, shape, sub, sub, rsh, and, "-", "-", ">>", "&");
run_inner(s, n_args, shape, sub, sub, rsh, add, "-", "-", ">>", "+");
run_inner(s, n_args, shape, sub, sub, rsh, xor, "-", "-", ">>", "^");
run_inner(s, n_args, shape, sub, sub, rsh, or, "-", "-", ">>", "|");
run_inner(s, n_args, shape, sub, sub, rsh, sub, "-", "-", ">>", "-");
run_inner(s, n_args, shape, sub, sub, rsh, bus, "-", "-", ">>", "←");
run_inner(s, n_args, shape, sub, sub, rsh, mul, "-", "-", ">>", "*");
run_inner(s, n_args, shape, sub, sub, rsh, rsh, "-", "-", ">>", ">>");
run_inner(s, n_args, shape, sub, sub, rsh, hsr, "-", "-", ">>", "<<");
run_inner(s, n_args, shape, sub, sub, hsr, and, "-", "-", "<<", "&");
run_inner(s, n_args, shape, sub, sub, hsr, add, "-", "-", "<<", "+");
run_inner(s, n_args, shape, sub, sub, hsr, xor, "-", "-", "<<", "^");
run_inner(s, n_args, shape, sub, sub, hsr, or, "-", "-", "<<", "|");
run_inner(s, n_args, shape, sub, sub, hsr, sub, "-", "-", "<<", "-");
run_inner(s, n_args, shape, sub, sub, hsr, bus, "-", "-", "<<", "←");
run_inner(s, n_args, shape, sub, sub, hsr, mul, "-", "-", "<<", "*");
run_inner(s, n_args, shape, sub, sub, hsr, rsh, "-", "-", "<<", ">>");
run_inner(s, n_args, shape, sub, sub, hsr, hsr, "-", "-", "<<", "<<");
run_inner(s, n_args, shape, sub, bus, and, and, "-", "←", "&", "&");
run_inner(s, n_args, shape, sub, bus, and, add, "-", "←", "&", "+");
run_inner(s, n_args, shape, sub, bus, and, xor, "-", "←", "&", "^");
run_inner(s, n_args, shape, sub, bus, and, or, "-", "←", "&", "|");
run_inner(s, n_args, shape, sub, bus, and, sub, "-", "←", "&", "-");
run_inner(s, n_args, shape, sub, bus, and, bus, "-", "←", "&", "←");
run_inner(s, n_args, shape, sub, bus, and, mul, "-", "←", "&", "*");
run_inner(s, n_args, shape, sub, bus, and, rsh, "-", "←", "&", ">>");
run_inner(s, n_args, shape, sub, bus, and, hsr, "-", "←", "&", "<<");
run_inner(s, n_args, shape, sub, bus, add, and, "-", "←", "+", "&");
run_inner(s, n_args, shape, sub, bus, add, add, "-", "←", "+", "+");
run_inner(s, n_args, shape, sub, bus, add, xor, "-", "←", "+", "^");
run_inner(s, n_args, shape, sub, bus, add, or, "-", "←", "+", "|");
run_inner(s, n_args, shape, sub, bus, add, sub, "-", "←", "+", "-");
run_inner(s, n_args, shape, sub, bus, add, bus, "-", "←", "+", "←");
run_inner(s, n_args, shape, sub, bus, add, mul, "-", "←", "+", "*");
run_inner(s, n_args, shape, sub, bus, add, rsh, "-", "←", "+", ">>");
run_inner(s, n_args, shape, sub, bus, add, hsr, "-", "←", "+", "<<");
run_inner(s, n_args, shape, sub, bus, xor, and, "-", "←", "^", "&");
run_inner(s, n_args, shape, sub, bus, xor, add, "-", "←", "^", "+");
run_inner(s, n_args, shape, sub, bus, xor, xor, "-", "←", "^", "^");
run_inner(s, n_args, shape, sub, bus, xor, or, "-", "←", "^", "|");
run_inner(s, n_args, shape, sub, bus, xor, sub, "-", "←", "^", "-");
run_inner(s, n_args, shape, sub, bus, xor, bus, "-", "←", "^", "←");
run_inner(s, n_args, shape, sub, bus, xor, mul, "-", "←", "^", "*");
run_inner(s, n_args, shape, sub, bus, xor, rsh, "-", "←", "^", ">>");
run_inner(s, n_args, shape, sub, bus, xor, hsr, "-", "←", "^", "<<");
run_inner(s, n_args, shape, sub, bus, or, and, "-", "←", "|", "&");
run_inner(s, n_args, shape, sub, bus, or, add, "-", "←", "|", "+");
run_inner(s, n_args, shape, sub, bus, or, xor, "-", "←", "|", "^");
run_inner(s, n_args, shape, sub, bus, or, or, "-", "←", "|", "|");
run_inner(s, n_args, shape, sub, bus, or, sub, "-", "←", "|", "-");
run_inner(s, n_args, shape, sub, bus, or, bus, "-", "←", "|", "←");
run_inner(s, n_args, shape, sub, bus, or, mul, "-", "←", "|", "*");
run_inner(s, n_args, shape, sub, bus, or, rsh, "-", "←", "|", ">>");
run_inner(s, n_args, shape, sub, bus, or, hsr, "-", "←", "|", "<<");
run_inner(s, n_args, shape, sub, bus, sub, and, "-", "←", "-", "&");
run_inner(s, n_args, shape, sub, bus, sub, add, "-", "←", "-", "+");
run_inner(s, n_args, shape, sub, bus, sub, xor, "-", "←", "-", "^");
run_inner(s, n_args, shape, sub, bus, sub, or, "-", "←", "-", "|");
run_inner(s, n_args, shape, sub, bus, sub, sub, "-", "←", "-", "-");
run_inner(s, n_args, shape, sub, bus, sub, bus, "-", "←", "-", "←");
run_inner(s, n_args, shape, sub, bus, sub, mul, "-", "←", "-", "*");
run_inner(s, n_args, shape, sub, bus, sub, rsh, "-", "←", "-", ">>");
run_inner(s, n_args, shape, sub, bus, sub, hsr, "-", "←", "-", "<<");
run_inner(s, n_args, shape, sub, bus, bus, and, "-", "←", "←", "&");
run_inner(s, n_args, shape, sub, bus, bus, add, "-", "←", "←", "+");
run_inner(s, n_args, shape, sub, bus, bus, xor, "-", "←", "←", "^");
run_inner(s, n_args, shape, sub, bus, bus, or, "-", "←", "←", "|");
run_inner(s, n_args, shape, sub, bus, bus, sub, "-", "←", "←", "-");
run_inner(s, n_args, shape, sub, bus, bus, bus, "-", "←", "←", "←");
run_inner(s, n_args, shape, sub, bus, bus, mul, "-", "←", "←", "*");
run_inner(s, n_args, shape, sub, bus, bus, rsh, "-", "←", "←", ">>");
run_inner(s, n_args, shape, sub, bus, bus, hsr, "-", "←", "←", "<<");
run_inner(s, n_args, shape, sub, bus, mul, and, "-", "←", "*", "&");
run_inner(s, n_args, shape, sub, bus, mul, add, "-", "←", "*", "+");
run_inner(s, n_args, shape, sub, bus, mul, xor, "-", "←", "*", "^");
run_inner(s, n_args, shape, sub, bus, mul, or, "-", "←", "*", "|");
run_inner(s, n_args, shape, sub, bus, mul, sub, "-", "←", "*", "-");
run_inner(s, n_args, shape, sub, bus, mul, bus, "-", "←", "*", "←");
run_inner(s, n_args, shape, sub, bus, mul, mul, "-", "←", "*", "*");
run_inner(s, n_args, shape, sub, bus, mul, rsh, "-", "←", "*", ">>");
run_inner(s, n_args, shape, sub, bus, mul, hsr, "-", "←", "*", "<<");
run_inner(s, n_args, shape, sub, bus, rsh, and, "-", "←", ">>", "&");
run_inner(s, n_args, shape, sub, bus, rsh, add, "-", "←", ">>", "+");
run_inner(s, n_args, shape, sub, bus, rsh, xor, "-", "←", ">>", "^");
run_inner(s, n_args, shape, sub, bus, rsh, or, "-", "←", ">>", "|");
run_inner(s, n_args, shape, sub, bus, rsh, sub, "-", "←", ">>", "-");
run_inner(s, n_args, shape, sub, bus, rsh, bus, "-", "←", ">>", "←");
run_inner(s, n_args, shape, sub, bus, rsh, mul, "-", "←", ">>", "*");
run_inner(s, n_args, shape, sub, bus, rsh, rsh, "-", "←", ">>", ">>");
run_inner(s, n_args, shape, sub, bus, rsh, hsr, "-", "←", ">>", "<<");
run_inner(s, n_args, shape, sub, bus, hsr, and, "-", "←", "<<", "&");
run_inner(s, n_args, shape, sub, bus, hsr, add, "-", "←", "<<", "+");
run_inner(s, n_args, shape, sub, bus, hsr, xor, "-", "←", "<<", "^");
run_inner(s, n_args, shape, sub, bus, hsr, or, "-", "←", "<<", "|");
run_inner(s, n_args, shape, sub, bus, hsr, sub, "-", "←", "<<", "-");
run_inner(s, n_args, shape, sub, bus, hsr, bus, "-", "←", "<<", "←");
run_inner(s, n_args, shape, sub, bus, hsr, mul, "-", "←", "<<", "*");
run_inner(s, n_args, shape, sub, bus, hsr, rsh, "-", "←", "<<", ">>");
run_inner(s, n_args, shape, sub, bus, hsr, hsr, "-", "←", "<<", "<<");
run_inner(s, n_args, shape, sub, mul, and, and, "-", "*", "&", "&");
run_inner(s, n_args, shape, sub, mul, and, add, "-", "*", "&", "+");
run_inner(s, n_args, shape, sub, mul, and, xor, "-", "*", "&", "^");
run_inner(s, n_args, shape, sub, mul, and, or, "-", "*", "&", "|");
run_inner(s, n_args, shape, sub, mul, and, sub, "-", "*", "&", "-");
run_inner(s, n_args, shape, sub, mul, and, bus, "-", "*", "&", "←");
run_inner(s, n_args, shape, sub, mul, and, mul, "-", "*", "&", "*");
run_inner(s, n_args, shape, sub, mul, and, rsh, "-", "*", "&", ">>");
run_inner(s, n_args, shape, sub, mul, and, hsr, "-", "*", "&", "<<");
run_inner(s, n_args, shape, sub, mul, add, and, "-", "*", "+", "&");
run_inner(s, n_args, shape, sub, mul, add, add, "-", "*", "+", "+");
run_inner(s, n_args, shape, sub, mul, add, xor, "-", "*", "+", "^");
run_inner(s, n_args, shape, sub, mul, add, or, "-", "*", "+", "|");
run_inner(s, n_args, shape, sub, mul, add, sub, "-", "*", "+", "-");
run_inner(s, n_args, shape, sub, mul, add, bus, "-", "*", "+", "←");
run_inner(s, n_args, shape, sub, mul, add, mul, "-", "*", "+", "*");
run_inner(s, n_args, shape, sub, mul, add, rsh, "-", "*", "+", ">>");
run_inner(s, n_args, shape, sub, mul, add, hsr, "-", "*", "+", "<<");
run_inner(s, n_args, shape, sub, mul, xor, and, "-", "*", "^", "&");
run_inner(s, n_args, shape, sub, mul, xor, add, "-", "*", "^", "+");
run_inner(s, n_args, shape, sub, mul, xor, xor, "-", "*", "^", "^");
run_inner(s, n_args, shape, sub, mul, xor, or, "-", "*", "^", "|");
run_inner(s, n_args, shape, sub, mul, xor, sub, "-", "*", "^", "-");
run_inner(s, n_args, shape, sub, mul, xor, bus, "-", "*", "^", "←");
run_inner(s, n_args, shape, sub, mul, xor, mul, "-", "*", "^", "*");
run_inner(s, n_args, shape, sub, mul, xor, rsh, "-", "*", "^", ">>");
run_inner(s, n_args, shape, sub, mul, xor, hsr, "-", "*", "^", "<<");
run_inner(s, n_args, shape, sub, mul, or, and, "-", "*", "|", "&");
run_inner(s, n_args, shape, sub, mul, or, add, "-", "*", "|", "+");
run_inner(s, n_args, shape, sub, mul, or, xor, "-", "*", "|", "^");
run_inner(s, n_args, shape, sub, mul, or, or, "-", "*", "|", "|");
run_inner(s, n_args, shape, sub, mul, or, sub, "-", "*", "|", "-");
run_inner(s, n_args, shape, sub, mul, or, bus, "-", "*", "|", "←");
run_inner(s, n_args, shape, sub, mul, or, mul, "-", "*", "|", "*");
run_inner(s, n_args, shape, sub, mul, or, rsh, "-", "*", "|", ">>");
run_inner(s, n_args, shape, sub, mul, or, hsr, "-", "*", "|", "<<");
run_inner(s, n_args, shape, sub, mul, sub, and, "-", "*", "-", "&");
run_inner(s, n_args, shape, sub, mul, sub, add, "-", "*", "-", "+");
run_inner(s, n_args, shape, sub, mul, sub, xor, "-", "*", "-", "^");
run_inner(s, n_args, shape, sub, mul, sub, or, "-", "*", "-", "|");
run_inner(s, n_args, shape, sub, mul, sub, sub, "-", "*", "-", "-");
run_inner(s, n_args, shape, sub, mul, sub, bus, "-", "*", "-", "←");
run_inner(s, n_args, shape, sub, mul, sub, mul, "-", "*", "-", "*");
run_inner(s, n_args, shape, sub, mul, sub, rsh, "-", "*", "-", ">>");
run_inner(s, n_args, shape, sub, mul, sub, hsr, "-", "*", "-", "<<");
run_inner(s, n_args, shape, sub, mul, bus, and, "-", "*", "←", "&");
run_inner(s, n_args, shape, sub, mul, bus, add, "-", "*", "←", "+");
run_inner(s, n_args, shape, sub, mul, bus, xor, "-", "*", "←", "^");
run_inner(s, n_args, shape, sub, mul, bus, or, "-", "*", "←", "|");
run_inner(s, n_args, shape, sub, mul, bus, sub, "-", "*", "←", "-");
run_inner(s, n_args, shape, sub, mul, bus, bus, "-", "*", "←", "←");
run_inner(s, n_args, shape, sub, mul, bus, mul, "-", "*", "←", "*");
run_inner(s, n_args, shape, sub, mul, bus, rsh, "-", "*", "←", ">>");
run_inner(s, n_args, shape, sub, mul, bus, hsr, "-", "*", "←", "<<");
run_inner(s, n_args, shape, sub, mul, mul, and, "-", "*", "*", "&");
run_inner(s, n_args, shape, sub, mul, mul, add, "-", "*", "*", "+");
run_inner(s, n_args, shape, sub, mul, mul, xor, "-", "*", "*", "^");
run_inner(s, n_args, shape, sub, mul, mul, or, "-", "*", "*", "|");
run_inner(s, n_args, shape, sub, mul, mul, sub, "-", "*", "*", "-");
run_inner(s, n_args, shape, sub, mul, mul, bus, "-", "*", "*", "←");
run_inner(s, n_args, shape, sub, mul, mul, mul, "-", "*", "*", "*");
run_inner(s, n_args, shape, sub, mul, mul, rsh, "-", "*", "*", ">>");
run_inner(s, n_args, shape, sub, mul, mul, hsr, "-", "*", "*", "<<");
run_inner(s, n_args, shape, sub, mul, rsh, and, "-", "*", ">>", "&");
run_inner(s, n_args, shape, sub, mul, rsh, add, "-", "*", ">>", "+");
run_inner(s, n_args, shape, sub, mul, rsh, xor, "-", "*", ">>", "^");
run_inner(s, n_args, shape, sub, mul, rsh, or, "-", "*", ">>", "|");
run_inner(s, n_args, shape, sub, mul, rsh, sub, "-", "*", ">>", "-");
run_inner(s, n_args, shape, sub, mul, rsh, bus, "-", "*", ">>", "←");
run_inner(s, n_args, shape, sub, mul, rsh, mul, "-", "*", ">>", "*");
run_inner(s, n_args, shape, sub, mul, rsh, rsh, "-", "*", ">>", ">>");
run_inner(s, n_args, shape, sub, mul, rsh, hsr, "-", "*", ">>", "<<");
run_inner(s, n_args, shape, sub, mul, hsr, and, "-", "*", "<<", "&");
run_inner(s, n_args, shape, sub, mul, hsr, add, "-", "*", "<<", "+");
run_inner(s, n_args, shape, sub, mul, hsr, xor, "-", "*", "<<", "^");
run_inner(s, n_args, shape, sub, mul, hsr, or, "-", "*", "<<", "|");
run_inner(s, n_args, shape, sub, mul, hsr, sub, "-", "*", "<<", "-");
run_inner(s, n_args, shape, sub, mul, hsr, bus, "-", "*", "<<", "←");
run_inner(s, n_args, shape, sub, mul, hsr, mul, "-", "*", "<<", "*");
run_inner(s, n_args, shape, sub, mul, hsr, rsh, "-", "*", "<<", ">>");
run_inner(s, n_args, shape, sub, mul, hsr, hsr, "-", "*", "<<", "<<");
run_inner(s, n_args, shape, sub, rsh, and, and, "-", ">>", "&", "&");
run_inner(s, n_args, shape, sub, rsh, and, add, "-", ">>", "&", "+");
run_inner(s, n_args, shape, sub, rsh, and, xor, "-", ">>", "&", "^");
run_inner(s, n_args, shape, sub, rsh, and, or, "-", ">>", "&", "|");
run_inner(s, n_args, shape, sub, rsh, and, sub, "-", ">>", "&", "-");
run_inner(s, n_args, shape, sub, rsh, and, bus, "-", ">>", "&", "←");
run_inner(s, n_args, shape, sub, rsh, and, mul, "-", ">>", "&", "*");
run_inner(s, n_args, shape, sub, rsh, and, rsh, "-", ">>", "&", ">>");
run_inner(s, n_args, shape, sub, rsh, and, hsr, "-", ">>", "&", "<<");
run_inner(s, n_args, shape, sub, rsh, add, and, "-", ">>", "+", "&");
run_inner(s, n_args, shape, sub, rsh, add, add, "-", ">>", "+", "+");
run_inner(s, n_args, shape, sub, rsh, add, xor, "-", ">>", "+", "^");
run_inner(s, n_args, shape, sub, rsh, add, or, "-", ">>", "+", "|");
run_inner(s, n_args, shape, sub, rsh, add, sub, "-", ">>", "+", "-");
run_inner(s, n_args, shape, sub, rsh, add, bus, "-", ">>", "+", "←");
run_inner(s, n_args, shape, sub, rsh, add, mul, "-", ">>", "+", "*");
run_inner(s, n_args, shape, sub, rsh, add, rsh, "-", ">>", "+", ">>");
run_inner(s, n_args, shape, sub, rsh, add, hsr, "-", ">>", "+", "<<");
run_inner(s, n_args, shape, sub, rsh, xor, and, "-", ">>", "^", "&");
run_inner(s, n_args, shape, sub, rsh, xor, add, "-", ">>", "^", "+");
run_inner(s, n_args, shape, sub, rsh, xor, xor, "-", ">>", "^", "^");
run_inner(s, n_args, shape, sub, rsh, xor, or, "-", ">>", "^", "|");
run_inner(s, n_args, shape, sub, rsh, xor, sub, "-", ">>", "^", "-");
run_inner(s, n_args, shape, sub, rsh, xor, bus, "-", ">>", "^", "←");
run_inner(s, n_args, shape, sub, rsh, xor, mul, "-", ">>", "^", "*");
run_inner(s, n_args, shape, sub, rsh, xor, rsh, "-", ">>", "^", ">>");
run_inner(s, n_args, shape, sub, rsh, xor, hsr, "-", ">>", "^", "<<");
run_inner(s, n_args, shape, sub, rsh, or, and, "-", ">>", "|", "&");
run_inner(s, n_args, shape, sub, rsh, or, add, "-", ">>", "|", "+");
run_inner(s, n_args, shape, sub, rsh, or, xor, "-", ">>", "|", "^");
run_inner(s, n_args, shape, sub, rsh, or, or, "-", ">>", "|", "|");
run_inner(s, n_args, shape, sub, rsh, or, sub, "-", ">>", "|", "-");
run_inner(s, n_args, shape, sub, rsh, or, bus, "-", ">>", "|", "←");
run_inner(s, n_args, shape, sub, rsh, or, mul, "-", ">>", "|", "*");
run_inner(s, n_args, shape, sub, rsh, or, rsh, "-", ">>", "|", ">>");
run_inner(s, n_args, shape, sub, rsh, or, hsr, "-", ">>", "|", "<<");
run_inner(s, n_args, shape, sub, rsh, sub, and, "-", ">>", "-", "&");
run_inner(s, n_args, shape, sub, rsh, sub, add, "-", ">>", "-", "+");
run_inner(s, n_args, shape, sub, rsh, sub, xor, "-", ">>", "-", "^");
run_inner(s, n_args, shape, sub, rsh, sub, or, "-", ">>", "-", "|");
run_inner(s, n_args, shape, sub, rsh, sub, sub, "-", ">>", "-", "-");
run_inner(s, n_args, shape, sub, rsh, sub, bus, "-", ">>", "-", "←");
run_inner(s, n_args, shape, sub, rsh, sub, mul, "-", ">>", "-", "*");
run_inner(s, n_args, shape, sub, rsh, sub, rsh, "-", ">>", "-", ">>");
run_inner(s, n_args, shape, sub, rsh, sub, hsr, "-", ">>", "-", "<<");
run_inner(s, n_args, shape, sub, rsh, bus, and, "-", ">>", "←", "&");
run_inner(s, n_args, shape, sub, rsh, bus, add, "-", ">>", "←", "+");
run_inner(s, n_args, shape, sub, rsh, bus, xor, "-", ">>", "←", "^");
run_inner(s, n_args, shape, sub, rsh, bus, or, "-", ">>", "←", "|");
run_inner(s, n_args, shape, sub, rsh, bus, sub, "-", ">>", "←", "-");
run_inner(s, n_args, shape, sub, rsh, bus, bus, "-", ">>", "←", "←");
run_inner(s, n_args, shape, sub, rsh, bus, mul, "-", ">>", "←", "*");
run_inner(s, n_args, shape, sub, rsh, bus, rsh, "-", ">>", "←", ">>");
run_inner(s, n_args, shape, sub, rsh, bus, hsr, "-", ">>", "←", "<<");
run_inner(s, n_args, shape, sub, rsh, mul, and, "-", ">>", "*", "&");
run_inner(s, n_args, shape, sub, rsh, mul, add, "-", ">>", "*", "+");
run_inner(s, n_args, shape, sub, rsh, mul, xor, "-", ">>", "*", "^");
run_inner(s, n_args, shape, sub, rsh, mul, or, "-", ">>", "*", "|");
run_inner(s, n_args, shape, sub, rsh, mul, sub, "-", ">>", "*", "-");
run_inner(s, n_args, shape, sub, rsh, mul, bus, "-", ">>", "*", "←");
run_inner(s, n_args, shape, sub, rsh, mul, mul, "-", ">>", "*", "*");
run_inner(s, n_args, shape, sub, rsh, mul, rsh, "-", ">>", "*", ">>");
run_inner(s, n_args, shape, sub, rsh, mul, hsr, "-", ">>", "*", "<<");
run_inner(s, n_args, shape, sub, rsh, rsh, and, "-", ">>", ">>", "&");
run_inner(s, n_args, shape, sub, rsh, rsh, add, "-", ">>", ">>", "+");
run_inner(s, n_args, shape, sub, rsh, rsh, xor, "-", ">>", ">>", "^");
run_inner(s, n_args, shape, sub, rsh, rsh, or, "-", ">>", ">>", "|");
run_inner(s, n_args, shape, sub, rsh, rsh, sub, "-", ">>", ">>", "-");
run_inner(s, n_args, shape, sub, rsh, rsh, bus, "-", ">>", ">>", "←");
run_inner(s, n_args, shape, sub, rsh, rsh, mul, "-", ">>", ">>", "*");
run_inner(s, n_args, shape, sub, rsh, rsh, rsh, "-", ">>", ">>", ">>");
run_inner(s, n_args, shape, sub, rsh, rsh, hsr, "-", ">>", ">>", "<<");
run_inner(s, n_args, shape, sub, rsh, hsr, and, "-", ">>", "<<", "&");
run_inner(s, n_args, shape, sub, rsh, hsr, add, "-", ">>", "<<", "+");
run_inner(s, n_args, shape, sub, rsh, hsr, xor, "-", ">>", "<<", "^");
run_inner(s, n_args, shape, sub, rsh, hsr, or, "-", ">>", "<<", "|");
run_inner(s, n_args, shape, sub, rsh, hsr, sub, "-", ">>", "<<", "-");
run_inner(s, n_args, shape, sub, rsh, hsr, bus, "-", ">>", "<<", "←");
run_inner(s, n_args, shape, sub, rsh, hsr, mul, "-", ">>", "<<", "*");
run_inner(s, n_args, shape, sub, rsh, hsr, rsh, "-", ">>", "<<", ">>");
run_inner(s, n_args, shape, sub, rsh, hsr, hsr, "-", ">>", "<<", "<<");
run_inner(s, n_args, shape, sub, hsr, and, and, "-", "<<", "&", "&");
run_inner(s, n_args, shape, sub, hsr, and, add, "-", "<<", "&", "+");
run_inner(s, n_args, shape, sub, hsr, and, xor, "-", "<<", "&", "^");
run_inner(s, n_args, shape, sub, hsr, and, or, "-", "<<", "&", "|");
run_inner(s, n_args, shape, sub, hsr, and, sub, "-", "<<", "&", "-");
run_inner(s, n_args, shape, sub, hsr, and, bus, "-", "<<", "&", "←");
run_inner(s, n_args, shape, sub, hsr, and, mul, "-", "<<", "&", "*");
run_inner(s, n_args, shape, sub, hsr, and, rsh, "-", "<<", "&", ">>");
run_inner(s, n_args, shape, sub, hsr, and, hsr, "-", "<<", "&", "<<");
run_inner(s, n_args, shape, sub, hsr, add, and, "-", "<<", "+", "&");
run_inner(s, n_args, shape, sub, hsr, add, add, "-", "<<", "+", "+");
run_inner(s, n_args, shape, sub, hsr, add, xor, "-", "<<", "+", "^");
run_inner(s, n_args, shape, sub, hsr, add, or, "-", "<<", "+", "|");
run_inner(s, n_args, shape, sub, hsr, add, sub, "-", "<<", "+", "-");
run_inner(s, n_args, shape, sub, hsr, add, bus, "-", "<<", "+", "←");
run_inner(s, n_args, shape, sub, hsr, add, mul, "-", "<<", "+", "*");
run_inner(s, n_args, shape, sub, hsr, add, rsh, "-", "<<", "+", ">>");
run_inner(s, n_args, shape, sub, hsr, add, hsr, "-", "<<", "+", "<<");
run_inner(s, n_args, shape, sub, hsr, xor, and, "-", "<<", "^", "&");
run_inner(s, n_args, shape, sub, hsr, xor, add, "-", "<<", "^", "+");
run_inner(s, n_args, shape, sub, hsr, xor, xor, "-", "<<", "^", "^");
run_inner(s, n_args, shape, sub, hsr, xor, or, "-", "<<", "^", "|");
run_inner(s, n_args, shape, sub, hsr, xor, sub, "-", "<<", "^", "-");
run_inner(s, n_args, shape, sub, hsr, xor, bus, "-", "<<", "^", "←");
run_inner(s, n_args, shape, sub, hsr, xor, mul, "-", "<<", "^", "*");
run_inner(s, n_args, shape, sub, hsr, xor, rsh, "-", "<<", "^", ">>");
run_inner(s, n_args, shape, sub, hsr, xor, hsr, "-", "<<", "^", "<<");
run_inner(s, n_args, shape, sub, hsr, or, and, "-", "<<", "|", "&");
run_inner(s, n_args, shape, sub, hsr, or, add, "-", "<<", "|", "+");
run_inner(s, n_args, shape, sub, hsr, or, xor, "-", "<<", "|", "^");
run_inner(s, n_args, shape, sub, hsr, or, or, "-", "<<", "|", "|");
run_inner(s, n_args, shape, sub, hsr, or, sub, "-", "<<", "|", "-");
run_inner(s, n_args, shape, sub, hsr, or, bus, "-", "<<", "|", "←");
run_inner(s, n_args, shape, sub, hsr, or, mul, "-", "<<", "|", "*");
run_inner(s, n_args, shape, sub, hsr, or, rsh, "-", "<<", "|", ">>");
run_inner(s, n_args, shape, sub, hsr, or, hsr, "-", "<<", "|", "<<");
run_inner(s, n_args, shape, sub, hsr, sub, and, "-", "<<", "-", "&");
run_inner(s, n_args, shape, sub, hsr, sub, add, "-", "<<", "-", "+");
run_inner(s, n_args, shape, sub, hsr, sub, xor, "-", "<<", "-", "^");
run_inner(s, n_args, shape, sub, hsr, sub, or, "-", "<<", "-", "|");
run_inner(s, n_args, shape, sub, hsr, sub, sub, "-", "<<", "-", "-");
run_inner(s, n_args, shape, sub, hsr, sub, bus, "-", "<<", "-", "←");
run_inner(s, n_args, shape, sub, hsr, sub, mul, "-", "<<", "-", "*");
run_inner(s, n_args, shape, sub, hsr, sub, rsh, "-", "<<", "-", ">>");
run_inner(s, n_args, shape, sub, hsr, sub, hsr, "-", "<<", "-", "<<");
run_inner(s, n_args, shape, sub, hsr, bus, and, "-", "<<", "←", "&");
run_inner(s, n_args, shape, sub, hsr, bus, add, "-", "<<", "←", "+");
run_inner(s, n_args, shape, sub, hsr, bus, xor, "-", "<<", "←", "^");
run_inner(s, n_args, shape, sub, hsr, bus, or, "-", "<<", "←", "|");
run_inner(s, n_args, shape, sub, hsr, bus, sub, "-", "<<", "←", "-");
run_inner(s, n_args, shape, sub, hsr, bus, bus, "-", "<<", "←", "←");
run_inner(s, n_args, shape, sub, hsr, bus, mul, "-", "<<", "←", "*");
run_inner(s, n_args, shape, sub, hsr, bus, rsh, "-", "<<", "←", ">>");
run_inner(s, n_args, shape, sub, hsr, bus, hsr, "-", "<<", "←", "<<");
run_inner(s, n_args, shape, sub, hsr, mul, and, "-", "<<", "*", "&");
run_inner(s, n_args, shape, sub, hsr, mul, add, "-", "<<", "*", "+");
run_inner(s, n_args, shape, sub, hsr, mul, xor, "-", "<<", "*", "^");
run_inner(s, n_args, shape, sub, hsr, mul, or, "-", "<<", "*", "|");
run_inner(s, n_args, shape, sub, hsr, mul, sub, "-", "<<", "*", "-");
run_inner(s, n_args, shape, sub, hsr, mul, bus, "-", "<<", "*", "←");
run_inner(s, n_args, shape, sub, hsr, mul, mul, "-", "<<", "*", "*");
run_inner(s, n_args, shape, sub, hsr, mul, rsh, "-", "<<", "*", ">>");
run_inner(s, n_args, shape, sub, hsr, mul, hsr, "-", "<<", "*", "<<");
run_inner(s, n_args, shape, sub, hsr, rsh, and, "-", "<<", ">>", "&");
run_inner(s, n_args, shape, sub, hsr, rsh, add, "-", "<<", ">>", "+");
run_inner(s, n_args, shape, sub, hsr, rsh, xor, "-", "<<", ">>", "^");
run_inner(s, n_args, shape, sub, hsr, rsh, or, "-", "<<", ">>", "|");
run_inner(s, n_args, shape, sub, hsr, rsh, sub, "-", "<<", ">>", "-");
run_inner(s, n_args, shape, sub, hsr, rsh, bus, "-", "<<", ">>", "←");
run_inner(s, n_args, shape, sub, hsr, rsh, mul, "-", "<<", ">>", "*");
run_inner(s, n_args, shape, sub, hsr, rsh, rsh, "-", "<<", ">>", ">>");
run_inner(s, n_args, shape, sub, hsr, rsh, hsr, "-", "<<", ">>", "<<");
run_inner(s, n_args, shape, sub, hsr, hsr, and, "-", "<<", "<<", "&");
run_inner(s, n_args, shape, sub, hsr, hsr, add, "-", "<<", "<<", "+");
run_inner(s, n_args, shape, sub, hsr, hsr, xor, "-", "<<", "<<", "^");
run_inner(s, n_args, shape, sub, hsr, hsr, or, "-", "<<", "<<", "|");
run_inner(s, n_args, shape, sub, hsr, hsr, sub, "-", "<<", "<<", "-");
run_inner(s, n_args, shape, sub, hsr, hsr, bus, "-", "<<", "<<", "←");
run_inner(s, n_args, shape, sub, hsr, hsr, mul, "-", "<<", "<<", "*");
run_inner(s, n_args, shape, sub, hsr, hsr, rsh, "-", "<<", "<<", ">>");
run_inner(s, n_args, shape, sub, hsr, hsr, hsr, "-", "<<", "<<", "<<");
}));
threads.push(thread::spawn(move || {
run_inner(s, n_args, shape, bus, and, and, and, "←", "&", "&", "&");
run_inner(s, n_args, shape, bus, and, and, add, "←", "&", "&", "+");
run_inner(s, n_args, shape, bus, and, and, xor, "←", "&", "&", "^");
run_inner(s, n_args, shape, bus, and, and, or, "←", "&", "&", "|");
run_inner(s, n_args, shape, bus, and, and, sub, "←", "&", "&", "-");
run_inner(s, n_args, shape, bus, and, and, bus, "←", "&", "&", "←");
run_inner(s, n_args, shape, bus, and, and, mul, "←", "&", "&", "*");
run_inner(s, n_args, shape, bus, and, and, rsh, "←", "&", "&", ">>");
run_inner(s, n_args, shape, bus, and, and, hsr, "←", "&", "&", "<<");
run_inner(s, n_args, shape, bus, and, add, and, "←", "&", "+", "&");
run_inner(s, n_args, shape, bus, and, add, add, "←", "&", "+", "+");
run_inner(s, n_args, shape, bus, and, add, xor, "←", "&", "+", "^");
run_inner(s, n_args, shape, bus, and, add, or, "←", "&", "+", "|");
run_inner(s, n_args, shape, bus, and, add, sub, "←", "&", "+", "-");
run_inner(s, n_args, shape, bus, and, add, bus, "←", "&", "+", "←");
run_inner(s, n_args, shape, bus, and, add, mul, "←", "&", "+", "*");
run_inner(s, n_args, shape, bus, and, add, rsh, "←", "&", "+", ">>");
run_inner(s, n_args, shape, bus, and, add, hsr, "←", "&", "+", "<<");
run_inner(s, n_args, shape, bus, and, xor, and, "←", "&", "^", "&");
run_inner(s, n_args, shape, bus, and, xor, add, "←", "&", "^", "+");
run_inner(s, n_args, shape, bus, and, xor, xor, "←", "&", "^", "^");
run_inner(s, n_args, shape, bus, and, xor, or, "←", "&", "^", "|");
run_inner(s, n_args, shape, bus, and, xor, sub, "←", "&", "^", "-");
run_inner(s, n_args, shape, bus, and, xor, bus, "←", "&", "^", "←");
run_inner(s, n_args, shape, bus, and, xor, mul, "←", "&", "^", "*");
run_inner(s, n_args, shape, bus, and, xor, rsh, "←", "&", "^", ">>");
run_inner(s, n_args, shape, bus, and, xor, hsr, "←", "&", "^", "<<");
run_inner(s, n_args, shape, bus, and, or, and, "←", "&", "|", "&");
run_inner(s, n_args, shape, bus, and, or, add, "←", "&", "|", "+");
run_inner(s, n_args, shape, bus, and, or, xor, "←", "&", "|", "^");
run_inner(s, n_args, shape, bus, and, or, or, "←", "&", "|", "|");
run_inner(s, n_args, shape, bus, and, or, sub, "←", "&", "|", "-");
run_inner(s, n_args, shape, bus, and, or, bus, "←", "&", "|", "←");
run_inner(s, n_args, shape, bus, and, or, mul, "←", "&", "|", "*");
run_inner(s, n_args, shape, bus, and, or, rsh, "←", "&", "|", ">>");
run_inner(s, n_args, shape, bus, and, or, hsr, "←", "&", "|", "<<");
run_inner(s, n_args, shape, bus, and, sub, and, "←", "&", "-", "&");
run_inner(s, n_args, shape, bus, and, sub, add, "←", "&", "-", "+");
run_inner(s, n_args, shape, bus, and, sub, xor, "←", "&", "-", "^");
run_inner(s, n_args, shape, bus, and, sub, or, "←", "&", "-", "|");
run_inner(s, n_args, shape, bus, and, sub, sub, "←", "&", "-", "-");
run_inner(s, n_args, shape, bus, and, sub, bus, "←", "&", "-", "←");
run_inner(s, n_args, shape, bus, and, sub, mul, "←", "&", "-", "*");
run_inner(s, n_args, shape, bus, and, sub, rsh, "←", "&", "-", ">>");
run_inner(s, n_args, shape, bus, and, sub, hsr, "←", "&", "-", "<<");
run_inner(s, n_args, shape, bus, and, bus, and, "←", "&", "←", "&");
run_inner(s, n_args, shape, bus, and, bus, add, "←", "&", "←", "+");
run_inner(s, n_args, shape, bus, and, bus, xor, "←", "&", "←", "^");
run_inner(s, n_args, shape, bus, and, bus, or, "←", "&", "←", "|");
run_inner(s, n_args, shape, bus, and, bus, sub, "←", "&", "←", "-");
run_inner(s, n_args, shape, bus, and, bus, bus, "←", "&", "←", "←");
run_inner(s, n_args, shape, bus, and, bus, mul, "←", "&", "←", "*");
run_inner(s, n_args, shape, bus, and, bus, rsh, "←", "&", "←", ">>");
run_inner(s, n_args, shape, bus, and, bus, hsr, "←", "&", "←", "<<");
run_inner(s, n_args, shape, bus, and, mul, and, "←", "&", "*", "&");
run_inner(s, n_args, shape, bus, and, mul, add, "←", "&", "*", "+");
run_inner(s, n_args, shape, bus, and, mul, xor, "←", "&", "*", "^");
run_inner(s, n_args, shape, bus, and, mul, or, "←", "&", "*", "|");
run_inner(s, n_args, shape, bus, and, mul, sub, "←", "&", "*", "-");
run_inner(s, n_args, shape, bus, and, mul, bus, "←", "&", "*", "←");
run_inner(s, n_args, shape, bus, and, mul, mul, "←", "&", "*", "*");
run_inner(s, n_args, shape, bus, and, mul, rsh, "←", "&", "*", ">>");
run_inner(s, n_args, shape, bus, and, mul, hsr, "←", "&", "*", "<<");
run_inner(s, n_args, shape, bus, and, rsh, and, "←", "&", ">>", "&");
run_inner(s, n_args, shape, bus, and, rsh, add, "←", "&", ">>", "+");
run_inner(s, n_args, shape, bus, and, rsh, xor, "←", "&", ">>", "^");
run_inner(s, n_args, shape, bus, and, rsh, or, "←", "&", ">>", "|");
run_inner(s, n_args, shape, bus, and, rsh, sub, "←", "&", ">>", "-");
run_inner(s, n_args, shape, bus, and, rsh, bus, "←", "&", ">>", "←");
run_inner(s, n_args, shape, bus, and, rsh, mul, "←", "&", ">>", "*");
run_inner(s, n_args, shape, bus, and, rsh, rsh, "←", "&", ">>", ">>");
run_inner(s, n_args, shape, bus, and, rsh, hsr, "←", "&", ">>", "<<");
run_inner(s, n_args, shape, bus, and, hsr, and, "←", "&", "<<", "&");
run_inner(s, n_args, shape, bus, and, hsr, add, "←", "&", "<<", "+");
run_inner(s, n_args, shape, bus, and, hsr, xor, "←", "&", "<<", "^");
run_inner(s, n_args, shape, bus, and, hsr, or, "←", "&", "<<", "|");
run_inner(s, n_args, shape, bus, and, hsr, sub, "←", "&", "<<", "-");
run_inner(s, n_args, shape, bus, and, hsr, bus, "←", "&", "<<", "←");
run_inner(s, n_args, shape, bus, and, hsr, mul, "←", "&", "<<", "*");
run_inner(s, n_args, shape, bus, and, hsr, rsh, "←", "&", "<<", ">>");
run_inner(s, n_args, shape, bus, and, hsr, hsr, "←", "&", "<<", "<<");
run_inner(s, n_args, shape, bus, add, and, and, "←", "+", "&", "&");
run_inner(s, n_args, shape, bus, add, and, add, "←", "+", "&", "+");
run_inner(s, n_args, shape, bus, add, and, xor, "←", "+", "&", "^");
run_inner(s, n_args, shape, bus, add, and, or, "←", "+", "&", "|");
run_inner(s, n_args, shape, bus, add, and, sub, "←", "+", "&", "-");
run_inner(s, n_args, shape, bus, add, and, bus, "←", "+", "&", "←");
run_inner(s, n_args, shape, bus, add, and, mul, "←", "+", "&", "*");
run_inner(s, n_args, shape, bus, add, and, rsh, "←", "+", "&", ">>");
run_inner(s, n_args, shape, bus, add, and, hsr, "←", "+", "&", "<<");
run_inner(s, n_args, shape, bus, add, add, and, "←", "+", "+", "&");
run_inner(s, n_args, shape, bus, add, add, add, "←", "+", "+", "+");
run_inner(s, n_args, shape, bus, add, add, xor, "←", "+", "+", "^");
run_inner(s, n_args, shape, bus, add, add, or, "←", "+", "+", "|");
run_inner(s, n_args, shape, bus, add, add, sub, "←", "+", "+", "-");
run_inner(s, n_args, shape, bus, add, add, bus, "←", "+", "+", "←");
run_inner(s, n_args, shape, bus, add, add, mul, "←", "+", "+", "*");
run_inner(s, n_args, shape, bus, add, add, rsh, "←", "+", "+", ">>");
run_inner(s, n_args, shape, bus, add, add, hsr, "←", "+", "+", "<<");
run_inner(s, n_args, shape, bus, add, xor, and, "←", "+", "^", "&");
run_inner(s, n_args, shape, bus, add, xor, add, "←", "+", "^", "+");
run_inner(s, n_args, shape, bus, add, xor, xor, "←", "+", "^", "^");
run_inner(s, n_args, shape, bus, add, xor, or, "←", "+", "^", "|");
run_inner(s, n_args, shape, bus, add, xor, sub, "←", "+", "^", "-");
run_inner(s, n_args, shape, bus, add, xor, bus, "←", "+", "^", "←");
run_inner(s, n_args, shape, bus, add, xor, mul, "←", "+", "^", "*");
run_inner(s, n_args, shape, bus, add, xor, rsh, "←", "+", "^", ">>");
run_inner(s, n_args, shape, bus, add, xor, hsr, "←", "+", "^", "<<");
run_inner(s, n_args, shape, bus, add, or, and, "←", "+", "|", "&");
run_inner(s, n_args, shape, bus, add, or, add, "←", "+", "|", "+");
run_inner(s, n_args, shape, bus, add, or, xor, "←", "+", "|", "^");
run_inner(s, n_args, shape, bus, add, or, or, "←", "+", "|", "|");
run_inner(s, n_args, shape, bus, add, or, sub, "←", "+", "|", "-");
run_inner(s, n_args, shape, bus, add, or, bus, "←", "+", "|", "←");
run_inner(s, n_args, shape, bus, add, or, mul, "←", "+", "|", "*");
run_inner(s, n_args, shape, bus, add, or, rsh, "←", "+", "|", ">>");
run_inner(s, n_args, shape, bus, add, or, hsr, "←", "+", "|", "<<");
run_inner(s, n_args, shape, bus, add, sub, and, "←", "+", "-", "&");
run_inner(s, n_args, shape, bus, add, sub, add, "←", "+", "-", "+");
run_inner(s, n_args, shape, bus, add, sub, xor, "←", "+", "-", "^");
run_inner(s, n_args, shape, bus, add, sub, or, "←", "+", "-", "|");
run_inner(s, n_args, shape, bus, add, sub, sub, "←", "+", "-", "-");
run_inner(s, n_args, shape, bus, add, sub, bus, "←", "+", "-", "←");
run_inner(s, n_args, shape, bus, add, sub, mul, "←", "+", "-", "*");
run_inner(s, n_args, shape, bus, add, sub, rsh, "←", "+", "-", ">>");
run_inner(s, n_args, shape, bus, add, sub, hsr, "←", "+", "-", "<<");
run_inner(s, n_args, shape, bus, add, bus, and, "←", "+", "←", "&");
run_inner(s, n_args, shape, bus, add, bus, add, "←", "+", "←", "+");
run_inner(s, n_args, shape, bus, add, bus, xor, "←", "+", "←", "^");
run_inner(s, n_args, shape, bus, add, bus, or, "←", "+", "←", "|");
run_inner(s, n_args, shape, bus, add, bus, sub, "←", "+", "←", "-");
run_inner(s, n_args, shape, bus, add, bus, bus, "←", "+", "←", "←");
run_inner(s, n_args, shape, bus, add, bus, mul, "←", "+", "←", "*");
run_inner(s, n_args, shape, bus, add, bus, rsh, "←", "+", "←", ">>");
run_inner(s, n_args, shape, bus, add, bus, hsr, "←", "+", "←", "<<");
run_inner(s, n_args, shape, bus, add, mul, and, "←", "+", "*", "&");
run_inner(s, n_args, shape, bus, add, mul, add, "←", "+", "*", "+");
run_inner(s, n_args, shape, bus, add, mul, xor, "←", "+", "*", "^");
run_inner(s, n_args, shape, bus, add, mul, or, "←", "+", "*", "|");
run_inner(s, n_args, shape, bus, add, mul, sub, "←", "+", "*", "-");
run_inner(s, n_args, shape, bus, add, mul, bus, "←", "+", "*", "←");
run_inner(s, n_args, shape, bus, add, mul, mul, "←", "+", "*", "*");
run_inner(s, n_args, shape, bus, add, mul, rsh, "←", "+", "*", ">>");
run_inner(s, n_args, shape, bus, add, mul, hsr, "←", "+", "*", "<<");
run_inner(s, n_args, shape, bus, add, rsh, and, "←", "+", ">>", "&");
run_inner(s, n_args, shape, bus, add, rsh, add, "←", "+", ">>", "+");
run_inner(s, n_args, shape, bus, add, rsh, xor, "←", "+", ">>", "^");
run_inner(s, n_args, shape, bus, add, rsh, or, "←", "+", ">>", "|");
run_inner(s, n_args, shape, bus, add, rsh, sub, "←", "+", ">>", "-");
run_inner(s, n_args, shape, bus, add, rsh, bus, "←", "+", ">>", "←");
run_inner(s, n_args, shape, bus, add, rsh, mul, "←", "+", ">>", "*");
run_inner(s, n_args, shape, bus, add, rsh, rsh, "←", "+", ">>", ">>");
run_inner(s, n_args, shape, bus, add, rsh, hsr, "←", "+", ">>", "<<");
run_inner(s, n_args, shape, bus, add, hsr, and, "←", "+", "<<", "&");
run_inner(s, n_args, shape, bus, add, hsr, add, "←", "+", "<<", "+");
run_inner(s, n_args, shape, bus, add, hsr, xor, "←", "+", "<<", "^");
run_inner(s, n_args, shape, bus, add, hsr, or, "←", "+", "<<", "|");
run_inner(s, n_args, shape, bus, add, hsr, sub, "←", "+", "<<", "-");
run_inner(s, n_args, shape, bus, add, hsr, bus, "←", "+", "<<", "←");
run_inner(s, n_args, shape, bus, add, hsr, mul, "←", "+", "<<", "*");
run_inner(s, n_args, shape, bus, add, hsr, rsh, "←", "+", "<<", ">>");
run_inner(s, n_args, shape, bus, add, hsr, hsr, "←", "+", "<<", "<<");
run_inner(s, n_args, shape, bus, xor, and, and, "←", "^", "&", "&");
run_inner(s, n_args, shape, bus, xor, and, add, "←", "^", "&", "+");
run_inner(s, n_args, shape, bus, xor, and, xor, "←", "^", "&", "^");
run_inner(s, n_args, shape, bus, xor, and, or, "←", "^", "&", "|");
run_inner(s, n_args, shape, bus, xor, and, sub, "←", "^", "&", "-");
run_inner(s, n_args, shape, bus, xor, and, bus, "←", "^", "&", "←");
run_inner(s, n_args, shape, bus, xor, and, mul, "←", "^", "&", "*");
run_inner(s, n_args, shape, bus, xor, and, rsh, "←", "^", "&", ">>");
run_inner(s, n_args, shape, bus, xor, and, hsr, "←", "^", "&", "<<");
run_inner(s, n_args, shape, bus, xor, add, and, "←", "^", "+", "&");
run_inner(s, n_args, shape, bus, xor, add, add, "←", "^", "+", "+");
run_inner(s, n_args, shape, bus, xor, add, xor, "←", "^", "+", "^");
run_inner(s, n_args, shape, bus, xor, add, or, "←", "^", "+", "|");
run_inner(s, n_args, shape, bus, xor, add, sub, "←", "^", "+", "-");
run_inner(s, n_args, shape, bus, xor, add, bus, "←", "^", "+", "←");
run_inner(s, n_args, shape, bus, xor, add, mul, "←", "^", "+", "*");
run_inner(s, n_args, shape, bus, xor, add, rsh, "←", "^", "+", ">>");
run_inner(s, n_args, shape, bus, xor, add, hsr, "←", "^", "+", "<<");
run_inner(s, n_args, shape, bus, xor, xor, and, "←", "^", "^", "&");
run_inner(s, n_args, shape, bus, xor, xor, add, "←", "^", "^", "+");
run_inner(s, n_args, shape, bus, xor, xor, xor, "←", "^", "^", "^");
run_inner(s, n_args, shape, bus, xor, xor, or, "←", "^", "^", "|");
run_inner(s, n_args, shape, bus, xor, xor, sub, "←", "^", "^", "-");
run_inner(s, n_args, shape, bus, xor, xor, bus, "←", "^", "^", "←");
run_inner(s, n_args, shape, bus, xor, xor, mul, "←", "^", "^", "*");
run_inner(s, n_args, shape, bus, xor, xor, rsh, "←", "^", "^", ">>");
run_inner(s, n_args, shape, bus, xor, xor, hsr, "←", "^", "^", "<<");
run_inner(s, n_args, shape, bus, xor, or, and, "←", "^", "|", "&");
run_inner(s, n_args, shape, bus, xor, or, add, "←", "^", "|", "+");
run_inner(s, n_args, shape, bus, xor, or, xor, "←", "^", "|", "^");
run_inner(s, n_args, shape, bus, xor, or, or, "←", "^", "|", "|");
run_inner(s, n_args, shape, bus, xor, or, sub, "←", "^", "|", "-");
run_inner(s, n_args, shape, bus, xor, or, bus, "←", "^", "|", "←");
run_inner(s, n_args, shape, bus, xor, or, mul, "←", "^", "|", "*");
run_inner(s, n_args, shape, bus, xor, or, rsh, "←", "^", "|", ">>");
run_inner(s, n_args, shape, bus, xor, or, hsr, "←", "^", "|", "<<");
run_inner(s, n_args, shape, bus, xor, sub, and, "←", "^", "-", "&");
run_inner(s, n_args, shape, bus, xor, sub, add, "←", "^", "-", "+");
run_inner(s, n_args, shape, bus, xor, sub, xor, "←", "^", "-", "^");
run_inner(s, n_args, shape, bus, xor, sub, or, "←", "^", "-", "|");
run_inner(s, n_args, shape, bus, xor, sub, sub, "←", "^", "-", "-");
run_inner(s, n_args, shape, bus, xor, sub, bus, "←", "^", "-", "←");
run_inner(s, n_args, shape, bus, xor, sub, mul, "←", "^", "-", "*");
run_inner(s, n_args, shape, bus, xor, sub, rsh, "←", "^", "-", ">>");
run_inner(s, n_args, shape, bus, xor, sub, hsr, "←", "^", "-", "<<");
run_inner(s, n_args, shape, bus, xor, bus, and, "←", "^", "←", "&");
run_inner(s, n_args, shape, bus, xor, bus, add, "←", "^", "←", "+");
run_inner(s, n_args, shape, bus, xor, bus, xor, "←", "^", "←", "^");
run_inner(s, n_args, shape, bus, xor, bus, or, "←", "^", "←", "|");
run_inner(s, n_args, shape, bus, xor, bus, sub, "←", "^", "←", "-");
run_inner(s, n_args, shape, bus, xor, bus, bus, "←", "^", "←", "←");
run_inner(s, n_args, shape, bus, xor, bus, mul, "←", "^", "←", "*");
run_inner(s, n_args, shape, bus, xor, bus, rsh, "←", "^", "←", ">>");
run_inner(s, n_args, shape, bus, xor, bus, hsr, "←", "^", "←", "<<");
run_inner(s, n_args, shape, bus, xor, mul, and, "←", "^", "*", "&");
run_inner(s, n_args, shape, bus, xor, mul, add, "←", "^", "*", "+");
run_inner(s, n_args, shape, bus, xor, mul, xor, "←", "^", "*", "^");
run_inner(s, n_args, shape, bus, xor, mul, or, "←", "^", "*", "|");
run_inner(s, n_args, shape, bus, xor, mul, sub, "←", "^", "*", "-");
run_inner(s, n_args, shape, bus, xor, mul, bus, "←", "^", "*", "←");
run_inner(s, n_args, shape, bus, xor, mul, mul, "←", "^", "*", "*");
run_inner(s, n_args, shape, bus, xor, mul, rsh, "←", "^", "*", ">>");
run_inner(s, n_args, shape, bus, xor, mul, hsr, "←", "^", "*", "<<");
run_inner(s, n_args, shape, bus, xor, rsh, and, "←", "^", ">>", "&");
run_inner(s, n_args, shape, bus, xor, rsh, add, "←", "^", ">>", "+");
run_inner(s, n_args, shape, bus, xor, rsh, xor, "←", "^", ">>", "^");
run_inner(s, n_args, shape, bus, xor, rsh, or, "←", "^", ">>", "|");
run_inner(s, n_args, shape, bus, xor, rsh, sub, "←", "^", ">>", "-");
run_inner(s, n_args, shape, bus, xor, rsh, bus, "←", "^", ">>", "←");
run_inner(s, n_args, shape, bus, xor, rsh, mul, "←", "^", ">>", "*");
run_inner(s, n_args, shape, bus, xor, rsh, rsh, "←", "^", ">>", ">>");
run_inner(s, n_args, shape, bus, xor, rsh, hsr, "←", "^", ">>", "<<");
run_inner(s, n_args, shape, bus, xor, hsr, and, "←", "^", "<<", "&");
run_inner(s, n_args, shape, bus, xor, hsr, add, "←", "^", "<<", "+");
run_inner(s, n_args, shape, bus, xor, hsr, xor, "←", "^", "<<", "^");
run_inner(s, n_args, shape, bus, xor, hsr, or, "←", "^", "<<", "|");
run_inner(s, n_args, shape, bus, xor, hsr, sub, "←", "^", "<<", "-");
run_inner(s, n_args, shape, bus, xor, hsr, bus, "←", "^", "<<", "←");
run_inner(s, n_args, shape, bus, xor, hsr, mul, "←", "^", "<<", "*");
run_inner(s, n_args, shape, bus, xor, hsr, rsh, "←", "^", "<<", ">>");
run_inner(s, n_args, shape, bus, xor, hsr, hsr, "←", "^", "<<", "<<");
run_inner(s, n_args, shape, bus, or, and, and, "←", "|", "&", "&");
run_inner(s, n_args, shape, bus, or, and, add, "←", "|", "&", "+");
run_inner(s, n_args, shape, bus, or, and, xor, "←", "|", "&", "^");
run_inner(s, n_args, shape, bus, or, and, or, "←", "|", "&", "|");
run_inner(s, n_args, shape, bus, or, and, sub, "←", "|", "&", "-");
run_inner(s, n_args, shape, bus, or, and, bus, "←", "|", "&", "←");
run_inner(s, n_args, shape, bus, or, and, mul, "←", "|", "&", "*");
run_inner(s, n_args, shape, bus, or, and, rsh, "←", "|", "&", ">>");
run_inner(s, n_args, shape, bus, or, and, hsr, "←", "|", "&", "<<");
run_inner(s, n_args, shape, bus, or, add, and, "←", "|", "+", "&");
run_inner(s, n_args, shape, bus, or, add, add, "←", "|", "+", "+");
run_inner(s, n_args, shape, bus, or, add, xor, "←", "|", "+", "^");
run_inner(s, n_args, shape, bus, or, add, or, "←", "|", "+", "|");
run_inner(s, n_args, shape, bus, or, add, sub, "←", "|", "+", "-");
run_inner(s, n_args, shape, bus, or, add, bus, "←", "|", "+", "←");
run_inner(s, n_args, shape, bus, or, add, mul, "←", "|", "+", "*");
run_inner(s, n_args, shape, bus, or, add, rsh, "←", "|", "+", ">>");
run_inner(s, n_args, shape, bus, or, add, hsr, "←", "|", "+", "<<");
run_inner(s, n_args, shape, bus, or, xor, and, "←", "|", "^", "&");
run_inner(s, n_args, shape, bus, or, xor, add, "←", "|", "^", "+");
run_inner(s, n_args, shape, bus, or, xor, xor, "←", "|", "^", "^");
run_inner(s, n_args, shape, bus, or, xor, or, "←", "|", "^", "|");
run_inner(s, n_args, shape, bus, or, xor, sub, "←", "|", "^", "-");
run_inner(s, n_args, shape, bus, or, xor, bus, "←", "|", "^", "←");
run_inner(s, n_args, shape, bus, or, xor, mul, "←", "|", "^", "*");
run_inner(s, n_args, shape, bus, or, xor, rsh, "←", "|", "^", ">>");
run_inner(s, n_args, shape, bus, or, xor, hsr, "←", "|", "^", "<<");
run_inner(s, n_args, shape, bus, or, or, and, "←", "|", "|", "&");
run_inner(s, n_args, shape, bus, or, or, add, "←", "|", "|", "+");
run_inner(s, n_args, shape, bus, or, or, xor, "←", "|", "|", "^");
run_inner(s, n_args, shape, bus, or, or, or, "←", "|", "|", "|");
run_inner(s, n_args, shape, bus, or, or, sub, "←", "|", "|", "-");
run_inner(s, n_args, shape, bus, or, or, bus, "←", "|", "|", "←");
run_inner(s, n_args, shape, bus, or, or, mul, "←", "|", "|", "*");
run_inner(s, n_args, shape, bus, or, or, rsh, "←", "|", "|", ">>");
run_inner(s, n_args, shape, bus, or, or, hsr, "←", "|", "|", "<<");
run_inner(s, n_args, shape, bus, or, sub, and, "←", "|", "-", "&");
run_inner(s, n_args, shape, bus, or, sub, add, "←", "|", "-", "+");
run_inner(s, n_args, shape, bus, or, sub, xor, "←", "|", "-", "^");
run_inner(s, n_args, shape, bus, or, sub, or, "←", "|", "-", "|");
run_inner(s, n_args, shape, bus, or, sub, sub, "←", "|", "-", "-");
run_inner(s, n_args, shape, bus, or, sub, bus, "←", "|", "-", "←");
run_inner(s, n_args, shape, bus, or, sub, mul, "←", "|", "-", "*");
run_inner(s, n_args, shape, bus, or, sub, rsh, "←", "|", "-", ">>");
run_inner(s, n_args, shape, bus, or, sub, hsr, "←", "|", "-", "<<");
run_inner(s, n_args, shape, bus, or, bus, and, "←", "|", "←", "&");
run_inner(s, n_args, shape, bus, or, bus, add, "←", "|", "←", "+");
run_inner(s, n_args, shape, bus, or, bus, xor, "←", "|", "←", "^");
run_inner(s, n_args, shape, bus, or, bus, or, "←", "|", "←", "|");
run_inner(s, n_args, shape, bus, or, bus, sub, "←", "|", "←", "-");
run_inner(s, n_args, shape, bus, or, bus, bus, "←", "|", "←", "←");
run_inner(s, n_args, shape, bus, or, bus, mul, "←", "|", "←", "*");
run_inner(s, n_args, shape, bus, or, bus, rsh, "←", "|", "←", ">>");
run_inner(s, n_args, shape, bus, or, bus, hsr, "←", "|", "←", "<<");
run_inner(s, n_args, shape, bus, or, mul, and, "←", "|", "*", "&");
run_inner(s, n_args, shape, bus, or, mul, add, "←", "|", "*", "+");
run_inner(s, n_args, shape, bus, or, mul, xor, "←", "|", "*", "^");
run_inner(s, n_args, shape, bus, or, mul, or, "←", "|", "*", "|");
run_inner(s, n_args, shape, bus, or, mul, sub, "←", "|", "*", "-");
run_inner(s, n_args, shape, bus, or, mul, bus, "←", "|", "*", "←");
run_inner(s, n_args, shape, bus, or, mul, mul, "←", "|", "*", "*");
run_inner(s, n_args, shape, bus, or, mul, rsh, "←", "|", "*", ">>");
run_inner(s, n_args, shape, bus, or, mul, hsr, "←", "|", "*", "<<");
run_inner(s, n_args, shape, bus, or, rsh, and, "←", "|", ">>", "&");
run_inner(s, n_args, shape, bus, or, rsh, add, "←", "|", ">>", "+");
run_inner(s, n_args, shape, bus, or, rsh, xor, "←", "|", ">>", "^");
run_inner(s, n_args, shape, bus, or, rsh, or, "←", "|", ">>", "|");
run_inner(s, n_args, shape, bus, or, rsh, sub, "←", "|", ">>", "-");
run_inner(s, n_args, shape, bus, or, rsh, bus, "←", "|", ">>", "←");
run_inner(s, n_args, shape, bus, or, rsh, mul, "←", "|", ">>", "*");
run_inner(s, n_args, shape, bus, or, rsh, rsh, "←", "|", ">>", ">>");
run_inner(s, n_args, shape, bus, or, rsh, hsr, "←", "|", ">>", "<<");
run_inner(s, n_args, shape, bus, or, hsr, and, "←", "|", "<<", "&");
run_inner(s, n_args, shape, bus, or, hsr, add, "←", "|", "<<", "+");
run_inner(s, n_args, shape, bus, or, hsr, xor, "←", "|", "<<", "^");
run_inner(s, n_args, shape, bus, or, hsr, or, "←", "|", "<<", "|");
run_inner(s, n_args, shape, bus, or, hsr, sub, "←", "|", "<<", "-");
run_inner(s, n_args, shape, bus, or, hsr, bus, "←", "|", "<<", "←");
run_inner(s, n_args, shape, bus, or, hsr, mul, "←", "|", "<<", "*");
run_inner(s, n_args, shape, bus, or, hsr, rsh, "←", "|", "<<", ">>");
run_inner(s, n_args, shape, bus, or, hsr, hsr, "←", "|", "<<", "<<");
run_inner(s, n_args, shape, bus, sub, and, and, "←", "-", "&", "&");
run_inner(s, n_args, shape, bus, sub, and, add, "←", "-", "&", "+");
run_inner(s, n_args, shape, bus, sub, and, xor, "←", "-", "&", "^");
run_inner(s, n_args, shape, bus, sub, and, or, "←", "-", "&", "|");
run_inner(s, n_args, shape, bus, sub, and, sub, "←", "-", "&", "-");
run_inner(s, n_args, shape, bus, sub, and, bus, "←", "-", "&", "←");
run_inner(s, n_args, shape, bus, sub, and, mul, "←", "-", "&", "*");
run_inner(s, n_args, shape, bus, sub, and, rsh, "←", "-", "&", ">>");
run_inner(s, n_args, shape, bus, sub, and, hsr, "←", "-", "&", "<<");
run_inner(s, n_args, shape, bus, sub, add, and, "←", "-", "+", "&");
run_inner(s, n_args, shape, bus, sub, add, add, "←", "-", "+", "+");
run_inner(s, n_args, shape, bus, sub, add, xor, "←", "-", "+", "^");
run_inner(s, n_args, shape, bus, sub, add, or, "←", "-", "+", "|");
run_inner(s, n_args, shape, bus, sub, add, sub, "←", "-", "+", "-");
run_inner(s, n_args, shape, bus, sub, add, bus, "←", "-", "+", "←");
run_inner(s, n_args, shape, bus, sub, add, mul, "←", "-", "+", "*");
run_inner(s, n_args, shape, bus, sub, add, rsh, "←", "-", "+", ">>");
run_inner(s, n_args, shape, bus, sub, add, hsr, "←", "-", "+", "<<");
run_inner(s, n_args, shape, bus, sub, xor, and, "←", "-", "^", "&");
run_inner(s, n_args, shape, bus, sub, xor, add, "←", "-", "^", "+");
run_inner(s, n_args, shape, bus, sub, xor, xor, "←", "-", "^", "^");
run_inner(s, n_args, shape, bus, sub, xor, or, "←", "-", "^", "|");
run_inner(s, n_args, shape, bus, sub, xor, sub, "←", "-", "^", "-");
run_inner(s, n_args, shape, bus, sub, xor, bus, "←", "-", "^", "←");
run_inner(s, n_args, shape, bus, sub, xor, mul, "←", "-", "^", "*");
run_inner(s, n_args, shape, bus, sub, xor, rsh, "←", "-", "^", ">>");
run_inner(s, n_args, shape, bus, sub, xor, hsr, "←", "-", "^", "<<");
run_inner(s, n_args, shape, bus, sub, or, and, "←", "-", "|", "&");
run_inner(s, n_args, shape, bus, sub, or, add, "←", "-", "|", "+");
run_inner(s, n_args, shape, bus, sub, or, xor, "←", "-", "|", "^");
run_inner(s, n_args, shape, bus, sub, or, or, "←", "-", "|", "|");
run_inner(s, n_args, shape, bus, sub, or, sub, "←", "-", "|", "-");
run_inner(s, n_args, shape, bus, sub, or, bus, "←", "-", "|", "←");
run_inner(s, n_args, shape, bus, sub, or, mul, "←", "-", "|", "*");
run_inner(s, n_args, shape, bus, sub, or, rsh, "←", "-", "|", ">>");
run_inner(s, n_args, shape, bus, sub, or, hsr, "←", "-", "|", "<<");
run_inner(s, n_args, shape, bus, sub, sub, and, "←", "-", "-", "&");
run_inner(s, n_args, shape, bus, sub, sub, add, "←", "-", "-", "+");
run_inner(s, n_args, shape, bus, sub, sub, xor, "←", "-", "-", "^");
run_inner(s, n_args, shape, bus, sub, sub, or, "←", "-", "-", "|");
run_inner(s, n_args, shape, bus, sub, sub, sub, "←", "-", "-", "-");
run_inner(s, n_args, shape, bus, sub, sub, bus, "←", "-", "-", "←");
run_inner(s, n_args, shape, bus, sub, sub, mul, "←", "-", "-", "*");
run_inner(s, n_args, shape, bus, sub, sub, rsh, "←", "-", "-", ">>");
run_inner(s, n_args, shape, bus, sub, sub, hsr, "←", "-", "-", "<<");
run_inner(s, n_args, shape, bus, sub, bus, and, "←", "-", "←", "&");
run_inner(s, n_args, shape, bus, sub, bus, add, "←", "-", "←", "+");
run_inner(s, n_args, shape, bus, sub, bus, xor, "←", "-", "←", "^");
run_inner(s, n_args, shape, bus, sub, bus, or, "←", "-", "←", "|");
run_inner(s, n_args, shape, bus, sub, bus, sub, "←", "-", "←", "-");
run_inner(s, n_args, shape, bus, sub, bus, bus, "←", "-", "←", "←");
run_inner(s, n_args, shape, bus, sub, bus, mul, "←", "-", "←", "*");
run_inner(s, n_args, shape, bus, sub, bus, rsh, "←", "-", "←", ">>");
run_inner(s, n_args, shape, bus, sub, bus, hsr, "←", "-", "←", "<<");
run_inner(s, n_args, shape, bus, sub, mul, and, "←", "-", "*", "&");
run_inner(s, n_args, shape, bus, sub, mul, add, "←", "-", "*", "+");
run_inner(s, n_args, shape, bus, sub, mul, xor, "←", "-", "*", "^");
run_inner(s, n_args, shape, bus, sub, mul, or, "←", "-", "*", "|");
run_inner(s, n_args, shape, bus, sub, mul, sub, "←", "-", "*", "-");
run_inner(s, n_args, shape, bus, sub, mul, bus, "←", "-", "*", "←");
run_inner(s, n_args, shape, bus, sub, mul, mul, "←", "-", "*", "*");
run_inner(s, n_args, shape, bus, sub, mul, rsh, "←", "-", "*", ">>");
run_inner(s, n_args, shape, bus, sub, mul, hsr, "←", "-", "*", "<<");
run_inner(s, n_args, shape, bus, sub, rsh, and, "←", "-", ">>", "&");
run_inner(s, n_args, shape, bus, sub, rsh, add, "←", "-", ">>", "+");
run_inner(s, n_args, shape, bus, sub, rsh, xor, "←", "-", ">>", "^");
run_inner(s, n_args, shape, bus, sub, rsh, or, "←", "-", ">>", "|");
run_inner(s, n_args, shape, bus, sub, rsh, sub, "←", "-", ">>", "-");
run_inner(s, n_args, shape, bus, sub, rsh, bus, "←", "-", ">>", "←");
run_inner(s, n_args, shape, bus, sub, rsh, mul, "←", "-", ">>", "*");
run_inner(s, n_args, shape, bus, sub, rsh, rsh, "←", "-", ">>", ">>");
run_inner(s, n_args, shape, bus, sub, rsh, hsr, "←", "-", ">>", "<<");
run_inner(s, n_args, shape, bus, sub, hsr, and, "←", "-", "<<", "&");
run_inner(s, n_args, shape, bus, sub, hsr, add, "←", "-", "<<", "+");
run_inner(s, n_args, shape, bus, sub, hsr, xor, "←", "-", "<<", "^");
run_inner(s, n_args, shape, bus, sub, hsr, or, "←", "-", "<<", "|");
run_inner(s, n_args, shape, bus, sub, hsr, sub, "←", "-", "<<", "-");
run_inner(s, n_args, shape, bus, sub, hsr, bus, "←", "-", "<<", "←");
run_inner(s, n_args, shape, bus, sub, hsr, mul, "←", "-", "<<", "*");
run_inner(s, n_args, shape, bus, sub, hsr, rsh, "←", "-", "<<", ">>");
run_inner(s, n_args, shape, bus, sub, hsr, hsr, "←", "-", "<<", "<<");
run_inner(s, n_args, shape, bus, bus, and, and, "←", "←", "&", "&");
run_inner(s, n_args, shape, bus, bus, and, add, "←", "←", "&", "+");
run_inner(s, n_args, shape, bus, bus, and, xor, "←", "←", "&", "^");
run_inner(s, n_args, shape, bus, bus, and, or, "←", "←", "&", "|");
run_inner(s, n_args, shape, bus, bus, and, sub, "←", "←", "&", "-");
run_inner(s, n_args, shape, bus, bus, and, bus, "←", "←", "&", "←");
run_inner(s, n_args, shape, bus, bus, and, mul, "←", "←", "&", "*");
run_inner(s, n_args, shape, bus, bus, and, rsh, "←", "←", "&", ">>");
run_inner(s, n_args, shape, bus, bus, and, hsr, "←", "←", "&", "<<");
run_inner(s, n_args, shape, bus, bus, add, and, "←", "←", "+", "&");
run_inner(s, n_args, shape, bus, bus, add, add, "←", "←", "+", "+");
run_inner(s, n_args, shape, bus, bus, add, xor, "←", "←", "+", "^");
run_inner(s, n_args, shape, bus, bus, add, or, "←", "←", "+", "|");
run_inner(s, n_args, shape, bus, bus, add, sub, "←", "←", "+", "-");
run_inner(s, n_args, shape, bus, bus, add, bus, "←", "←", "+", "←");
run_inner(s, n_args, shape, bus, bus, add, mul, "←", "←", "+", "*");
run_inner(s, n_args, shape, bus, bus, add, rsh, "←", "←", "+", ">>");
run_inner(s, n_args, shape, bus, bus, add, hsr, "←", "←", "+", "<<");
run_inner(s, n_args, shape, bus, bus, xor, and, "←", "←", "^", "&");
run_inner(s, n_args, shape, bus, bus, xor, add, "←", "←", "^", "+");
run_inner(s, n_args, shape, bus, bus, xor, xor, "←", "←", "^", "^");
run_inner(s, n_args, shape, bus, bus, xor, or, "←", "←", "^", "|");
run_inner(s, n_args, shape, bus, bus, xor, sub, "←", "←", "^", "-");
run_inner(s, n_args, shape, bus, bus, xor, bus, "←", "←", "^", "←");
run_inner(s, n_args, shape, bus, bus, xor, mul, "←", "←", "^", "*");
run_inner(s, n_args, shape, bus, bus, xor, rsh, "←", "←", "^", ">>");
run_inner(s, n_args, shape, bus, bus, xor, hsr, "←", "←", "^", "<<");
run_inner(s, n_args, shape, bus, bus, or, and, "←", "←", "|", "&");
run_inner(s, n_args, shape, bus, bus, or, add, "←", "←", "|", "+");
run_inner(s, n_args, shape, bus, bus, or, xor, "←", "←", "|", "^");
run_inner(s, n_args, shape, bus, bus, or, or, "←", "←", "|", "|");
run_inner(s, n_args, shape, bus, bus, or, sub, "←", "←", "|", "-");
run_inner(s, n_args, shape, bus, bus, or, bus, "←", "←", "|", "←");
run_inner(s, n_args, shape, bus, bus, or, mul, "←", "←", "|", "*");
run_inner(s, n_args, shape, bus, bus, or, rsh, "←", "←", "|", ">>");
run_inner(s, n_args, shape, bus, bus, or, hsr, "←", "←", "|", "<<");
run_inner(s, n_args, shape, bus, bus, sub, and, "←", "←", "-", "&");
run_inner(s, n_args, shape, bus, bus, sub, add, "←", "←", "-", "+");
run_inner(s, n_args, shape, bus, bus, sub, xor, "←", "←", "-", "^");
run_inner(s, n_args, shape, bus, bus, sub, or, "←", "←", "-", "|");
run_inner(s, n_args, shape, bus, bus, sub, sub, "←", "←", "-", "-");
run_inner(s, n_args, shape, bus, bus, sub, bus, "←", "←", "-", "←");
run_inner(s, n_args, shape, bus, bus, sub, mul, "←", "←", "-", "*");
run_inner(s, n_args, shape, bus, bus, sub, rsh, "←", "←", "-", ">>");
run_inner(s, n_args, shape, bus, bus, sub, hsr, "←", "←", "-", "<<");
run_inner(s, n_args, shape, bus, bus, bus, and, "←", "←", "←", "&");
run_inner(s, n_args, shape, bus, bus, bus, add, "←", "←", "←", "+");
run_inner(s, n_args, shape, bus, bus, bus, xor, "←", "←", "←", "^");
run_inner(s, n_args, shape, bus, bus, bus, or, "←", "←", "←", "|");
run_inner(s, n_args, shape, bus, bus, bus, sub, "←", "←", "←", "-");
run_inner(s, n_args, shape, bus, bus, bus, bus, "←", "←", "←", "←");
run_inner(s, n_args, shape, bus, bus, bus, mul, "←", "←", "←", "*");
run_inner(s, n_args, shape, bus, bus, bus, rsh, "←", "←", "←", ">>");
run_inner(s, n_args, shape, bus, bus, bus, hsr, "←", "←", "←", "<<");
run_inner(s, n_args, shape, bus, bus, mul, and, "←", "←", "*", "&");
run_inner(s, n_args, shape, bus, bus, mul, add, "←", "←", "*", "+");
run_inner(s, n_args, shape, bus, bus, mul, xor, "←", "←", "*", "^");
run_inner(s, n_args, shape, bus, bus, mul, or, "←", "←", "*", "|");
run_inner(s, n_args, shape, bus, bus, mul, sub, "←", "←", "*", "-");
run_inner(s, n_args, shape, bus, bus, mul, bus, "←", "←", "*", "←");
run_inner(s, n_args, shape, bus, bus, mul, mul, "←", "←", "*", "*");
run_inner(s, n_args, shape, bus, bus, mul, rsh, "←", "←", "*", ">>");
run_inner(s, n_args, shape, bus, bus, mul, hsr, "←", "←", "*", "<<");
run_inner(s, n_args, shape, bus, bus, rsh, and, "←", "←", ">>", "&");
run_inner(s, n_args, shape, bus, bus, rsh, add, "←", "←", ">>", "+");
run_inner(s, n_args, shape, bus, bus, rsh, xor, "←", "←", ">>", "^");
run_inner(s, n_args, shape, bus, bus, rsh, or, "←", "←", ">>", "|");
run_inner(s, n_args, shape, bus, bus, rsh, sub, "←", "←", ">>", "-");
run_inner(s, n_args, shape, bus, bus, rsh, bus, "←", "←", ">>", "←");
run_inner(s, n_args, shape, bus, bus, rsh, mul, "←", "←", ">>", "*");
run_inner(s, n_args, shape, bus, bus, rsh, rsh, "←", "←", ">>", ">>");
run_inner(s, n_args, shape, bus, bus, rsh, hsr, "←", "←", ">>", "<<");
run_inner(s, n_args, shape, bus, bus, hsr, and, "←", "←", "<<", "&");
run_inner(s, n_args, shape, bus, bus, hsr, add, "←", "←", "<<", "+");
run_inner(s, n_args, shape, bus, bus, hsr, xor, "←", "←", "<<", "^");
run_inner(s, n_args, shape, bus, bus, hsr, or, "←", "←", "<<", "|");
run_inner(s, n_args, shape, bus, bus, hsr, sub, "←", "←", "<<", "-");
run_inner(s, n_args, shape, bus, bus, hsr, bus, "←", "←", "<<", "←");
run_inner(s, n_args, shape, bus, bus, hsr, mul, "←", "←", "<<", "*");
run_inner(s, n_args, shape, bus, bus, hsr, rsh, "←", "←", "<<", ">>");
run_inner(s, n_args, shape, bus, bus, hsr, hsr, "←", "←", "<<", "<<");
run_inner(s, n_args, shape, bus, mul, and, and, "←", "*", "&", "&");
run_inner(s, n_args, shape, bus, mul, and, add, "←", "*", "&", "+");
run_inner(s, n_args, shape, bus, mul, and, xor, "←", "*", "&", "^");
run_inner(s, n_args, shape, bus, mul, and, or, "←", "*", "&", "|");
run_inner(s, n_args, shape, bus, mul, and, sub, "←", "*", "&", "-");
run_inner(s, n_args, shape, bus, mul, and, bus, "←", "*", "&", "←");
run_inner(s, n_args, shape, bus, mul, and, mul, "←", "*", "&", "*");
run_inner(s, n_args, shape, bus, mul, and, rsh, "←", "*", "&", ">>");
run_inner(s, n_args, shape, bus, mul, and, hsr, "←", "*", "&", "<<");
run_inner(s, n_args, shape, bus, mul, add, and, "←", "*", "+", "&");
run_inner(s, n_args, shape, bus, mul, add, add, "←", "*", "+", "+");
run_inner(s, n_args, shape, bus, mul, add, xor, "←", "*", "+", "^");
run_inner(s, n_args, shape, bus, mul, add, or, "←", "*", "+", "|");
run_inner(s, n_args, shape, bus, mul, add, sub, "←", "*", "+", "-");
run_inner(s, n_args, shape, bus, mul, add, bus, "←", "*", "+", "←");
run_inner(s, n_args, shape, bus, mul, add, mul, "←", "*", "+", "*");
run_inner(s, n_args, shape, bus, mul, add, rsh, "←", "*", "+", ">>");
run_inner(s, n_args, shape, bus, mul, add, hsr, "←", "*", "+", "<<");
run_inner(s, n_args, shape, bus, mul, xor, and, "←", "*", "^", "&");
run_inner(s, n_args, shape, bus, mul, xor, add, "←", "*", "^", "+");
run_inner(s, n_args, shape, bus, mul, xor, xor, "←", "*", "^", "^");
run_inner(s, n_args, shape, bus, mul, xor, or, "←", "*", "^", "|");
run_inner(s, n_args, shape, bus, mul, xor, sub, "←", "*", "^", "-");
run_inner(s, n_args, shape, bus, mul, xor, bus, "←", "*", "^", "←");
run_inner(s, n_args, shape, bus, mul, xor, mul, "←", "*", "^", "*");
run_inner(s, n_args, shape, bus, mul, xor, rsh, "←", "*", "^", ">>");
run_inner(s, n_args, shape, bus, mul, xor, hsr, "←", "*", "^", "<<");
run_inner(s, n_args, shape, bus, mul, or, and, "←", "*", "|", "&");
run_inner(s, n_args, shape, bus, mul, or, add, "←", "*", "|", "+");
run_inner(s, n_args, shape, bus, mul, or, xor, "←", "*", "|", "^");
run_inner(s, n_args, shape, bus, mul, or, or, "←", "*", "|", "|");
run_inner(s, n_args, shape, bus, mul, or, sub, "←", "*", "|", "-");
run_inner(s, n_args, shape, bus, mul, or, bus, "←", "*", "|", "←");
run_inner(s, n_args, shape, bus, mul, or, mul, "←", "*", "|", "*");
run_inner(s, n_args, shape, bus, mul, or, rsh, "←", "*", "|", ">>");
run_inner(s, n_args, shape, bus, mul, or, hsr, "←", "*", "|", "<<");
run_inner(s, n_args, shape, bus, mul, sub, and, "←", "*", "-", "&");
run_inner(s, n_args, shape, bus, mul, sub, add, "←", "*", "-", "+");
run_inner(s, n_args, shape, bus, mul, sub, xor, "←", "*", "-", "^");
run_inner(s, n_args, shape, bus, mul, sub, or, "←", "*", "-", "|");
run_inner(s, n_args, shape, bus, mul, sub, sub, "←", "*", "-", "-");
run_inner(s, n_args, shape, bus, mul, sub, bus, "←", "*", "-", "←");
run_inner(s, n_args, shape, bus, mul, sub, mul, "←", "*", "-", "*");
run_inner(s, n_args, shape, bus, mul, sub, rsh, "←", "*", "-", ">>");
run_inner(s, n_args, shape, bus, mul, sub, hsr, "←", "*", "-", "<<");
run_inner(s, n_args, shape, bus, mul, bus, and, "←", "*", "←", "&");
run_inner(s, n_args, shape, bus, mul, bus, add, "←", "*", "←", "+");
run_inner(s, n_args, shape, bus, mul, bus, xor, "←", "*", "←", "^");
run_inner(s, n_args, shape, bus, mul, bus, or, "←", "*", "←", "|");
run_inner(s, n_args, shape, bus, mul, bus, sub, "←", "*", "←", "-");
run_inner(s, n_args, shape, bus, mul, bus, bus, "←", "*", "←", "←");
run_inner(s, n_args, shape, bus, mul, bus, mul, "←", "*", "←", "*");
run_inner(s, n_args, shape, bus, mul, bus, rsh, "←", "*", "←", ">>");
run_inner(s, n_args, shape, bus, mul, bus, hsr, "←", "*", "←", "<<");
run_inner(s, n_args, shape, bus, mul, mul, and, "←", "*", "*", "&");
run_inner(s, n_args, shape, bus, mul, mul, add, "←", "*", "*", "+");
run_inner(s, n_args, shape, bus, mul, mul, xor, "←", "*", "*", "^");
run_inner(s, n_args, shape, bus, mul, mul, or, "←", "*", "*", "|");
run_inner(s, n_args, shape, bus, mul, mul, sub, "←", "*", "*", "-");
run_inner(s, n_args, shape, bus, mul, mul, bus, "←", "*", "*", "←");
run_inner(s, n_args, shape, bus, mul, mul, mul, "←", "*", "*", "*");
run_inner(s, n_args, shape, bus, mul, mul, rsh, "←", "*", "*", ">>");
run_inner(s, n_args, shape, bus, mul, mul, hsr, "←", "*", "*", "<<");
run_inner(s, n_args, shape, bus, mul, rsh, and, "←", "*", ">>", "&");
run_inner(s, n_args, shape, bus, mul, rsh, add, "←", "*", ">>", "+");
run_inner(s, n_args, shape, bus, mul, rsh, xor, "←", "*", ">>", "^");
run_inner(s, n_args, shape, bus, mul, rsh, or, "←", "*", ">>", "|");
run_inner(s, n_args, shape, bus, mul, rsh, sub, "←", "*", ">>", "-");
run_inner(s, n_args, shape, bus, mul, rsh, bus, "←", "*", ">>", "←");
run_inner(s, n_args, shape, bus, mul, rsh, mul, "←", "*", ">>", "*");
run_inner(s, n_args, shape, bus, mul, rsh, rsh, "←", "*", ">>", ">>");
run_inner(s, n_args, shape, bus, mul, rsh, hsr, "←", "*", ">>", "<<");
run_inner(s, n_args, shape, bus, mul, hsr, and, "←", "*", "<<", "&");
run_inner(s, n_args, shape, bus, mul, hsr, add, "←", "*", "<<", "+");
run_inner(s, n_args, shape, bus, mul, hsr, xor, "←", "*", "<<", "^");
run_inner(s, n_args, shape, bus, mul, hsr, or, "←", "*", "<<", "|");
run_inner(s, n_args, shape, bus, mul, hsr, sub, "←", "*", "<<", "-");
run_inner(s, n_args, shape, bus, mul, hsr, bus, "←", "*", "<<", "←");
run_inner(s, n_args, shape, bus, mul, hsr, mul, "←", "*", "<<", "*");
run_inner(s, n_args, shape, bus, mul, hsr, rsh, "←", "*", "<<", ">>");
run_inner(s, n_args, shape, bus, mul, hsr, hsr, "←", "*", "<<", "<<");
run_inner(s, n_args, shape, bus, rsh, and, and, "←", ">>", "&", "&");
run_inner(s, n_args, shape, bus, rsh, and, add, "←", ">>", "&", "+");
run_inner(s, n_args, shape, bus, rsh, and, xor, "←", ">>", "&", "^");
run_inner(s, n_args, shape, bus, rsh, and, or, "←", ">>", "&", "|");
run_inner(s, n_args, shape, bus, rsh, and, sub, "←", ">>", "&", "-");
run_inner(s, n_args, shape, bus, rsh, and, bus, "←", ">>", "&", "←");
run_inner(s, n_args, shape, bus, rsh, and, mul, "←", ">>", "&", "*");
run_inner(s, n_args, shape, bus, rsh, and, rsh, "←", ">>", "&", ">>");
run_inner(s, n_args, shape, bus, rsh, and, hsr, "←", ">>", "&", "<<");
run_inner(s, n_args, shape, bus, rsh, add, and, "←", ">>", "+", "&");
run_inner(s, n_args, shape, bus, rsh, add, add, "←", ">>", "+", "+");
run_inner(s, n_args, shape, bus, rsh, add, xor, "←", ">>", "+", "^");
run_inner(s, n_args, shape, bus, rsh, add, or, "←", ">>", "+", "|");
run_inner(s, n_args, shape, bus, rsh, add, sub, "←", ">>", "+", "-");
run_inner(s, n_args, shape, bus, rsh, add, bus, "←", ">>", "+", "←");
run_inner(s, n_args, shape, bus, rsh, add, mul, "←", ">>", "+", "*");
run_inner(s, n_args, shape, bus, rsh, add, rsh, "←", ">>", "+", ">>");
run_inner(s, n_args, shape, bus, rsh, add, hsr, "←", ">>", "+", "<<");
run_inner(s, n_args, shape, bus, rsh, xor, and, "←", ">>", "^", "&");
run_inner(s, n_args, shape, bus, rsh, xor, add, "←", ">>", "^", "+");
run_inner(s, n_args, shape, bus, rsh, xor, xor, "←", ">>", "^", "^");
run_inner(s, n_args, shape, bus, rsh, xor, or, "←", ">>", "^", "|");
run_inner(s, n_args, shape, bus, rsh, xor, sub, "←", ">>", "^", "-");
run_inner(s, n_args, shape, bus, rsh, xor, bus, "←", ">>", "^", "←");
run_inner(s, n_args, shape, bus, rsh, xor, mul, "←", ">>", "^", "*");
run_inner(s, n_args, shape, bus, rsh, xor, rsh, "←", ">>", "^", ">>");
run_inner(s, n_args, shape, bus, rsh, xor, hsr, "←", ">>", "^", "<<");
run_inner(s, n_args, shape, bus, rsh, or, and, "←", ">>", "|", "&");
run_inner(s, n_args, shape, bus, rsh, or, add, "←", ">>", "|", "+");
run_inner(s, n_args, shape, bus, rsh, or, xor, "←", ">>", "|", "^");
run_inner(s, n_args, shape, bus, rsh, or, or, "←", ">>", "|", "|");
run_inner(s, n_args, shape, bus, rsh, or, sub, "←", ">>", "|", "-");
run_inner(s, n_args, shape, bus, rsh, or, bus, "←", ">>", "|", "←");
run_inner(s, n_args, shape, bus, rsh, or, mul, "←", ">>", "|", "*");
run_inner(s, n_args, shape, bus, rsh, or, rsh, "←", ">>", "|", ">>");
run_inner(s, n_args, shape, bus, rsh, or, hsr, "←", ">>", "|", "<<");
run_inner(s, n_args, shape, bus, rsh, sub, and, "←", ">>", "-", "&");
run_inner(s, n_args, shape, bus, rsh, sub, add, "←", ">>", "-", "+");
run_inner(s, n_args, shape, bus, rsh, sub, xor, "←", ">>", "-", "^");
run_inner(s, n_args, shape, bus, rsh, sub, or, "←", ">>", "-", "|");
run_inner(s, n_args, shape, bus, rsh, sub, sub, "←", ">>", "-", "-");
run_inner(s, n_args, shape, bus, rsh, sub, bus, "←", ">>", "-", "←");
run_inner(s, n_args, shape, bus, rsh, sub, mul, "←", ">>", "-", "*");
run_inner(s, n_args, shape, bus, rsh, sub, rsh, "←", ">>", "-", ">>");
run_inner(s, n_args, shape, bus, rsh, sub, hsr, "←", ">>", "-", "<<");
run_inner(s, n_args, shape, bus, rsh, bus, and, "←", ">>", "←", "&");
run_inner(s, n_args, shape, bus, rsh, bus, add, "←", ">>", "←", "+");
run_inner(s, n_args, shape, bus, rsh, bus, xor, "←", ">>", "←", "^");
run_inner(s, n_args, shape, bus, rsh, bus, or, "←", ">>", "←", "|");
run_inner(s, n_args, shape, bus, rsh, bus, sub, "←", ">>", "←", "-");
run_inner(s, n_args, shape, bus, rsh, bus, bus, "←", ">>", "←", "←");
run_inner(s, n_args, shape, bus, rsh, bus, mul, "←", ">>", "←", "*");
run_inner(s, n_args, shape, bus, rsh, bus, rsh, "←", ">>", "←", ">>");
run_inner(s, n_args, shape, bus, rsh, bus, hsr, "←", ">>", "←", "<<");
run_inner(s, n_args, shape, bus, rsh, mul, and, "←", ">>", "*", "&");
run_inner(s, n_args, shape, bus, rsh, mul, add, "←", ">>", "*", "+");
run_inner(s, n_args, shape, bus, rsh, mul, xor, "←", ">>", "*", "^");
run_inner(s, n_args, shape, bus, rsh, mul, or, "←", ">>", "*", "|");
run_inner(s, n_args, shape, bus, rsh, mul, sub, "←", ">>", "*", "-");
run_inner(s, n_args, shape, bus, rsh, mul, bus, "←", ">>", "*", "←");
run_inner(s, n_args, shape, bus, rsh, mul, mul, "←", ">>", "*", "*");
run_inner(s, n_args, shape, bus, rsh, mul, rsh, "←", ">>", "*", ">>");
run_inner(s, n_args, shape, bus, rsh, mul, hsr, "←", ">>", "*", "<<");
run_inner(s, n_args, shape, bus, rsh, rsh, and, "←", ">>", ">>", "&");
run_inner(s, n_args, shape, bus, rsh, rsh, add, "←", ">>", ">>", "+");
run_inner(s, n_args, shape, bus, rsh, rsh, xor, "←", ">>", ">>", "^");
run_inner(s, n_args, shape, bus, rsh, rsh, or, "←", ">>", ">>", "|");
run_inner(s, n_args, shape, bus, rsh, rsh, sub, "←", ">>", ">>", "-");
run_inner(s, n_args, shape, bus, rsh, rsh, bus, "←", ">>", ">>", "←");
run_inner(s, n_args, shape, bus, rsh, rsh, mul, "←", ">>", ">>", "*");
run_inner(s, n_args, shape, bus, rsh, rsh, rsh, "←", ">>", ">>", ">>");
run_inner(s, n_args, shape, bus, rsh, rsh, hsr, "←", ">>", ">>", "<<");
run_inner(s, n_args, shape, bus, rsh, hsr, and, "←", ">>", "<<", "&");
run_inner(s, n_args, shape, bus, rsh, hsr, add, "←", ">>", "<<", "+");
run_inner(s, n_args, shape, bus, rsh, hsr, xor, "←", ">>", "<<", "^");
run_inner(s, n_args, shape, bus, rsh, hsr, or, "←", ">>", "<<", "|");
run_inner(s, n_args, shape, bus, rsh, hsr, sub, "←", ">>", "<<", "-");
run_inner(s, n_args, shape, bus, rsh, hsr, bus, "←", ">>", "<<", "←");
run_inner(s, n_args, shape, bus, rsh, hsr, mul, "←", ">>", "<<", "*");
run_inner(s, n_args, shape, bus, rsh, hsr, rsh, "←", ">>", "<<", ">>");
run_inner(s, n_args, shape, bus, rsh, hsr, hsr, "←", ">>", "<<", "<<");
run_inner(s, n_args, shape, bus, hsr, and, and, "←", "<<", "&", "&");
run_inner(s, n_args, shape, bus, hsr, and, add, "←", "<<", "&", "+");
run_inner(s, n_args, shape, bus, hsr, and, xor, "←", "<<", "&", "^");
run_inner(s, n_args, shape, bus, hsr, and, or, "←", "<<", "&", "|");
run_inner(s, n_args, shape, bus, hsr, and, sub, "←", "<<", "&", "-");
run_inner(s, n_args, shape, bus, hsr, and, bus, "←", "<<", "&", "←");
run_inner(s, n_args, shape, bus, hsr, and, mul, "←", "<<", "&", "*");
run_inner(s, n_args, shape, bus, hsr, and, rsh, "←", "<<", "&", ">>");
run_inner(s, n_args, shape, bus, hsr, and, hsr, "←", "<<", "&", "<<");
run_inner(s, n_args, shape, bus, hsr, add, and, "←", "<<", "+", "&");
run_inner(s, n_args, shape, bus, hsr, add, add, "←", "<<", "+", "+");
run_inner(s, n_args, shape, bus, hsr, add, xor, "←", "<<", "+", "^");
run_inner(s, n_args, shape, bus, hsr, add, or, "←", "<<", "+", "|");
run_inner(s, n_args, shape, bus, hsr, add, sub, "←", "<<", "+", "-");
run_inner(s, n_args, shape, bus, hsr, add, bus, "←", "<<", "+", "←");
run_inner(s, n_args, shape, bus, hsr, add, mul, "←", "<<", "+", "*");
run_inner(s, n_args, shape, bus, hsr, add, rsh, "←", "<<", "+", ">>");
run_inner(s, n_args, shape, bus, hsr, add, hsr, "←", "<<", "+", "<<");
run_inner(s, n_args, shape, bus, hsr, xor, and, "←", "<<", "^", "&");
run_inner(s, n_args, shape, bus, hsr, xor, add, "←", "<<", "^", "+");
run_inner(s, n_args, shape, bus, hsr, xor, xor, "←", "<<", "^", "^");
run_inner(s, n_args, shape, bus, hsr, xor, or, "←", "<<", "^", "|");
run_inner(s, n_args, shape, bus, hsr, xor, sub, "←", "<<", "^", "-");
run_inner(s, n_args, shape, bus, hsr, xor, bus, "←", "<<", "^", "←");
run_inner(s, n_args, shape, bus, hsr, xor, mul, "←", "<<", "^", "*");
run_inner(s, n_args, shape, bus, hsr, xor, rsh, "←", "<<", "^", ">>");
run_inner(s, n_args, shape, bus, hsr, xor, hsr, "←", "<<", "^", "<<");
run_inner(s, n_args, shape, bus, hsr, or, and, "←", "<<", "|", "&");
run_inner(s, n_args, shape, bus, hsr, or, add, "←", "<<", "|", "+");
run_inner(s, n_args, shape, bus, hsr, or, xor, "←", "<<", "|", "^");
run_inner(s, n_args, shape, bus, hsr, or, or, "←", "<<", "|", "|");
run_inner(s, n_args, shape, bus, hsr, or, sub, "←", "<<", "|", "-");
run_inner(s, n_args, shape, bus, hsr, or, bus, "←", "<<", "|", "←");
run_inner(s, n_args, shape, bus, hsr, or, mul, "←", "<<", "|", "*");
run_inner(s, n_args, shape, bus, hsr, or, rsh, "←", "<<", "|", ">>");
run_inner(s, n_args, shape, bus, hsr, or, hsr, "←", "<<", "|", "<<");
run_inner(s, n_args, shape, bus, hsr, sub, and, "←", "<<", "-", "&");
run_inner(s, n_args, shape, bus, hsr, sub, add, "←", "<<", "-", "+");
run_inner(s, n_args, shape, bus, hsr, sub, xor, "←", "<<", "-", "^");
run_inner(s, n_args, shape, bus, hsr, sub, or, "←", "<<", "-", "|");
run_inner(s, n_args, shape, bus, hsr, sub, sub, "←", "<<", "-", "-");
run_inner(s, n_args, shape, bus, hsr, sub, bus, "←", "<<", "-", "←");
run_inner(s, n_args, shape, bus, hsr, sub, mul, "←", "<<", "-", "*");
run_inner(s, n_args, shape, bus, hsr, sub, rsh, "←", "<<", "-", ">>");
run_inner(s, n_args, shape, bus, hsr, sub, hsr, "←", "<<", "-", "<<");
run_inner(s, n_args, shape, bus, hsr, bus, and, "←", "<<", "←", "&");
run_inner(s, n_args, shape, bus, hsr, bus, add, "←", "<<", "←", "+");
run_inner(s, n_args, shape, bus, hsr, bus, xor, "←", "<<", "←", "^");
run_inner(s, n_args, shape, bus, hsr, bus, or, "←", "<<", "←", "|");
run_inner(s, n_args, shape, bus, hsr, bus, sub, "←", "<<", "←", "-");
run_inner(s, n_args, shape, bus, hsr, bus, bus, "←", "<<", "←", "←");
run_inner(s, n_args, shape, bus, hsr, bus, mul, "←", "<<", "←", "*");
run_inner(s, n_args, shape, bus, hsr, bus, rsh, "←", "<<", "←", ">>");
run_inner(s, n_args, shape, bus, hsr, bus, hsr, "←", "<<", "←", "<<");
run_inner(s, n_args, shape, bus, hsr, mul, and, "←", "<<", "*", "&");
run_inner(s, n_args, shape, bus, hsr, mul, add, "←", "<<", "*", "+");
run_inner(s, n_args, shape, bus, hsr, mul, xor, "←", "<<", "*", "^");
run_inner(s, n_args, shape, bus, hsr, mul, or, "←", "<<", "*", "|");
run_inner(s, n_args, shape, bus, hsr, mul, sub, "←", "<<", "*", "-");
run_inner(s, n_args, shape, bus, hsr, mul, bus, "←", "<<", "*", "←");
run_inner(s, n_args, shape, bus, hsr, mul, mul, "←", "<<", "*", "*");
run_inner(s, n_args, shape, bus, hsr, mul, rsh, "←", "<<", "*", ">>");
run_inner(s, n_args, shape, bus, hsr, mul, hsr, "←", "<<", "*", "<<");
run_inner(s, n_args, shape, bus, hsr, rsh, and, "←", "<<", ">>", "&");
run_inner(s, n_args, shape, bus, hsr, rsh, add, "←", "<<", ">>", "+");
run_inner(s, n_args, shape, bus, hsr, rsh, xor, "←", "<<", ">>", "^");
run_inner(s, n_args, shape, bus, hsr, rsh, or, "←", "<<", ">>", "|");
run_inner(s, n_args, shape, bus, hsr, rsh, sub, "←", "<<", ">>", "-");
run_inner(s, n_args, shape, bus, hsr, rsh, bus, "←", "<<", ">>", "←");
run_inner(s, n_args, shape, bus, hsr, rsh, mul, "←", "<<", ">>", "*");
run_inner(s, n_args, shape, bus, hsr, rsh, rsh, "←", "<<", ">>", ">>");
run_inner(s, n_args, shape, bus, hsr, rsh, hsr, "←", "<<", ">>", "<<");
run_inner(s, n_args, shape, bus, hsr, hsr, and, "←", "<<", "<<", "&");
run_inner(s, n_args, shape, bus, hsr, hsr, add, "←", "<<", "<<", "+");
run_inner(s, n_args, shape, bus, hsr, hsr, xor, "←", "<<", "<<", "^");
run_inner(s, n_args, shape, bus, hsr, hsr, or, "←", "<<", "<<", "|");
run_inner(s, n_args, shape, bus, hsr, hsr, sub, "←", "<<", "<<", "-");
run_inner(s, n_args, shape, bus, hsr, hsr, bus, "←", "<<", "<<", "←");
run_inner(s, n_args, shape, bus, hsr, hsr, mul, "←", "<<", "<<", "*");
run_inner(s, n_args, shape, bus, hsr, hsr, rsh, "←", "<<", "<<", ">>");
run_inner(s, n_args, shape, bus, hsr, hsr, hsr, "←", "<<", "<<", "<<");
}));
threads.push(thread::spawn(move || {
run_inner(s, n_args, shape, mul, and, and, and, "*", "&", "&", "&");
run_inner(s, n_args, shape, mul, and, and, add, "*", "&", "&", "+");
run_inner(s, n_args, shape, mul, and, and, xor, "*", "&", "&", "^");
run_inner(s, n_args, shape, mul, and, and, or, "*", "&", "&", "|");
run_inner(s, n_args, shape, mul, and, and, sub, "*", "&", "&", "-");
run_inner(s, n_args, shape, mul, and, and, bus, "*", "&", "&", "←");
run_inner(s, n_args, shape, mul, and, and, mul, "*", "&", "&", "*");
run_inner(s, n_args, shape, mul, and, and, rsh, "*", "&", "&", ">>");
run_inner(s, n_args, shape, mul, and, and, hsr, "*", "&", "&", "<<");
run_inner(s, n_args, shape, mul, and, add, and, "*", "&", "+", "&");
run_inner(s, n_args, shape, mul, and, add, add, "*", "&", "+", "+");
run_inner(s, n_args, shape, mul, and, add, xor, "*", "&", "+", "^");
run_inner(s, n_args, shape, mul, and, add, or, "*", "&", "+", "|");
run_inner(s, n_args, shape, mul, and, add, sub, "*", "&", "+", "-");
run_inner(s, n_args, shape, mul, and, add, bus, "*", "&", "+", "←");
run_inner(s, n_args, shape, mul, and, add, mul, "*", "&", "+", "*");
run_inner(s, n_args, shape, mul, and, add, rsh, "*", "&", "+", ">>");
run_inner(s, n_args, shape, mul, and, add, hsr, "*", "&", "+", "<<");
run_inner(s, n_args, shape, mul, and, xor, and, "*", "&", "^", "&");
run_inner(s, n_args, shape, mul, and, xor, add, "*", "&", "^", "+");
run_inner(s, n_args, shape, mul, and, xor, xor, "*", "&", "^", "^");
run_inner(s, n_args, shape, mul, and, xor, or, "*", "&", "^", "|");
run_inner(s, n_args, shape, mul, and, xor, sub, "*", "&", "^", "-");
run_inner(s, n_args, shape, mul, and, xor, bus, "*", "&", "^", "←");
run_inner(s, n_args, shape, mul, and, xor, mul, "*", "&", "^", "*");
run_inner(s, n_args, shape, mul, and, xor, rsh, "*", "&", "^", ">>");
run_inner(s, n_args, shape, mul, and, xor, hsr, "*", "&", "^", "<<");
run_inner(s, n_args, shape, mul, and, or, and, "*", "&", "|", "&");
run_inner(s, n_args, shape, mul, and, or, add, "*", "&", "|", "+");
run_inner(s, n_args, shape, mul, and, or, xor, "*", "&", "|", "^");
run_inner(s, n_args, shape, mul, and, or, or, "*", "&", "|", "|");
run_inner(s, n_args, shape, mul, and, or, sub, "*", "&", "|", "-");
run_inner(s, n_args, shape, mul, and, or, bus, "*", "&", "|", "←");
run_inner(s, n_args, shape, mul, and, or, mul, "*", "&", "|", "*");
run_inner(s, n_args, shape, mul, and, or, rsh, "*", "&", "|", ">>");
run_inner(s, n_args, shape, mul, and, or, hsr, "*", "&", "|", "<<");
run_inner(s, n_args, shape, mul, and, sub, and, "*", "&", "-", "&");
run_inner(s, n_args, shape, mul, and, sub, add, "*", "&", "-", "+");
run_inner(s, n_args, shape, mul, and, sub, xor, "*", "&", "-", "^");
run_inner(s, n_args, shape, mul, and, sub, or, "*", "&", "-", "|");
run_inner(s, n_args, shape, mul, and, sub, sub, "*", "&", "-", "-");
run_inner(s, n_args, shape, mul, and, sub, bus, "*", "&", "-", "←");
run_inner(s, n_args, shape, mul, and, sub, mul, "*", "&", "-", "*");
run_inner(s, n_args, shape, mul, and, sub, rsh, "*", "&", "-", ">>");
run_inner(s, n_args, shape, mul, and, sub, hsr, "*", "&", "-", "<<");
run_inner(s, n_args, shape, mul, and, bus, and, "*", "&", "←", "&");
run_inner(s, n_args, shape, mul, and, bus, add, "*", "&", "←", "+");
run_inner(s, n_args, shape, mul, and, bus, xor, "*", "&", "←", "^");
run_inner(s, n_args, shape, mul, and, bus, or, "*", "&", "←", "|");
run_inner(s, n_args, shape, mul, and, bus, sub, "*", "&", "←", "-");
run_inner(s, n_args, shape, mul, and, bus, bus, "*", "&", "←", "←");
run_inner(s, n_args, shape, mul, and, bus, mul, "*", "&", "←", "*");
run_inner(s, n_args, shape, mul, and, bus, rsh, "*", "&", "←", ">>");
run_inner(s, n_args, shape, mul, and, bus, hsr, "*", "&", "←", "<<");
run_inner(s, n_args, shape, mul, and, mul, and, "*", "&", "*", "&");
run_inner(s, n_args, shape, mul, and, mul, add, "*", "&", "*", "+");
run_inner(s, n_args, shape, mul, and, mul, xor, "*", "&", "*", "^");
run_inner(s, n_args, shape, mul, and, mul, or, "*", "&", "*", "|");
run_inner(s, n_args, shape, mul, and, mul, sub, "*", "&", "*", "-");
run_inner(s, n_args, shape, mul, and, mul, bus, "*", "&", "*", "←");
run_inner(s, n_args, shape, mul, and, mul, mul, "*", "&", "*", "*");
run_inner(s, n_args, shape, mul, and, mul, rsh, "*", "&", "*", ">>");
run_inner(s, n_args, shape, mul, and, mul, hsr, "*", "&", "*", "<<");
run_inner(s, n_args, shape, mul, and, rsh, and, "*", "&", ">>", "&");
run_inner(s, n_args, shape, mul, and, rsh, add, "*", "&", ">>", "+");
run_inner(s, n_args, shape, mul, and, rsh, xor, "*", "&", ">>", "^");
run_inner(s, n_args, shape, mul, and, rsh, or, "*", "&", ">>", "|");
run_inner(s, n_args, shape, mul, and, rsh, sub, "*", "&", ">>", "-");
run_inner(s, n_args, shape, mul, and, rsh, bus, "*", "&", ">>", "←");
run_inner(s, n_args, shape, mul, and, rsh, mul, "*", "&", ">>", "*");
run_inner(s, n_args, shape, mul, and, rsh, rsh, "*", "&", ">>", ">>");
run_inner(s, n_args, shape, mul, and, rsh, hsr, "*", "&", ">>", "<<");
run_inner(s, n_args, shape, mul, and, hsr, and, "*", "&", "<<", "&");
run_inner(s, n_args, shape, mul, and, hsr, add, "*", "&", "<<", "+");
run_inner(s, n_args, shape, mul, and, hsr, xor, "*", "&", "<<", "^");
run_inner(s, n_args, shape, mul, and, hsr, or, "*", "&", "<<", "|");
run_inner(s, n_args, shape, mul, and, hsr, sub, "*", "&", "<<", "-");
run_inner(s, n_args, shape, mul, and, hsr, bus, "*", "&", "<<", "←");
run_inner(s, n_args, shape, mul, and, hsr, mul, "*", "&", "<<", "*");
run_inner(s, n_args, shape, mul, and, hsr, rsh, "*", "&", "<<", ">>");
run_inner(s, n_args, shape, mul, and, hsr, hsr, "*", "&", "<<", "<<");
run_inner(s, n_args, shape, mul, add, and, and, "*", "+", "&", "&");
run_inner(s, n_args, shape, mul, add, and, add, "*", "+", "&", "+");
run_inner(s, n_args, shape, mul, add, and, xor, "*", "+", "&", "^");
run_inner(s, n_args, shape, mul, add, and, or, "*", "+", "&", "|");
run_inner(s, n_args, shape, mul, add, and, sub, "*", "+", "&", "-");
run_inner(s, n_args, shape, mul, add, and, bus, "*", "+", "&", "←");
run_inner(s, n_args, shape, mul, add, and, mul, "*", "+", "&", "*");
run_inner(s, n_args, shape, mul, add, and, rsh, "*", "+", "&", ">>");
run_inner(s, n_args, shape, mul, add, and, hsr, "*", "+", "&", "<<");
run_inner(s, n_args, shape, mul, add, add, and, "*", "+", "+", "&");
run_inner(s, n_args, shape, mul, add, add, add, "*", "+", "+", "+");
run_inner(s, n_args, shape, mul, add, add, xor, "*", "+", "+", "^");
run_inner(s, n_args, shape, mul, add, add, or, "*", "+", "+", "|");
run_inner(s, n_args, shape, mul, add, add, sub, "*", "+", "+", "-");
run_inner(s, n_args, shape, mul, add, add, bus, "*", "+", "+", "←");
run_inner(s, n_args, shape, mul, add, add, mul, "*", "+", "+", "*");
run_inner(s, n_args, shape, mul, add, add, rsh, "*", "+", "+", ">>");
run_inner(s, n_args, shape, mul, add, add, hsr, "*", "+", "+", "<<");
run_inner(s, n_args, shape, mul, add, xor, and, "*", "+", "^", "&");
run_inner(s, n_args, shape, mul, add, xor, add, "*", "+", "^", "+");
run_inner(s, n_args, shape, mul, add, xor, xor, "*", "+", "^", "^");
run_inner(s, n_args, shape, mul, add, xor, or, "*", "+", "^", "|");
run_inner(s, n_args, shape, mul, add, xor, sub, "*", "+", "^", "-");
run_inner(s, n_args, shape, mul, add, xor, bus, "*", "+", "^", "←");
run_inner(s, n_args, shape, mul, add, xor, mul, "*", "+", "^", "*");
run_inner(s, n_args, shape, mul, add, xor, rsh, "*", "+", "^", ">>");
run_inner(s, n_args, shape, mul, add, xor, hsr, "*", "+", "^", "<<");
run_inner(s, n_args, shape, mul, add, or, and, "*", "+", "|", "&");
run_inner(s, n_args, shape, mul, add, or, add, "*", "+", "|", "+");
run_inner(s, n_args, shape, mul, add, or, xor, "*", "+", "|", "^");
run_inner(s, n_args, shape, mul, add, or, or, "*", "+", "|", "|");
run_inner(s, n_args, shape, mul, add, or, sub, "*", "+", "|", "-");
run_inner(s, n_args, shape, mul, add, or, bus, "*", "+", "|", "←");
run_inner(s, n_args, shape, mul, add, or, mul, "*", "+", "|", "*");
run_inner(s, n_args, shape, mul, add, or, rsh, "*", "+", "|", ">>");
run_inner(s, n_args, shape, mul, add, or, hsr, "*", "+", "|", "<<");
run_inner(s, n_args, shape, mul, add, sub, and, "*", "+", "-", "&");
run_inner(s, n_args, shape, mul, add, sub, add, "*", "+", "-", "+");
run_inner(s, n_args, shape, mul, add, sub, xor, "*", "+", "-", "^");
run_inner(s, n_args, shape, mul, add, sub, or, "*", "+", "-", "|");
run_inner(s, n_args, shape, mul, add, sub, sub, "*", "+", "-", "-");
run_inner(s, n_args, shape, mul, add, sub, bus, "*", "+", "-", "←");
run_inner(s, n_args, shape, mul, add, sub, mul, "*", "+", "-", "*");
run_inner(s, n_args, shape, mul, add, sub, rsh, "*", "+", "-", ">>");
run_inner(s, n_args, shape, mul, add, sub, hsr, "*", "+", "-", "<<");
run_inner(s, n_args, shape, mul, add, bus, and, "*", "+", "←", "&");
run_inner(s, n_args, shape, mul, add, bus, add, "*", "+", "←", "+");
run_inner(s, n_args, shape, mul, add, bus, xor, "*", "+", "←", "^");
run_inner(s, n_args, shape, mul, add, bus, or, "*", "+", "←", "|");
run_inner(s, n_args, shape, mul, add, bus, sub, "*", "+", "←", "-");
run_inner(s, n_args, shape, mul, add, bus, bus, "*", "+", "←", "←");
run_inner(s, n_args, shape, mul, add, bus, mul, "*", "+", "←", "*");
run_inner(s, n_args, shape, mul, add, bus, rsh, "*", "+", "←", ">>");
run_inner(s, n_args, shape, mul, add, bus, hsr, "*", "+", "←", "<<");
run_inner(s, n_args, shape, mul, add, mul, and, "*", "+", "*", "&");
run_inner(s, n_args, shape, mul, add, mul, add, "*", "+", "*", "+");
run_inner(s, n_args, shape, mul, add, mul, xor, "*", "+", "*", "^");
run_inner(s, n_args, shape, mul, add, mul, or, "*", "+", "*", "|");
run_inner(s, n_args, shape, mul, add, mul, sub, "*", "+", "*", "-");
run_inner(s, n_args, shape, mul, add, mul, bus, "*", "+", "*", "←");
run_inner(s, n_args, shape, mul, add, mul, mul, "*", "+", "*", "*");
run_inner(s, n_args, shape, mul, add, mul, rsh, "*", "+", "*", ">>");
run_inner(s, n_args, shape, mul, add, mul, hsr, "*", "+", "*", "<<");
run_inner(s, n_args, shape, mul, add, rsh, and, "*", "+", ">>", "&");
run_inner(s, n_args, shape, mul, add, rsh, add, "*", "+", ">>", "+");
run_inner(s, n_args, shape, mul, add, rsh, xor, "*", "+", ">>", "^");
run_inner(s, n_args, shape, mul, add, rsh, or, "*", "+", ">>", "|");
run_inner(s, n_args, shape, mul, add, rsh, sub, "*", "+", ">>", "-");
run_inner(s, n_args, shape, mul, add, rsh, bus, "*", "+", ">>", "←");
run_inner(s, n_args, shape, mul, add, rsh, mul, "*", "+", ">>", "*");
run_inner(s, n_args, shape, mul, add, rsh, rsh, "*", "+", ">>", ">>");
run_inner(s, n_args, shape, mul, add, rsh, hsr, "*", "+", ">>", "<<");
run_inner(s, n_args, shape, mul, add, hsr, and, "*", "+", "<<", "&");
run_inner(s, n_args, shape, mul, add, hsr, add, "*", "+", "<<", "+");
run_inner(s, n_args, shape, mul, add, hsr, xor, "*", "+", "<<", "^");
run_inner(s, n_args, shape, mul, add, hsr, or, "*", "+", "<<", "|");
run_inner(s, n_args, shape, mul, add, hsr, sub, "*", "+", "<<", "-");
run_inner(s, n_args, shape, mul, add, hsr, bus, "*", "+", "<<", "←");
run_inner(s, n_args, shape, mul, add, hsr, mul, "*", "+", "<<", "*");
run_inner(s, n_args, shape, mul, add, hsr, rsh, "*", "+", "<<", ">>");
run_inner(s, n_args, shape, mul, add, hsr, hsr, "*", "+", "<<", "<<");
run_inner(s, n_args, shape, mul, xor, and, and, "*", "^", "&", "&");
run_inner(s, n_args, shape, mul, xor, and, add, "*", "^", "&", "+");
run_inner(s, n_args, shape, mul, xor, and, xor, "*", "^", "&", "^");
run_inner(s, n_args, shape, mul, xor, and, or, "*", "^", "&", "|");
run_inner(s, n_args, shape, mul, xor, and, sub, "*", "^", "&", "-");
run_inner(s, n_args, shape, mul, xor, and, bus, "*", "^", "&", "←");
run_inner(s, n_args, shape, mul, xor, and, mul, "*", "^", "&", "*");
run_inner(s, n_args, shape, mul, xor, and, rsh, "*", "^", "&", ">>");
run_inner(s, n_args, shape, mul, xor, and, hsr, "*", "^", "&", "<<");
run_inner(s, n_args, shape, mul, xor, add, and, "*", "^", "+", "&");
run_inner(s, n_args, shape, mul, xor, add, add, "*", "^", "+", "+");
run_inner(s, n_args, shape, mul, xor, add, xor, "*", "^", "+", "^");
run_inner(s, n_args, shape, mul, xor, add, or, "*", "^", "+", "|");
run_inner(s, n_args, shape, mul, xor, add, sub, "*", "^", "+", "-");
run_inner(s, n_args, shape, mul, xor, add, bus, "*", "^", "+", "←");
run_inner(s, n_args, shape, mul, xor, add, mul, "*", "^", "+", "*");
run_inner(s, n_args, shape, mul, xor, add, rsh, "*", "^", "+", ">>");
run_inner(s, n_args, shape, mul, xor, add, hsr, "*", "^", "+", "<<");
run_inner(s, n_args, shape, mul, xor, xor, and, "*", "^", "^", "&");
run_inner(s, n_args, shape, mul, xor, xor, add, "*", "^", "^", "+");
run_inner(s, n_args, shape, mul, xor, xor, xor, "*", "^", "^", "^");
run_inner(s, n_args, shape, mul, xor, xor, or, "*", "^", "^", "|");
run_inner(s, n_args, shape, mul, xor, xor, sub, "*", "^", "^", "-");
run_inner(s, n_args, shape, mul, xor, xor, bus, "*", "^", "^", "←");
run_inner(s, n_args, shape, mul, xor, xor, mul, "*", "^", "^", "*");
run_inner(s, n_args, shape, mul, xor, xor, rsh, "*", "^", "^", ">>");
run_inner(s, n_args, shape, mul, xor, xor, hsr, "*", "^", "^", "<<");
run_inner(s, n_args, shape, mul, xor, or, and, "*", "^", "|", "&");
run_inner(s, n_args, shape, mul, xor, or, add, "*", "^", "|", "+");
run_inner(s, n_args, shape, mul, xor, or, xor, "*", "^", "|", "^");
run_inner(s, n_args, shape, mul, xor, or, or, "*", "^", "|", "|");
run_inner(s, n_args, shape, mul, xor, or, sub, "*", "^", "|", "-");
run_inner(s, n_args, shape, mul, xor, or, bus, "*", "^", "|", "←");
run_inner(s, n_args, shape, mul, xor, or, mul, "*", "^", "|", "*");
run_inner(s, n_args, shape, mul, xor, or, rsh, "*", "^", "|", ">>");
run_inner(s, n_args, shape, mul, xor, or, hsr, "*", "^", "|", "<<");
run_inner(s, n_args, shape, mul, xor, sub, and, "*", "^", "-", "&");
run_inner(s, n_args, shape, mul, xor, sub, add, "*", "^", "-", "+");
run_inner(s, n_args, shape, mul, xor, sub, xor, "*", "^", "-", "^");
run_inner(s, n_args, shape, mul, xor, sub, or, "*", "^", "-", "|");
run_inner(s, n_args, shape, mul, xor, sub, sub, "*", "^", "-", "-");
run_inner(s, n_args, shape, mul, xor, sub, bus, "*", "^", "-", "←");
run_inner(s, n_args, shape, mul, xor, sub, mul, "*", "^", "-", "*");
run_inner(s, n_args, shape, mul, xor, sub, rsh, "*", "^", "-", ">>");
run_inner(s, n_args, shape, mul, xor, sub, hsr, "*", "^", "-", "<<");
run_inner(s, n_args, shape, mul, xor, bus, and, "*", "^", "←", "&");
run_inner(s, n_args, shape, mul, xor, bus, add, "*", "^", "←", "+");
run_inner(s, n_args, shape, mul, xor, bus, xor, "*", "^", "←", "^");
run_inner(s, n_args, shape, mul, xor, bus, or, "*", "^", "←", "|");
run_inner(s, n_args, shape, mul, xor, bus, sub, "*", "^", "←", "-");
run_inner(s, n_args, shape, mul, xor, bus, bus, "*", "^", "←", "←");
run_inner(s, n_args, shape, mul, xor, bus, mul, "*", "^", "←", "*");
run_inner(s, n_args, shape, mul, xor, bus, rsh, "*", "^", "←", ">>");
run_inner(s, n_args, shape, mul, xor, bus, hsr, "*", "^", "←", "<<");
run_inner(s, n_args, shape, mul, xor, mul, and, "*", "^", "*", "&");
run_inner(s, n_args, shape, mul, xor, mul, add, "*", "^", "*", "+");
run_inner(s, n_args, shape, mul, xor, mul, xor, "*", "^", "*", "^");
run_inner(s, n_args, shape, mul, xor, mul, or, "*", "^", "*", "|");
run_inner(s, n_args, shape, mul, xor, mul, sub, "*", "^", "*", "-");
run_inner(s, n_args, shape, mul, xor, mul, bus, "*", "^", "*", "←");
run_inner(s, n_args, shape, mul, xor, mul, mul, "*", "^", "*", "*");
run_inner(s, n_args, shape, mul, xor, mul, rsh, "*", "^", "*", ">>");
run_inner(s, n_args, shape, mul, xor, mul, hsr, "*", "^", "*", "<<");
run_inner(s, n_args, shape, mul, xor, rsh, and, "*", "^", ">>", "&");
run_inner(s, n_args, shape, mul, xor, rsh, add, "*", "^", ">>", "+");
run_inner(s, n_args, shape, mul, xor, rsh, xor, "*", "^", ">>", "^");
run_inner(s, n_args, shape, mul, xor, rsh, or, "*", "^", ">>", "|");
run_inner(s, n_args, shape, mul, xor, rsh, sub, "*", "^", ">>", "-");
run_inner(s, n_args, shape, mul, xor, rsh, bus, "*", "^", ">>", "←");
run_inner(s, n_args, shape, mul, xor, rsh, mul, "*", "^", ">>", "*");
run_inner(s, n_args, shape, mul, xor, rsh, rsh, "*", "^", ">>", ">>");
run_inner(s, n_args, shape, mul, xor, rsh, hsr, "*", "^", ">>", "<<");
run_inner(s, n_args, shape, mul, xor, hsr, and, "*", "^", "<<", "&");
run_inner(s, n_args, shape, mul, xor, hsr, add, "*", "^", "<<", "+");
run_inner(s, n_args, shape, mul, xor, hsr, xor, "*", "^", "<<", "^");
run_inner(s, n_args, shape, mul, xor, hsr, or, "*", "^", "<<", "|");
run_inner(s, n_args, shape, mul, xor, hsr, sub, "*", "^", "<<", "-");
run_inner(s, n_args, shape, mul, xor, hsr, bus, "*", "^", "<<", "←");
run_inner(s, n_args, shape, mul, xor, hsr, mul, "*", "^", "<<", "*");
run_inner(s, n_args, shape, mul, xor, hsr, rsh, "*", "^", "<<", ">>");
run_inner(s, n_args, shape, mul, xor, hsr, hsr, "*", "^", "<<", "<<");
run_inner(s, n_args, shape, mul, or, and, and, "*", "|", "&", "&");
run_inner(s, n_args, shape, mul, or, and, add, "*", "|", "&", "+");
run_inner(s, n_args, shape, mul, or, and, xor, "*", "|", "&", "^");
run_inner(s, n_args, shape, mul, or, and, or, "*", "|", "&", "|");
run_inner(s, n_args, shape, mul, or, and, sub, "*", "|", "&", "-");
run_inner(s, n_args, shape, mul, or, and, bus, "*", "|", "&", "←");
run_inner(s, n_args, shape, mul, or, and, mul, "*", "|", "&", "*");
run_inner(s, n_args, shape, mul, or, and, rsh, "*", "|", "&", ">>");
run_inner(s, n_args, shape, mul, or, and, hsr, "*", "|", "&", "<<");
run_inner(s, n_args, shape, mul, or, add, and, "*", "|", "+", "&");
run_inner(s, n_args, shape, mul, or, add, add, "*", "|", "+", "+");
run_inner(s, n_args, shape, mul, or, add, xor, "*", "|", "+", "^");
run_inner(s, n_args, shape, mul, or, add, or, "*", "|", "+", "|");
run_inner(s, n_args, shape, mul, or, add, sub, "*", "|", "+", "-");
run_inner(s, n_args, shape, mul, or, add, bus, "*", "|", "+", "←");
run_inner(s, n_args, shape, mul, or, add, mul, "*", "|", "+", "*");
run_inner(s, n_args, shape, mul, or, add, rsh, "*", "|", "+", ">>");
run_inner(s, n_args, shape, mul, or, add, hsr, "*", "|", "+", "<<");
run_inner(s, n_args, shape, mul, or, xor, and, "*", "|", "^", "&");
run_inner(s, n_args, shape, mul, or, xor, add, "*", "|", "^", "+");
run_inner(s, n_args, shape, mul, or, xor, xor, "*", "|", "^", "^");
run_inner(s, n_args, shape, mul, or, xor, or, "*", "|", "^", "|");
run_inner(s, n_args, shape, mul, or, xor, sub, "*", "|", "^", "-");
run_inner(s, n_args, shape, mul, or, xor, bus, "*", "|", "^", "←");
run_inner(s, n_args, shape, mul, or, xor, mul, "*", "|", "^", "*");
run_inner(s, n_args, shape, mul, or, xor, rsh, "*", "|", "^", ">>");
run_inner(s, n_args, shape, mul, or, xor, hsr, "*", "|", "^", "<<");
run_inner(s, n_args, shape, mul, or, or, and, "*", "|", "|", "&");
run_inner(s, n_args, shape, mul, or, or, add, "*", "|", "|", "+");
run_inner(s, n_args, shape, mul, or, or, xor, "*", "|", "|", "^");
run_inner(s, n_args, shape, mul, or, or, or, "*", "|", "|", "|");
run_inner(s, n_args, shape, mul, or, or, sub, "*", "|", "|", "-");
run_inner(s, n_args, shape, mul, or, or, bus, "*", "|", "|", "←");
run_inner(s, n_args, shape, mul, or, or, mul, "*", "|", "|", "*");
run_inner(s, n_args, shape, mul, or, or, rsh, "*", "|", "|", ">>");
run_inner(s, n_args, shape, mul, or, or, hsr, "*", "|", "|", "<<");
run_inner(s, n_args, shape, mul, or, sub, and, "*", "|", "-", "&");
run_inner(s, n_args, shape, mul, or, sub, add, "*", "|", "-", "+");
run_inner(s, n_args, shape, mul, or, sub, xor, "*", "|", "-", "^");
run_inner(s, n_args, shape, mul, or, sub, or, "*", "|", "-", "|");
run_inner(s, n_args, shape, mul, or, sub, sub, "*", "|", "-", "-");
run_inner(s, n_args, shape, mul, or, sub, bus, "*", "|", "-", "←");
run_inner(s, n_args, shape, mul, or, sub, mul, "*", "|", "-", "*");
run_inner(s, n_args, shape, mul, or, sub, rsh, "*", "|", "-", ">>");
run_inner(s, n_args, shape, mul, or, sub, hsr, "*", "|", "-", "<<");
run_inner(s, n_args, shape, mul, or, bus, and, "*", "|", "←", "&");
run_inner(s, n_args, shape, mul, or, bus, add, "*", "|", "←", "+");
run_inner(s, n_args, shape, mul, or, bus, xor, "*", "|", "←", "^");
run_inner(s, n_args, shape, mul, or, bus, or, "*", "|", "←", "|");
run_inner(s, n_args, shape, mul, or, bus, sub, "*", "|", "←", "-");
run_inner(s, n_args, shape, mul, or, bus, bus, "*", "|", "←", "←");
run_inner(s, n_args, shape, mul, or, bus, mul, "*", "|", "←", "*");
run_inner(s, n_args, shape, mul, or, bus, rsh, "*", "|", "←", ">>");
run_inner(s, n_args, shape, mul, or, bus, hsr, "*", "|", "←", "<<");
run_inner(s, n_args, shape, mul, or, mul, and, "*", "|", "*", "&");
run_inner(s, n_args, shape, mul, or, mul, add, "*", "|", "*", "+");
run_inner(s, n_args, shape, mul, or, mul, xor, "*", "|", "*", "^");
run_inner(s, n_args, shape, mul, or, mul, or, "*", "|", "*", "|");
run_inner(s, n_args, shape, mul, or, mul, sub, "*", "|", "*", "-");
run_inner(s, n_args, shape, mul, or, mul, bus, "*", "|", "*", "←");
run_inner(s, n_args, shape, mul, or, mul, mul, "*", "|", "*", "*");
run_inner(s, n_args, shape, mul, or, mul, rsh, "*", "|", "*", ">>");
run_inner(s, n_args, shape, mul, or, mul, hsr, "*", "|", "*", "<<");
run_inner(s, n_args, shape, mul, or, rsh, and, "*", "|", ">>", "&");
run_inner(s, n_args, shape, mul, or, rsh, add, "*", "|", ">>", "+");
run_inner(s, n_args, shape, mul, or, rsh, xor, "*", "|", ">>", "^");
run_inner(s, n_args, shape, mul, or, rsh, or, "*", "|", ">>", "|");
run_inner(s, n_args, shape, mul, or, rsh, sub, "*", "|", ">>", "-");
run_inner(s, n_args, shape, mul, or, rsh, bus, "*", "|", ">>", "←");
run_inner(s, n_args, shape, mul, or, rsh, mul, "*", "|", ">>", "*");
run_inner(s, n_args, shape, mul, or, rsh, rsh, "*", "|", ">>", ">>");
run_inner(s, n_args, shape, mul, or, rsh, hsr, "*", "|", ">>", "<<");
run_inner(s, n_args, shape, mul, or, hsr, and, "*", "|", "<<", "&");
run_inner(s, n_args, shape, mul, or, hsr, add, "*", "|", "<<", "+");
run_inner(s, n_args, shape, mul, or, hsr, xor, "*", "|", "<<", "^");
run_inner(s, n_args, shape, mul, or, hsr, or, "*", "|", "<<", "|");
run_inner(s, n_args, shape, mul, or, hsr, sub, "*", "|", "<<", "-");
run_inner(s, n_args, shape, mul, or, hsr, bus, "*", "|", "<<", "←");
run_inner(s, n_args, shape, mul, or, hsr, mul, "*", "|", "<<", "*");
run_inner(s, n_args, shape, mul, or, hsr, rsh, "*", "|", "<<", ">>");
run_inner(s, n_args, shape, mul, or, hsr, hsr, "*", "|", "<<", "<<");
run_inner(s, n_args, shape, mul, sub, and, and, "*", "-", "&", "&");
run_inner(s, n_args, shape, mul, sub, and, add, "*", "-", "&", "+");
run_inner(s, n_args, shape, mul, sub, and, xor, "*", "-", "&", "^");
run_inner(s, n_args, shape, mul, sub, and, or, "*", "-", "&", "|");
run_inner(s, n_args, shape, mul, sub, and, sub, "*", "-", "&", "-");
run_inner(s, n_args, shape, mul, sub, and, bus, "*", "-", "&", "←");
run_inner(s, n_args, shape, mul, sub, and, mul, "*", "-", "&", "*");
run_inner(s, n_args, shape, mul, sub, and, rsh, "*", "-", "&", ">>");
run_inner(s, n_args, shape, mul, sub, and, hsr, "*", "-", "&", "<<");
run_inner(s, n_args, shape, mul, sub, add, and, "*", "-", "+", "&");
run_inner(s, n_args, shape, mul, sub, add, add, "*", "-", "+", "+");
run_inner(s, n_args, shape, mul, sub, add, xor, "*", "-", "+", "^");
run_inner(s, n_args, shape, mul, sub, add, or, "*", "-", "+", "|");
run_inner(s, n_args, shape, mul, sub, add, sub, "*", "-", "+", "-");
run_inner(s, n_args, shape, mul, sub, add, bus, "*", "-", "+", "←");
run_inner(s, n_args, shape, mul, sub, add, mul, "*", "-", "+", "*");
run_inner(s, n_args, shape, mul, sub, add, rsh, "*", "-", "+", ">>");
run_inner(s, n_args, shape, mul, sub, add, hsr, "*", "-", "+", "<<");
run_inner(s, n_args, shape, mul, sub, xor, and, "*", "-", "^", "&");
run_inner(s, n_args, shape, mul, sub, xor, add, "*", "-", "^", "+");
run_inner(s, n_args, shape, mul, sub, xor, xor, "*", "-", "^", "^");
run_inner(s, n_args, shape, mul, sub, xor, or, "*", "-", "^", "|");
run_inner(s, n_args, shape, mul, sub, xor, sub, "*", "-", "^", "-");
run_inner(s, n_args, shape, mul, sub, xor, bus, "*", "-", "^", "←");
run_inner(s, n_args, shape, mul, sub, xor, mul, "*", "-", "^", "*");
run_inner(s, n_args, shape, mul, sub, xor, rsh, "*", "-", "^", ">>");
run_inner(s, n_args, shape, mul, sub, xor, hsr, "*", "-", "^", "<<");
run_inner(s, n_args, shape, mul, sub, or, and, "*", "-", "|", "&");
run_inner(s, n_args, shape, mul, sub, or, add, "*", "-", "|", "+");
run_inner(s, n_args, shape, mul, sub, or, xor, "*", "-", "|", "^");
run_inner(s, n_args, shape, mul, sub, or, or, "*", "-", "|", "|");
run_inner(s, n_args, shape, mul, sub, or, sub, "*", "-", "|", "-");
run_inner(s, n_args, shape, mul, sub, or, bus, "*", "-", "|", "←");
run_inner(s, n_args, shape, mul, sub, or, mul, "*", "-", "|", "*");
run_inner(s, n_args, shape, mul, sub, or, rsh, "*", "-", "|", ">>");
run_inner(s, n_args, shape, mul, sub, or, hsr, "*", "-", "|", "<<");
run_inner(s, n_args, shape, mul, sub, sub, and, "*", "-", "-", "&");
run_inner(s, n_args, shape, mul, sub, sub, add, "*", "-", "-", "+");
run_inner(s, n_args, shape, mul, sub, sub, xor, "*", "-", "-", "^");
run_inner(s, n_args, shape, mul, sub, sub, or, "*", "-", "-", "|");
run_inner(s, n_args, shape, mul, sub, sub, sub, "*", "-", "-", "-");
run_inner(s, n_args, shape, mul, sub, sub, bus, "*", "-", "-", "←");
run_inner(s, n_args, shape, mul, sub, sub, mul, "*", "-", "-", "*");
run_inner(s, n_args, shape, mul, sub, sub, rsh, "*", "-", "-", ">>");
run_inner(s, n_args, shape, mul, sub, sub, hsr, "*", "-", "-", "<<");
run_inner(s, n_args, shape, mul, sub, bus, and, "*", "-", "←", "&");
run_inner(s, n_args, shape, mul, sub, bus, add, "*", "-", "←", "+");
run_inner(s, n_args, shape, mul, sub, bus, xor, "*", "-", "←", "^");
run_inner(s, n_args, shape, mul, sub, bus, or, "*", "-", "←", "|");
run_inner(s, n_args, shape, mul, sub, bus, sub, "*", "-", "←", "-");
run_inner(s, n_args, shape, mul, sub, bus, bus, "*", "-", "←", "←");
run_inner(s, n_args, shape, mul, sub, bus, mul, "*", "-", "←", "*");
run_inner(s, n_args, shape, mul, sub, bus, rsh, "*", "-", "←", ">>");
run_inner(s, n_args, shape, mul, sub, bus, hsr, "*", "-", "←", "<<");
run_inner(s, n_args, shape, mul, sub, mul, and, "*", "-", "*", "&");
run_inner(s, n_args, shape, mul, sub, mul, add, "*", "-", "*", "+");
run_inner(s, n_args, shape, mul, sub, mul, xor, "*", "-", "*", "^");
run_inner(s, n_args, shape, mul, sub, mul, or, "*", "-", "*", "|");
run_inner(s, n_args, shape, mul, sub, mul, sub, "*", "-", "*", "-");
run_inner(s, n_args, shape, mul, sub, mul, bus, "*", "-", "*", "←");
run_inner(s, n_args, shape, mul, sub, mul, mul, "*", "-", "*", "*");
run_inner(s, n_args, shape, mul, sub, mul, rsh, "*", "-", "*", ">>");
run_inner(s, n_args, shape, mul, sub, mul, hsr, "*", "-", "*", "<<");
run_inner(s, n_args, shape, mul, sub, rsh, and, "*", "-", ">>", "&");
run_inner(s, n_args, shape, mul, sub, rsh, add, "*", "-", ">>", "+");
run_inner(s, n_args, shape, mul, sub, rsh, xor, "*", "-", ">>", "^");
run_inner(s, n_args, shape, mul, sub, rsh, or, "*", "-", ">>", "|");
run_inner(s, n_args, shape, mul, sub, rsh, sub, "*", "-", ">>", "-");
run_inner(s, n_args, shape, mul, sub, rsh, bus, "*", "-", ">>", "←");
run_inner(s, n_args, shape, mul, sub, rsh, mul, "*", "-", ">>", "*");
run_inner(s, n_args, shape, mul, sub, rsh, rsh, "*", "-", ">>", ">>");
run_inner(s, n_args, shape, mul, sub, rsh, hsr, "*", "-", ">>", "<<");
run_inner(s, n_args, shape, mul, sub, hsr, and, "*", "-", "<<", "&");
run_inner(s, n_args, shape, mul, sub, hsr, add, "*", "-", "<<", "+");
run_inner(s, n_args, shape, mul, sub, hsr, xor, "*", "-", "<<", "^");
run_inner(s, n_args, shape, mul, sub, hsr, or, "*", "-", "<<", "|");
run_inner(s, n_args, shape, mul, sub, hsr, sub, "*", "-", "<<", "-");
run_inner(s, n_args, shape, mul, sub, hsr, bus, "*", "-", "<<", "←");
run_inner(s, n_args, shape, mul, sub, hsr, mul, "*", "-", "<<", "*");
run_inner(s, n_args, shape, mul, sub, hsr, rsh, "*", "-", "<<", ">>");
run_inner(s, n_args, shape, mul, sub, hsr, hsr, "*", "-", "<<", "<<");
run_inner(s, n_args, shape, mul, bus, and, and, "*", "←", "&", "&");
run_inner(s, n_args, shape, mul, bus, and, add, "*", "←", "&", "+");
run_inner(s, n_args, shape, mul, bus, and, xor, "*", "←", "&", "^");
run_inner(s, n_args, shape, mul, bus, and, or, "*", "←", "&", "|");
run_inner(s, n_args, shape, mul, bus, and, sub, "*", "←", "&", "-");
run_inner(s, n_args, shape, mul, bus, and, bus, "*", "←", "&", "←");
run_inner(s, n_args, shape, mul, bus, and, mul, "*", "←", "&", "*");
run_inner(s, n_args, shape, mul, bus, and, rsh, "*", "←", "&", ">>");
run_inner(s, n_args, shape, mul, bus, and, hsr, "*", "←", "&", "<<");
run_inner(s, n_args, shape, mul, bus, add, and, "*", "←", "+", "&");
run_inner(s, n_args, shape, mul, bus, add, add, "*", "←", "+", "+");
run_inner(s, n_args, shape, mul, bus, add, xor, "*", "←", "+", "^");
run_inner(s, n_args, shape, mul, bus, add, or, "*", "←", "+", "|");
run_inner(s, n_args, shape, mul, bus, add, sub, "*", "←", "+", "-");
run_inner(s, n_args, shape, mul, bus, add, bus, "*", "←", "+", "←");
run_inner(s, n_args, shape, mul, bus, add, mul, "*", "←", "+", "*");
run_inner(s, n_args, shape, mul, bus, add, rsh, "*", "←", "+", ">>");
run_inner(s, n_args, shape, mul, bus, add, hsr, "*", "←", "+", "<<");
run_inner(s, n_args, shape, mul, bus, xor, and, "*", "←", "^", "&");
run_inner(s, n_args, shape, mul, bus, xor, add, "*", "←", "^", "+");
run_inner(s, n_args, shape, mul, bus, xor, xor, "*", "←", "^", "^");
run_inner(s, n_args, shape, mul, bus, xor, or, "*", "←", "^", "|");
run_inner(s, n_args, shape, mul, bus, xor, sub, "*", "←", "^", "-");
run_inner(s, n_args, shape, mul, bus, xor, bus, "*", "←", "^", "←");
run_inner(s, n_args, shape, mul, bus, xor, mul, "*", "←", "^", "*");
run_inner(s, n_args, shape, mul, bus, xor, rsh, "*", "←", "^", ">>");
run_inner(s, n_args, shape, mul, bus, xor, hsr, "*", "←", "^", "<<");
run_inner(s, n_args, shape, mul, bus, or, and, "*", "←", "|", "&");
run_inner(s, n_args, shape, mul, bus, or, add, "*", "←", "|", "+");
run_inner(s, n_args, shape, mul, bus, or, xor, "*", "←", "|", "^");
run_inner(s, n_args, shape, mul, bus, or, or, "*", "←", "|", "|");
run_inner(s, n_args, shape, mul, bus, or, sub, "*", "←", "|", "-");
run_inner(s, n_args, shape, mul, bus, or, bus, "*", "←", "|", "←");
run_inner(s, n_args, shape, mul, bus, or, mul, "*", "←", "|", "*");
run_inner(s, n_args, shape, mul, bus, or, rsh, "*", "←", "|", ">>");
run_inner(s, n_args, shape, mul, bus, or, hsr, "*", "←", "|", "<<");
run_inner(s, n_args, shape, mul, bus, sub, and, "*", "←", "-", "&");
run_inner(s, n_args, shape, mul, bus, sub, add, "*", "←", "-", "+");
run_inner(s, n_args, shape, mul, bus, sub, xor, "*", "←", "-", "^");
run_inner(s, n_args, shape, mul, bus, sub, or, "*", "←", "-", "|");
run_inner(s, n_args, shape, mul, bus, sub, sub, "*", "←", "-", "-");
run_inner(s, n_args, shape, mul, bus, sub, bus, "*", "←", "-", "←");
run_inner(s, n_args, shape, mul, bus, sub, mul, "*", "←", "-", "*");
run_inner(s, n_args, shape, mul, bus, sub, rsh, "*", "←", "-", ">>");
run_inner(s, n_args, shape, mul, bus, sub, hsr, "*", "←", "-", "<<");
run_inner(s, n_args, shape, mul, bus, bus, and, "*", "←", "←", "&");
run_inner(s, n_args, shape, mul, bus, bus, add, "*", "←", "←", "+");
run_inner(s, n_args, shape, mul, bus, bus, xor, "*", "←", "←", "^");
run_inner(s, n_args, shape, mul, bus, bus, or, "*", "←", "←", "|");
run_inner(s, n_args, shape, mul, bus, bus, sub, "*", "←", "←", "-");
run_inner(s, n_args, shape, mul, bus, bus, bus, "*", "←", "←", "←");
run_inner(s, n_args, shape, mul, bus, bus, mul, "*", "←", "←", "*");
run_inner(s, n_args, shape, mul, bus, bus, rsh, "*", "←", "←", ">>");
run_inner(s, n_args, shape, mul, bus, bus, hsr, "*", "←", "←", "<<");
run_inner(s, n_args, shape, mul, bus, mul, and, "*", "←", "*", "&");
run_inner(s, n_args, shape, mul, bus, mul, add, "*", "←", "*", "+");
run_inner(s, n_args, shape, mul, bus, mul, xor, "*", "←", "*", "^");
run_inner(s, n_args, shape, mul, bus, mul, or, "*", "←", "*", "|");
run_inner(s, n_args, shape, mul, bus, mul, sub, "*", "←", "*", "-");
run_inner(s, n_args, shape, mul, bus, mul, bus, "*", "←", "*", "←");
run_inner(s, n_args, shape, mul, bus, mul, mul, "*", "←", "*", "*");
run_inner(s, n_args, shape, mul, bus, mul, rsh, "*", "←", "*", ">>");
run_inner(s, n_args, shape, mul, bus, mul, hsr, "*", "←", "*", "<<");
run_inner(s, n_args, shape, mul, bus, rsh, and, "*", "←", ">>", "&");
run_inner(s, n_args, shape, mul, bus, rsh, add, "*", "←", ">>", "+");
run_inner(s, n_args, shape, mul, bus, rsh, xor, "*", "←", ">>", "^");
run_inner(s, n_args, shape, mul, bus, rsh, or, "*", "←", ">>", "|");
run_inner(s, n_args, shape, mul, bus, rsh, sub, "*", "←", ">>", "-");
run_inner(s, n_args, shape, mul, bus, rsh, bus, "*", "←", ">>", "←");
run_inner(s, n_args, shape, mul, bus, rsh, mul, "*", "←", ">>", "*");
run_inner(s, n_args, shape, mul, bus, rsh, rsh, "*", "←", ">>", ">>");
run_inner(s, n_args, shape, mul, bus, rsh, hsr, "*", "←", ">>", "<<");
run_inner(s, n_args, shape, mul, bus, hsr, and, "*", "←", "<<", "&");
run_inner(s, n_args, shape, mul, bus, hsr, add, "*", "←", "<<", "+");
run_inner(s, n_args, shape, mul, bus, hsr, xor, "*", "←", "<<", "^");
run_inner(s, n_args, shape, mul, bus, hsr, or, "*", "←", "<<", "|");
run_inner(s, n_args, shape, mul, bus, hsr, sub, "*", "←", "<<", "-");
run_inner(s, n_args, shape, mul, bus, hsr, bus, "*", "←", "<<", "←");
run_inner(s, n_args, shape, mul, bus, hsr, mul, "*", "←", "<<", "*");
run_inner(s, n_args, shape, mul, bus, hsr, rsh, "*", "←", "<<", ">>");
run_inner(s, n_args, shape, mul, bus, hsr, hsr, "*", "←", "<<", "<<");
run_inner(s, n_args, shape, mul, mul, and, and, "*", "*", "&", "&");
run_inner(s, n_args, shape, mul, mul, and, add, "*", "*", "&", "+");
run_inner(s, n_args, shape, mul, mul, and, xor, "*", "*", "&", "^");
run_inner(s, n_args, shape, mul, mul, and, or, "*", "*", "&", "|");
run_inner(s, n_args, shape, mul, mul, and, sub, "*", "*", "&", "-");
run_inner(s, n_args, shape, mul, mul, and, bus, "*", "*", "&", "←");
run_inner(s, n_args, shape, mul, mul, and, mul, "*", "*", "&", "*");
run_inner(s, n_args, shape, mul, mul, and, rsh, "*", "*", "&", ">>");
run_inner(s, n_args, shape, mul, mul, and, hsr, "*", "*", "&", "<<");
run_inner(s, n_args, shape, mul, mul, add, and, "*", "*", "+", "&");
run_inner(s, n_args, shape, mul, mul, add, add, "*", "*", "+", "+");
run_inner(s, n_args, shape, mul, mul, add, xor, "*", "*", "+", "^");
run_inner(s, n_args, shape, mul, mul, add, or, "*", "*", "+", "|");
run_inner(s, n_args, shape, mul, mul, add, sub, "*", "*", "+", "-");
run_inner(s, n_args, shape, mul, mul, add, bus, "*", "*", "+", "←");
run_inner(s, n_args, shape, mul, mul, add, mul, "*", "*", "+", "*");
run_inner(s, n_args, shape, mul, mul, add, rsh, "*", "*", "+", ">>");
run_inner(s, n_args, shape, mul, mul, add, hsr, "*", "*", "+", "<<");
run_inner(s, n_args, shape, mul, mul, xor, and, "*", "*", "^", "&");
run_inner(s, n_args, shape, mul, mul, xor, add, "*", "*", "^", "+");
run_inner(s, n_args, shape, mul, mul, xor, xor, "*", "*", "^", "^");
run_inner(s, n_args, shape, mul, mul, xor, or, "*", "*", "^", "|");
run_inner(s, n_args, shape, mul, mul, xor, sub, "*", "*", "^", "-");
run_inner(s, n_args, shape, mul, mul, xor, bus, "*", "*", "^", "←");
run_inner(s, n_args, shape, mul, mul, xor, mul, "*", "*", "^", "*");
run_inner(s, n_args, shape, mul, mul, xor, rsh, "*", "*", "^", ">>");
run_inner(s, n_args, shape, mul, mul, xor, hsr, "*", "*", "^", "<<");
run_inner(s, n_args, shape, mul, mul, or, and, "*", "*", "|", "&");
run_inner(s, n_args, shape, mul, mul, or, add, "*", "*", "|", "+");
run_inner(s, n_args, shape, mul, mul, or, xor, "*", "*", "|", "^");
run_inner(s, n_args, shape, mul, mul, or, or, "*", "*", "|", "|");
run_inner(s, n_args, shape, mul, mul, or, sub, "*", "*", "|", "-");
run_inner(s, n_args, shape, mul, mul, or, bus, "*", "*", "|", "←");
run_inner(s, n_args, shape, mul, mul, or, mul, "*", "*", "|", "*");
run_inner(s, n_args, shape, mul, mul, or, rsh, "*", "*", "|", ">>");
run_inner(s, n_args, shape, mul, mul, or, hsr, "*", "*", "|", "<<");
run_inner(s, n_args, shape, mul, mul, sub, and, "*", "*", "-", "&");
run_inner(s, n_args, shape, mul, mul, sub, add, "*", "*", "-", "+");
run_inner(s, n_args, shape, mul, mul, sub, xor, "*", "*", "-", "^");
run_inner(s, n_args, shape, mul, mul, sub, or, "*", "*", "-", "|");
run_inner(s, n_args, shape, mul, mul, sub, sub, "*", "*", "-", "-");
run_inner(s, n_args, shape, mul, mul, sub, bus, "*", "*", "-", "←");
run_inner(s, n_args, shape, mul, mul, sub, mul, "*", "*", "-", "*");
run_inner(s, n_args, shape, mul, mul, sub, rsh, "*", "*", "-", ">>");
run_inner(s, n_args, shape, mul, mul, sub, hsr, "*", "*", "-", "<<");
run_inner(s, n_args, shape, mul, mul, bus, and, "*", "*", "←", "&");
run_inner(s, n_args, shape, mul, mul, bus, add, "*", "*", "←", "+");
run_inner(s, n_args, shape, mul, mul, bus, xor, "*", "*", "←", "^");
run_inner(s, n_args, shape, mul, mul, bus, or, "*", "*", "←", "|");
run_inner(s, n_args, shape, mul, mul, bus, sub, "*", "*", "←", "-");
run_inner(s, n_args, shape, mul, mul, bus, bus, "*", "*", "←", "←");
run_inner(s, n_args, shape, mul, mul, bus, mul, "*", "*", "←", "*");
run_inner(s, n_args, shape, mul, mul, bus, rsh, "*", "*", "←", ">>");
run_inner(s, n_args, shape, mul, mul, bus, hsr, "*", "*", "←", "<<");
run_inner(s, n_args, shape, mul, mul, mul, and, "*", "*", "*", "&");
run_inner(s, n_args, shape, mul, mul, mul, add, "*", "*", "*", "+");
run_inner(s, n_args, shape, mul, mul, mul, xor, "*", "*", "*", "^");
run_inner(s, n_args, shape, mul, mul, mul, or, "*", "*", "*", "|");
run_inner(s, n_args, shape, mul, mul, mul, sub, "*", "*", "*", "-");
run_inner(s, n_args, shape, mul, mul, mul, bus, "*", "*", "*", "←");
run_inner(s, n_args, shape, mul, mul, mul, mul, "*", "*", "*", "*");
run_inner(s, n_args, shape, mul, mul, mul, rsh, "*", "*", "*", ">>");
run_inner(s, n_args, shape, mul, mul, mul, hsr, "*", "*", "*", "<<");
run_inner(s, n_args, shape, mul, mul, rsh, and, "*", "*", ">>", "&");
run_inner(s, n_args, shape, mul, mul, rsh, add, "*", "*", ">>", "+");
run_inner(s, n_args, shape, mul, mul, rsh, xor, "*", "*", ">>", "^");
run_inner(s, n_args, shape, mul, mul, rsh, or, "*", "*", ">>", "|");
run_inner(s, n_args, shape, mul, mul, rsh, sub, "*", "*", ">>", "-");
run_inner(s, n_args, shape, mul, mul, rsh, bus, "*", "*", ">>", "←");
run_inner(s, n_args, shape, mul, mul, rsh, mul, "*", "*", ">>", "*");
run_inner(s, n_args, shape, mul, mul, rsh, rsh, "*", "*", ">>", ">>");
run_inner(s, n_args, shape, mul, mul, rsh, hsr, "*", "*", ">>", "<<");
run_inner(s, n_args, shape, mul, mul, hsr, and, "*", "*", "<<", "&");
run_inner(s, n_args, shape, mul, mul, hsr, add, "*", "*", "<<", "+");
run_inner(s, n_args, shape, mul, mul, hsr, xor, "*", "*", "<<", "^");
run_inner(s, n_args, shape, mul, mul, hsr, or, "*", "*", "<<", "|");
run_inner(s, n_args, shape, mul, mul, hsr, sub, "*", "*", "<<", "-");
run_inner(s, n_args, shape, mul, mul, hsr, bus, "*", "*", "<<", "←");
run_inner(s, n_args, shape, mul, mul, hsr, mul, "*", "*", "<<", "*");
run_inner(s, n_args, shape, mul, mul, hsr, rsh, "*", "*", "<<", ">>");
run_inner(s, n_args, shape, mul, mul, hsr, hsr, "*", "*", "<<", "<<");
run_inner(s, n_args, shape, mul, rsh, and, and, "*", ">>", "&", "&");
run_inner(s, n_args, shape, mul, rsh, and, add, "*", ">>", "&", "+");
run_inner(s, n_args, shape, mul, rsh, and, xor, "*", ">>", "&", "^");
run_inner(s, n_args, shape, mul, rsh, and, or, "*", ">>", "&", "|");
run_inner(s, n_args, shape, mul, rsh, and, sub, "*", ">>", "&", "-");
run_inner(s, n_args, shape, mul, rsh, and, bus, "*", ">>", "&", "←");
run_inner(s, n_args, shape, mul, rsh, and, mul, "*", ">>", "&", "*");
run_inner(s, n_args, shape, mul, rsh, and, rsh, "*", ">>", "&", ">>");
run_inner(s, n_args, shape, mul, rsh, and, hsr, "*", ">>", "&", "<<");
run_inner(s, n_args, shape, mul, rsh, add, and, "*", ">>", "+", "&");
run_inner(s, n_args, shape, mul, rsh, add, add, "*", ">>", "+", "+");
run_inner(s, n_args, shape, mul, rsh, add, xor, "*", ">>", "+", "^");
run_inner(s, n_args, shape, mul, rsh, add, or, "*", ">>", "+", "|");
run_inner(s, n_args, shape, mul, rsh, add, sub, "*", ">>", "+", "-");
run_inner(s, n_args, shape, mul, rsh, add, bus, "*", ">>", "+", "←");
run_inner(s, n_args, shape, mul, rsh, add, mul, "*", ">>", "+", "*");
run_inner(s, n_args, shape, mul, rsh, add, rsh, "*", ">>", "+", ">>");
run_inner(s, n_args, shape, mul, rsh, add, hsr, "*", ">>", "+", "<<");
run_inner(s, n_args, shape, mul, rsh, xor, and, "*", ">>", "^", "&");
run_inner(s, n_args, shape, mul, rsh, xor, add, "*", ">>", "^", "+");
run_inner(s, n_args, shape, mul, rsh, xor, xor, "*", ">>", "^", "^");
run_inner(s, n_args, shape, mul, rsh, xor, or, "*", ">>", "^", "|");
run_inner(s, n_args, shape, mul, rsh, xor, sub, "*", ">>", "^", "-");
run_inner(s, n_args, shape, mul, rsh, xor, bus, "*", ">>", "^", "←");
run_inner(s, n_args, shape, mul, rsh, xor, mul, "*", ">>", "^", "*");
run_inner(s, n_args, shape, mul, rsh, xor, rsh, "*", ">>", "^", ">>");
run_inner(s, n_args, shape, mul, rsh, xor, hsr, "*", ">>", "^", "<<");
run_inner(s, n_args, shape, mul, rsh, or, and, "*", ">>", "|", "&");
run_inner(s, n_args, shape, mul, rsh, or, add, "*", ">>", "|", "+");
run_inner(s, n_args, shape, mul, rsh, or, xor, "*", ">>", "|", "^");
run_inner(s, n_args, shape, mul, rsh, or, or, "*", ">>", "|", "|");
run_inner(s, n_args, shape, mul, rsh, or, sub, "*", ">>", "|", "-");
run_inner(s, n_args, shape, mul, rsh, or, bus, "*", ">>", "|", "←");
run_inner(s, n_args, shape, mul, rsh, or, mul, "*", ">>", "|", "*");
run_inner(s, n_args, shape, mul, rsh, or, rsh, "*", ">>", "|", ">>");
run_inner(s, n_args, shape, mul, rsh, or, hsr, "*", ">>", "|", "<<");
run_inner(s, n_args, shape, mul, rsh, sub, and, "*", ">>", "-", "&");
run_inner(s, n_args, shape, mul, rsh, sub, add, "*", ">>", "-", "+");
run_inner(s, n_args, shape, mul, rsh, sub, xor, "*", ">>", "-", "^");
run_inner(s, n_args, shape, mul, rsh, sub, or, "*", ">>", "-", "|");
run_inner(s, n_args, shape, mul, rsh, sub, sub, "*", ">>", "-", "-");
run_inner(s, n_args, shape, mul, rsh, sub, bus, "*", ">>", "-", "←");
run_inner(s, n_args, shape, mul, rsh, sub, mul, "*", ">>", "-", "*");
run_inner(s, n_args, shape, mul, rsh, sub, rsh, "*", ">>", "-", ">>");
run_inner(s, n_args, shape, mul, rsh, sub, hsr, "*", ">>", "-", "<<");
run_inner(s, n_args, shape, mul, rsh, bus, and, "*", ">>", "←", "&");
run_inner(s, n_args, shape, mul, rsh, bus, add, "*", ">>", "←", "+");
run_inner(s, n_args, shape, mul, rsh, bus, xor, "*", ">>", "←", "^");
run_inner(s, n_args, shape, mul, rsh, bus, or, "*", ">>", "←", "|");
run_inner(s, n_args, shape, mul, rsh, bus, sub, "*", ">>", "←", "-");
run_inner(s, n_args, shape, mul, rsh, bus, bus, "*", ">>", "←", "←");
run_inner(s, n_args, shape, mul, rsh, bus, mul, "*", ">>", "←", "*");
run_inner(s, n_args, shape, mul, rsh, bus, rsh, "*", ">>", "←", ">>");
run_inner(s, n_args, shape, mul, rsh, bus, hsr, "*", ">>", "←", "<<");
run_inner(s, n_args, shape, mul, rsh, mul, and, "*", ">>", "*", "&");
run_inner(s, n_args, shape, mul, rsh, mul, add, "*", ">>", "*", "+");
run_inner(s, n_args, shape, mul, rsh, mul, xor, "*", ">>", "*", "^");
run_inner(s, n_args, shape, mul, rsh, mul, or, "*", ">>", "*", "|");
run_inner(s, n_args, shape, mul, rsh, mul, sub, "*", ">>", "*", "-");
run_inner(s, n_args, shape, mul, rsh, mul, bus, "*", ">>", "*", "←");
run_inner(s, n_args, shape, mul, rsh, mul, mul, "*", ">>", "*", "*");
run_inner(s, n_args, shape, mul, rsh, mul, rsh, "*", ">>", "*", ">>");
run_inner(s, n_args, shape, mul, rsh, mul, hsr, "*", ">>", "*", "<<");
run_inner(s, n_args, shape, mul, rsh, rsh, and, "*", ">>", ">>", "&");
run_inner(s, n_args, shape, mul, rsh, rsh, add, "*", ">>", ">>", "+");
run_inner(s, n_args, shape, mul, rsh, rsh, xor, "*", ">>", ">>", "^");
run_inner(s, n_args, shape, mul, rsh, rsh, or, "*", ">>", ">>", "|");
run_inner(s, n_args, shape, mul, rsh, rsh, sub, "*", ">>", ">>", "-");
run_inner(s, n_args, shape, mul, rsh, rsh, bus, "*", ">>", ">>", "←");
run_inner(s, n_args, shape, mul, rsh, rsh, mul, "*", ">>", ">>", "*");
run_inner(s, n_args, shape, mul, rsh, rsh, rsh, "*", ">>", ">>", ">>");
run_inner(s, n_args, shape, mul, rsh, rsh, hsr, "*", ">>", ">>", "<<");
run_inner(s, n_args, shape, mul, rsh, hsr, and, "*", ">>", "<<", "&");
run_inner(s, n_args, shape, mul, rsh, hsr, add, "*", ">>", "<<", "+");
run_inner(s, n_args, shape, mul, rsh, hsr, xor, "*", ">>", "<<", "^");
run_inner(s, n_args, shape, mul, rsh, hsr, or, "*", ">>", "<<", "|");
run_inner(s, n_args, shape, mul, rsh, hsr, sub, "*", ">>", "<<", "-");
run_inner(s, n_args, shape, mul, rsh, hsr, bus, "*", ">>", "<<", "←");
run_inner(s, n_args, shape, mul, rsh, hsr, mul, "*", ">>", "<<", "*");
run_inner(s, n_args, shape, mul, rsh, hsr, rsh, "*", ">>", "<<", ">>");
run_inner(s, n_args, shape, mul, rsh, hsr, hsr, "*", ">>", "<<", "<<");
run_inner(s, n_args, shape, mul, hsr, and, and, "*", "<<", "&", "&");
run_inner(s, n_args, shape, mul, hsr, and, add, "*", "<<", "&", "+");
run_inner(s, n_args, shape, mul, hsr, and, xor, "*", "<<", "&", "^");
run_inner(s, n_args, shape, mul, hsr, and, or, "*", "<<", "&", "|");
run_inner(s, n_args, shape, mul, hsr, and, sub, "*", "<<", "&", "-");
run_inner(s, n_args, shape, mul, hsr, and, bus, "*", "<<", "&", "←");
run_inner(s, n_args, shape, mul, hsr, and, mul, "*", "<<", "&", "*");
run_inner(s, n_args, shape, mul, hsr, and, rsh, "*", "<<", "&", ">>");
run_inner(s, n_args, shape, mul, hsr, and, hsr, "*", "<<", "&", "<<");
run_inner(s, n_args, shape, mul, hsr, add, and, "*", "<<", "+", "&");
run_inner(s, n_args, shape, mul, hsr, add, add, "*", "<<", "+", "+");
run_inner(s, n_args, shape, mul, hsr, add, xor, "*", "<<", "+", "^");
run_inner(s, n_args, shape, mul, hsr, add, or, "*", "<<", "+", "|");
run_inner(s, n_args, shape, mul, hsr, add, sub, "*", "<<", "+", "-");
run_inner(s, n_args, shape, mul, hsr, add, bus, "*", "<<", "+", "←");
run_inner(s, n_args, shape, mul, hsr, add, mul, "*", "<<", "+", "*");
run_inner(s, n_args, shape, mul, hsr, add, rsh, "*", "<<", "+", ">>");
run_inner(s, n_args, shape, mul, hsr, add, hsr, "*", "<<", "+", "<<");
run_inner(s, n_args, shape, mul, hsr, xor, and, "*", "<<", "^", "&");
run_inner(s, n_args, shape, mul, hsr, xor, add, "*", "<<", "^", "+");
run_inner(s, n_args, shape, mul, hsr, xor, xor, "*", "<<", "^", "^");
run_inner(s, n_args, shape, mul, hsr, xor, or, "*", "<<", "^", "|");
run_inner(s, n_args, shape, mul, hsr, xor, sub, "*", "<<", "^", "-");
run_inner(s, n_args, shape, mul, hsr, xor, bus, "*", "<<", "^", "←");
run_inner(s, n_args, shape, mul, hsr, xor, mul, "*", "<<", "^", "*");
run_inner(s, n_args, shape, mul, hsr, xor, rsh, "*", "<<", "^", ">>");
run_inner(s, n_args, shape, mul, hsr, xor, hsr, "*", "<<", "^", "<<");
run_inner(s, n_args, shape, mul, hsr, or, and, "*", "<<", "|", "&");
run_inner(s, n_args, shape, mul, hsr, or, add, "*", "<<", "|", "+");
run_inner(s, n_args, shape, mul, hsr, or, xor, "*", "<<", "|", "^");
run_inner(s, n_args, shape, mul, hsr, or, or, "*", "<<", "|", "|");
run_inner(s, n_args, shape, mul, hsr, or, sub, "*", "<<", "|", "-");
run_inner(s, n_args, shape, mul, hsr, or, bus, "*", "<<", "|", "←");
run_inner(s, n_args, shape, mul, hsr, or, mul, "*", "<<", "|", "*");
run_inner(s, n_args, shape, mul, hsr, or, rsh, "*", "<<", "|", ">>");
run_inner(s, n_args, shape, mul, hsr, or, hsr, "*", "<<", "|", "<<");
run_inner(s, n_args, shape, mul, hsr, sub, and, "*", "<<", "-", "&");
run_inner(s, n_args, shape, mul, hsr, sub, add, "*", "<<", "-", "+");
run_inner(s, n_args, shape, mul, hsr, sub, xor, "*", "<<", "-", "^");
run_inner(s, n_args, shape, mul, hsr, sub, or, "*", "<<", "-", "|");
run_inner(s, n_args, shape, mul, hsr, sub, sub, "*", "<<", "-", "-");
run_inner(s, n_args, shape, mul, hsr, sub, bus, "*", "<<", "-", "←");
run_inner(s, n_args, shape, mul, hsr, sub, mul, "*", "<<", "-", "*");
run_inner(s, n_args, shape, mul, hsr, sub, rsh, "*", "<<", "-", ">>");
run_inner(s, n_args, shape, mul, hsr, sub, hsr, "*", "<<", "-", "<<");
run_inner(s, n_args, shape, mul, hsr, bus, and, "*", "<<", "←", "&");
run_inner(s, n_args, shape, mul, hsr, bus, add, "*", "<<", "←", "+");
run_inner(s, n_args, shape, mul, hsr, bus, xor, "*", "<<", "←", "^");
run_inner(s, n_args, shape, mul, hsr, bus, or, "*", "<<", "←", "|");
run_inner(s, n_args, shape, mul, hsr, bus, sub, "*", "<<", "←", "-");
run_inner(s, n_args, shape, mul, hsr, bus, bus, "*", "<<", "←", "←");
run_inner(s, n_args, shape, mul, hsr, bus, mul, "*", "<<", "←", "*");
run_inner(s, n_args, shape, mul, hsr, bus, rsh, "*", "<<", "←", ">>");
run_inner(s, n_args, shape, mul, hsr, bus, hsr, "*", "<<", "←", "<<");
run_inner(s, n_args, shape, mul, hsr, mul, and, "*", "<<", "*", "&");
run_inner(s, n_args, shape, mul, hsr, mul, add, "*", "<<", "*", "+");
run_inner(s, n_args, shape, mul, hsr, mul, xor, "*", "<<", "*", "^");
run_inner(s, n_args, shape, mul, hsr, mul, or, "*", "<<", "*", "|");
run_inner(s, n_args, shape, mul, hsr, mul, sub, "*", "<<", "*", "-");
run_inner(s, n_args, shape, mul, hsr, mul, bus, "*", "<<", "*", "←");
run_inner(s, n_args, shape, mul, hsr, mul, mul, "*", "<<", "*", "*");
run_inner(s, n_args, shape, mul, hsr, mul, rsh, "*", "<<", "*", ">>");
run_inner(s, n_args, shape, mul, hsr, mul, hsr, "*", "<<", "*", "<<");
run_inner(s, n_args, shape, mul, hsr, rsh, and, "*", "<<", ">>", "&");
run_inner(s, n_args, shape, mul, hsr, rsh, add, "*", "<<", ">>", "+");
run_inner(s, n_args, shape, mul, hsr, rsh, xor, "*", "<<", ">>", "^");
run_inner(s, n_args, shape, mul, hsr, rsh, or, "*", "<<", ">>", "|");
run_inner(s, n_args, shape, mul, hsr, rsh, sub, "*", "<<", ">>", "-");
run_inner(s, n_args, shape, mul, hsr, rsh, bus, "*", "<<", ">>", "←");
run_inner(s, n_args, shape, mul, hsr, rsh, mul, "*", "<<", ">>", "*");
run_inner(s, n_args, shape, mul, hsr, rsh, rsh, "*", "<<", ">>", ">>");
run_inner(s, n_args, shape, mul, hsr, rsh, hsr, "*", "<<", ">>", "<<");
run_inner(s, n_args, shape, mul, hsr, hsr, and, "*", "<<", "<<", "&");
run_inner(s, n_args, shape, mul, hsr, hsr, add, "*", "<<", "<<", "+");
run_inner(s, n_args, shape, mul, hsr, hsr, xor, "*", "<<", "<<", "^");
run_inner(s, n_args, shape, mul, hsr, hsr, or, "*", "<<", "<<", "|");
run_inner(s, n_args, shape, mul, hsr, hsr, sub, "*", "<<", "<<", "-");
run_inner(s, n_args, shape, mul, hsr, hsr, bus, "*", "<<", "<<", "←");
run_inner(s, n_args, shape, mul, hsr, hsr, mul, "*", "<<", "<<", "*");
run_inner(s, n_args, shape, mul, hsr, hsr, rsh, "*", "<<", "<<", ">>");
run_inner(s, n_args, shape, mul, hsr, hsr, hsr, "*", "<<", "<<", "<<");
}));
threads.push(thread::spawn(move || {
run_inner(s, n_args, shape, rsh, and, and, and, ">>", "&", "&", "&");
run_inner(s, n_args, shape, rsh, and, and, add, ">>", "&", "&", "+");
run_inner(s, n_args, shape, rsh, and, and, xor, ">>", "&", "&", "^");
run_inner(s, n_args, shape, rsh, and, and, or, ">>", "&", "&", "|");
run_inner(s, n_args, shape, rsh, and, and, sub, ">>", "&", "&", "-");
run_inner(s, n_args, shape, rsh, and, and, bus, ">>", "&", "&", "←");
run_inner(s, n_args, shape, rsh, and, and, mul, ">>", "&", "&", "*");
run_inner(s, n_args, shape, rsh, and, and, rsh, ">>", "&", "&", ">>");
run_inner(s, n_args, shape, rsh, and, and, hsr, ">>", "&", "&", "<<");
run_inner(s, n_args, shape, rsh, and, add, and, ">>", "&", "+", "&");
run_inner(s, n_args, shape, rsh, and, add, add, ">>", "&", "+", "+");
run_inner(s, n_args, shape, rsh, and, add, xor, ">>", "&", "+", "^");
run_inner(s, n_args, shape, rsh, and, add, or, ">>", "&", "+", "|");
run_inner(s, n_args, shape, rsh, and, add, sub, ">>", "&", "+", "-");
run_inner(s, n_args, shape, rsh, and, add, bus, ">>", "&", "+", "←");
run_inner(s, n_args, shape, rsh, and, add, mul, ">>", "&", "+", "*");
run_inner(s, n_args, shape, rsh, and, add, rsh, ">>", "&", "+", ">>");
run_inner(s, n_args, shape, rsh, and, add, hsr, ">>", "&", "+", "<<");
run_inner(s, n_args, shape, rsh, and, xor, and, ">>", "&", "^", "&");
run_inner(s, n_args, shape, rsh, and, xor, add, ">>", "&", "^", "+");
run_inner(s, n_args, shape, rsh, and, xor, xor, ">>", "&", "^", "^");
run_inner(s, n_args, shape, rsh, and, xor, or, ">>", "&", "^", "|");
run_inner(s, n_args, shape, rsh, and, xor, sub, ">>", "&", "^", "-");
run_inner(s, n_args, shape, rsh, and, xor, bus, ">>", "&", "^", "←");
run_inner(s, n_args, shape, rsh, and, xor, mul, ">>", "&", "^", "*");
run_inner(s, n_args, shape, rsh, and, xor, rsh, ">>", "&", "^", ">>");
run_inner(s, n_args, shape, rsh, and, xor, hsr, ">>", "&", "^", "<<");
run_inner(s, n_args, shape, rsh, and, or, and, ">>", "&", "|", "&");
run_inner(s, n_args, shape, rsh, and, or, add, ">>", "&", "|", "+");
run_inner(s, n_args, shape, rsh, and, or, xor, ">>", "&", "|", "^");
run_inner(s, n_args, shape, rsh, and, or, or, ">>", "&", "|", "|");
run_inner(s, n_args, shape, rsh, and, or, sub, ">>", "&", "|", "-");
run_inner(s, n_args, shape, rsh, and, or, bus, ">>", "&", "|", "←");
run_inner(s, n_args, shape, rsh, and, or, mul, ">>", "&", "|", "*");
run_inner(s, n_args, shape, rsh, and, or, rsh, ">>", "&", "|", ">>");
run_inner(s, n_args, shape, rsh, and, or, hsr, ">>", "&", "|", "<<");
run_inner(s, n_args, shape, rsh, and, sub, and, ">>", "&", "-", "&");
run_inner(s, n_args, shape, rsh, and, sub, add, ">>", "&", "-", "+");
run_inner(s, n_args, shape, rsh, and, sub, xor, ">>", "&", "-", "^");
run_inner(s, n_args, shape, rsh, and, sub, or, ">>", "&", "-", "|");
run_inner(s, n_args, shape, rsh, and, sub, sub, ">>", "&", "-", "-");
run_inner(s, n_args, shape, rsh, and, sub, bus, ">>", "&", "-", "←");
run_inner(s, n_args, shape, rsh, and, sub, mul, ">>", "&", "-", "*");
run_inner(s, n_args, shape, rsh, and, sub, rsh, ">>", "&", "-", ">>");
run_inner(s, n_args, shape, rsh, and, sub, hsr, ">>", "&", "-", "<<");
run_inner(s, n_args, shape, rsh, and, bus, and, ">>", "&", "←", "&");
run_inner(s, n_args, shape, rsh, and, bus, add, ">>", "&", "←", "+");
run_inner(s, n_args, shape, rsh, and, bus, xor, ">>", "&", "←", "^");
run_inner(s, n_args, shape, rsh, and, bus, or, ">>", "&", "←", "|");
run_inner(s, n_args, shape, rsh, and, bus, sub, ">>", "&", "←", "-");
run_inner(s, n_args, shape, rsh, and, bus, bus, ">>", "&", "←", "←");
run_inner(s, n_args, shape, rsh, and, bus, mul, ">>", "&", "←", "*");
run_inner(s, n_args, shape, rsh, and, bus, rsh, ">>", "&", "←", ">>");
run_inner(s, n_args, shape, rsh, and, bus, hsr, ">>", "&", "←", "<<");
run_inner(s, n_args, shape, rsh, and, mul, and, ">>", "&", "*", "&");
run_inner(s, n_args, shape, rsh, and, mul, add, ">>", "&", "*", "+");
run_inner(s, n_args, shape, rsh, and, mul, xor, ">>", "&", "*", "^");
run_inner(s, n_args, shape, rsh, and, mul, or, ">>", "&", "*", "|");
run_inner(s, n_args, shape, rsh, and, mul, sub, ">>", "&", "*", "-");
run_inner(s, n_args, shape, rsh, and, mul, bus, ">>", "&", "*", "←");
run_inner(s, n_args, shape, rsh, and, mul, mul, ">>", "&", "*", "*");
run_inner(s, n_args, shape, rsh, and, mul, rsh, ">>", "&", "*", ">>");
run_inner(s, n_args, shape, rsh, and, mul, hsr, ">>", "&", "*", "<<");
run_inner(s, n_args, shape, rsh, and, rsh, and, ">>", "&", ">>", "&");
run_inner(s, n_args, shape, rsh, and, rsh, add, ">>", "&", ">>", "+");
run_inner(s, n_args, shape, rsh, and, rsh, xor, ">>", "&", ">>", "^");
run_inner(s, n_args, shape, rsh, and, rsh, or, ">>", "&", ">>", "|");
run_inner(s, n_args, shape, rsh, and, rsh, sub, ">>", "&", ">>", "-");
run_inner(s, n_args, shape, rsh, and, rsh, bus, ">>", "&", ">>", "←");
run_inner(s, n_args, shape, rsh, and, rsh, mul, ">>", "&", ">>", "*");
run_inner(s, n_args, shape, rsh, and, rsh, rsh, ">>", "&", ">>", ">>");
run_inner(s, n_args, shape, rsh, and, rsh, hsr, ">>", "&", ">>", "<<");
run_inner(s, n_args, shape, rsh, and, hsr, and, ">>", "&", "<<", "&");
run_inner(s, n_args, shape, rsh, and, hsr, add, ">>", "&", "<<", "+");
run_inner(s, n_args, shape, rsh, and, hsr, xor, ">>", "&", "<<", "^");
run_inner(s, n_args, shape, rsh, and, hsr, or, ">>", "&", "<<", "|");
run_inner(s, n_args, shape, rsh, and, hsr, sub, ">>", "&", "<<", "-");
run_inner(s, n_args, shape, rsh, and, hsr, bus, ">>", "&", "<<", "←");
run_inner(s, n_args, shape, rsh, and, hsr, mul, ">>", "&", "<<", "*");
run_inner(s, n_args, shape, rsh, and, hsr, rsh, ">>", "&", "<<", ">>");
run_inner(s, n_args, shape, rsh, and, hsr, hsr, ">>", "&", "<<", "<<");
run_inner(s, n_args, shape, rsh, add, and, and, ">>", "+", "&", "&");
run_inner(s, n_args, shape, rsh, add, and, add, ">>", "+", "&", "+");
run_inner(s, n_args, shape, rsh, add, and, xor, ">>", "+", "&", "^");
run_inner(s, n_args, shape, rsh, add, and, or, ">>", "+", "&", "|");
run_inner(s, n_args, shape, rsh, add, and, sub, ">>", "+", "&", "-");
run_inner(s, n_args, shape, rsh, add, and, bus, ">>", "+", "&", "←");
run_inner(s, n_args, shape, rsh, add, and, mul, ">>", "+", "&", "*");
run_inner(s, n_args, shape, rsh, add, and, rsh, ">>", "+", "&", ">>");
run_inner(s, n_args, shape, rsh, add, and, hsr, ">>", "+", "&", "<<");
run_inner(s, n_args, shape, rsh, add, add, and, ">>", "+", "+", "&");
run_inner(s, n_args, shape, rsh, add, add, add, ">>", "+", "+", "+");
run_inner(s, n_args, shape, rsh, add, add, xor, ">>", "+", "+", "^");
run_inner(s, n_args, shape, rsh, add, add, or, ">>", "+", "+", "|");
run_inner(s, n_args, shape, rsh, add, add, sub, ">>", "+", "+", "-");
run_inner(s, n_args, shape, rsh, add, add, bus, ">>", "+", "+", "←");
run_inner(s, n_args, shape, rsh, add, add, mul, ">>", "+", "+", "*");
run_inner(s, n_args, shape, rsh, add, add, rsh, ">>", "+", "+", ">>");
run_inner(s, n_args, shape, rsh, add, add, hsr, ">>", "+", "+", "<<");
run_inner(s, n_args, shape, rsh, add, xor, and, ">>", "+", "^", "&");
run_inner(s, n_args, shape, rsh, add, xor, add, ">>", "+", "^", "+");
run_inner(s, n_args, shape, rsh, add, xor, xor, ">>", "+", "^", "^");
run_inner(s, n_args, shape, rsh, add, xor, or, ">>", "+", "^", "|");
run_inner(s, n_args, shape, rsh, add, xor, sub, ">>", "+", "^", "-");
run_inner(s, n_args, shape, rsh, add, xor, bus, ">>", "+", "^", "←");
run_inner(s, n_args, shape, rsh, add, xor, mul, ">>", "+", "^", "*");
run_inner(s, n_args, shape, rsh, add, xor, rsh, ">>", "+", "^", ">>");
run_inner(s, n_args, shape, rsh, add, xor, hsr, ">>", "+", "^", "<<");
run_inner(s, n_args, shape, rsh, add, or, and, ">>", "+", "|", "&");
run_inner(s, n_args, shape, rsh, add, or, add, ">>", "+", "|", "+");
run_inner(s, n_args, shape, rsh, add, or, xor, ">>", "+", "|", "^");
run_inner(s, n_args, shape, rsh, add, or, or, ">>", "+", "|", "|");
run_inner(s, n_args, shape, rsh, add, or, sub, ">>", "+", "|", "-");
run_inner(s, n_args, shape, rsh, add, or, bus, ">>", "+", "|", "←");
run_inner(s, n_args, shape, rsh, add, or, mul, ">>", "+", "|", "*");
run_inner(s, n_args, shape, rsh, add, or, rsh, ">>", "+", "|", ">>");
run_inner(s, n_args, shape, rsh, add, or, hsr, ">>", "+", "|", "<<");
run_inner(s, n_args, shape, rsh, add, sub, and, ">>", "+", "-", "&");
run_inner(s, n_args, shape, rsh, add, sub, add, ">>", "+", "-", "+");
run_inner(s, n_args, shape, rsh, add, sub, xor, ">>", "+", "-", "^");
run_inner(s, n_args, shape, rsh, add, sub, or, ">>", "+", "-", "|");
run_inner(s, n_args, shape, rsh, add, sub, sub, ">>", "+", "-", "-");
run_inner(s, n_args, shape, rsh, add, sub, bus, ">>", "+", "-", "←");
run_inner(s, n_args, shape, rsh, add, sub, mul, ">>", "+", "-", "*");
run_inner(s, n_args, shape, rsh, add, sub, rsh, ">>", "+", "-", ">>");
run_inner(s, n_args, shape, rsh, add, sub, hsr, ">>", "+", "-", "<<");
run_inner(s, n_args, shape, rsh, add, bus, and, ">>", "+", "←", "&");
run_inner(s, n_args, shape, rsh, add, bus, add, ">>", "+", "←", "+");
run_inner(s, n_args, shape, rsh, add, bus, xor, ">>", "+", "←", "^");
run_inner(s, n_args, shape, rsh, add, bus, or, ">>", "+", "←", "|");
run_inner(s, n_args, shape, rsh, add, bus, sub, ">>", "+", "←", "-");
run_inner(s, n_args, shape, rsh, add, bus, bus, ">>", "+", "←", "←");
run_inner(s, n_args, shape, rsh, add, bus, mul, ">>", "+", "←", "*");
run_inner(s, n_args, shape, rsh, add, bus, rsh, ">>", "+", "←", ">>");
run_inner(s, n_args, shape, rsh, add, bus, hsr, ">>", "+", "←", "<<");
run_inner(s, n_args, shape, rsh, add, mul, and, ">>", "+", "*", "&");
run_inner(s, n_args, shape, rsh, add, mul, add, ">>", "+", "*", "+");
run_inner(s, n_args, shape, rsh, add, mul, xor, ">>", "+", "*", "^");
run_inner(s, n_args, shape, rsh, add, mul, or, ">>", "+", "*", "|");
run_inner(s, n_args, shape, rsh, add, mul, sub, ">>", "+", "*", "-");
run_inner(s, n_args, shape, rsh, add, mul, bus, ">>", "+", "*", "←");
run_inner(s, n_args, shape, rsh, add, mul, mul, ">>", "+", "*", "*");
run_inner(s, n_args, shape, rsh, add, mul, rsh, ">>", "+", "*", ">>");
run_inner(s, n_args, shape, rsh, add, mul, hsr, ">>", "+", "*", "<<");
run_inner(s, n_args, shape, rsh, add, rsh, and, ">>", "+", ">>", "&");
run_inner(s, n_args, shape, rsh, add, rsh, add, ">>", "+", ">>", "+");
run_inner(s, n_args, shape, rsh, add, rsh, xor, ">>", "+", ">>", "^");
run_inner(s, n_args, shape, rsh, add, rsh, or, ">>", "+", ">>", "|");
run_inner(s, n_args, shape, rsh, add, rsh, sub, ">>", "+", ">>", "-");
run_inner(s, n_args, shape, rsh, add, rsh, bus, ">>", "+", ">>", "←");
run_inner(s, n_args, shape, rsh, add, rsh, mul, ">>", "+", ">>", "*");
run_inner(s, n_args, shape, rsh, add, rsh, rsh, ">>", "+", ">>", ">>");
run_inner(s, n_args, shape, rsh, add, rsh, hsr, ">>", "+", ">>", "<<");
run_inner(s, n_args, shape, rsh, add, hsr, and, ">>", "+", "<<", "&");
run_inner(s, n_args, shape, rsh, add, hsr, add, ">>", "+", "<<", "+");
run_inner(s, n_args, shape, rsh, add, hsr, xor, ">>", "+", "<<", "^");
run_inner(s, n_args, shape, rsh, add, hsr, or, ">>", "+", "<<", "|");
run_inner(s, n_args, shape, rsh, add, hsr, sub, ">>", "+", "<<", "-");
run_inner(s, n_args, shape, rsh, add, hsr, bus, ">>", "+", "<<", "←");
run_inner(s, n_args, shape, rsh, add, hsr, mul, ">>", "+", "<<", "*");
run_inner(s, n_args, shape, rsh, add, hsr, rsh, ">>", "+", "<<", ">>");
run_inner(s, n_args, shape, rsh, add, hsr, hsr, ">>", "+", "<<", "<<");
run_inner(s, n_args, shape, rsh, xor, and, and, ">>", "^", "&", "&");
run_inner(s, n_args, shape, rsh, xor, and, add, ">>", "^", "&", "+");
run_inner(s, n_args, shape, rsh, xor, and, xor, ">>", "^", "&", "^");
run_inner(s, n_args, shape, rsh, xor, and, or, ">>", "^", "&", "|");
run_inner(s, n_args, shape, rsh, xor, and, sub, ">>", "^", "&", "-");
run_inner(s, n_args, shape, rsh, xor, and, bus, ">>", "^", "&", "←");
run_inner(s, n_args, shape, rsh, xor, and, mul, ">>", "^", "&", "*");
run_inner(s, n_args, shape, rsh, xor, and, rsh, ">>", "^", "&", ">>");
run_inner(s, n_args, shape, rsh, xor, and, hsr, ">>", "^", "&", "<<");
run_inner(s, n_args, shape, rsh, xor, add, and, ">>", "^", "+", "&");
run_inner(s, n_args, shape, rsh, xor, add, add, ">>", "^", "+", "+");
run_inner(s, n_args, shape, rsh, xor, add, xor, ">>", "^", "+", "^");
run_inner(s, n_args, shape, rsh, xor, add, or, ">>", "^", "+", "|");
run_inner(s, n_args, shape, rsh, xor, add, sub, ">>", "^", "+", "-");
run_inner(s, n_args, shape, rsh, xor, add, bus, ">>", "^", "+", "←");
run_inner(s, n_args, shape, rsh, xor, add, mul, ">>", "^", "+", "*");
run_inner(s, n_args, shape, rsh, xor, add, rsh, ">>", "^", "+", ">>");
run_inner(s, n_args, shape, rsh, xor, add, hsr, ">>", "^", "+", "<<");
run_inner(s, n_args, shape, rsh, xor, xor, and, ">>", "^", "^", "&");
run_inner(s, n_args, shape, rsh, xor, xor, add, ">>", "^", "^", "+");
run_inner(s, n_args, shape, rsh, xor, xor, xor, ">>", "^", "^", "^");
run_inner(s, n_args, shape, rsh, xor, xor, or, ">>", "^", "^", "|");
run_inner(s, n_args, shape, rsh, xor, xor, sub, ">>", "^", "^", "-");
run_inner(s, n_args, shape, rsh, xor, xor, bus, ">>", "^", "^", "←");
run_inner(s, n_args, shape, rsh, xor, xor, mul, ">>", "^", "^", "*");
run_inner(s, n_args, shape, rsh, xor, xor, rsh, ">>", "^", "^", ">>");
run_inner(s, n_args, shape, rsh, xor, xor, hsr, ">>", "^", "^", "<<");
run_inner(s, n_args, shape, rsh, xor, or, and, ">>", "^", "|", "&");
run_inner(s, n_args, shape, rsh, xor, or, add, ">>", "^", "|", "+");
run_inner(s, n_args, shape, rsh, xor, or, xor, ">>", "^", "|", "^");
run_inner(s, n_args, shape, rsh, xor, or, or, ">>", "^", "|", "|");
run_inner(s, n_args, shape, rsh, xor, or, sub, ">>", "^", "|", "-");
run_inner(s, n_args, shape, rsh, xor, or, bus, ">>", "^", "|", "←");
run_inner(s, n_args, shape, rsh, xor, or, mul, ">>", "^", "|", "*");
run_inner(s, n_args, shape, rsh, xor, or, rsh, ">>", "^", "|", ">>");
run_inner(s, n_args, shape, rsh, xor, or, hsr, ">>", "^", "|", "<<");
run_inner(s, n_args, shape, rsh, xor, sub, and, ">>", "^", "-", "&");
run_inner(s, n_args, shape, rsh, xor, sub, add, ">>", "^", "-", "+");
run_inner(s, n_args, shape, rsh, xor, sub, xor, ">>", "^", "-", "^");
run_inner(s, n_args, shape, rsh, xor, sub, or, ">>", "^", "-", "|");
run_inner(s, n_args, shape, rsh, xor, sub, sub, ">>", "^", "-", "-");
run_inner(s, n_args, shape, rsh, xor, sub, bus, ">>", "^", "-", "←");
run_inner(s, n_args, shape, rsh, xor, sub, mul, ">>", "^", "-", "*");
run_inner(s, n_args, shape, rsh, xor, sub, rsh, ">>", "^", "-", ">>");
run_inner(s, n_args, shape, rsh, xor, sub, hsr, ">>", "^", "-", "<<");
run_inner(s, n_args, shape, rsh, xor, bus, and, ">>", "^", "←", "&");
run_inner(s, n_args, shape, rsh, xor, bus, add, ">>", "^", "←", "+");
run_inner(s, n_args, shape, rsh, xor, bus, xor, ">>", "^", "←", "^");
run_inner(s, n_args, shape, rsh, xor, bus, or, ">>", "^", "←", "|");
run_inner(s, n_args, shape, rsh, xor, bus, sub, ">>", "^", "←", "-");
run_inner(s, n_args, shape, rsh, xor, bus, bus, ">>", "^", "←", "←");
run_inner(s, n_args, shape, rsh, xor, bus, mul, ">>", "^", "←", "*");
run_inner(s, n_args, shape, rsh, xor, bus, rsh, ">>", "^", "←", ">>");
run_inner(s, n_args, shape, rsh, xor, bus, hsr, ">>", "^", "←", "<<");
run_inner(s, n_args, shape, rsh, xor, mul, and, ">>", "^", "*", "&");
run_inner(s, n_args, shape, rsh, xor, mul, add, ">>", "^", "*", "+");
run_inner(s, n_args, shape, rsh, xor, mul, xor, ">>", "^", "*", "^");
run_inner(s, n_args, shape, rsh, xor, mul, or, ">>", "^", "*", "|");
run_inner(s, n_args, shape, rsh, xor, mul, sub, ">>", "^", "*", "-");
run_inner(s, n_args, shape, rsh, xor, mul, bus, ">>", "^", "*", "←");
run_inner(s, n_args, shape, rsh, xor, mul, mul, ">>", "^", "*", "*");
run_inner(s, n_args, shape, rsh, xor, mul, rsh, ">>", "^", "*", ">>");
run_inner(s, n_args, shape, rsh, xor, mul, hsr, ">>", "^", "*", "<<");
run_inner(s, n_args, shape, rsh, xor, rsh, and, ">>", "^", ">>", "&");
run_inner(s, n_args, shape, rsh, xor, rsh, add, ">>", "^", ">>", "+");
run_inner(s, n_args, shape, rsh, xor, rsh, xor, ">>", "^", ">>", "^");
run_inner(s, n_args, shape, rsh, xor, rsh, or, ">>", "^", ">>", "|");
run_inner(s, n_args, shape, rsh, xor, rsh, sub, ">>", "^", ">>", "-");
run_inner(s, n_args, shape, rsh, xor, rsh, bus, ">>", "^", ">>", "←");
run_inner(s, n_args, shape, rsh, xor, rsh, mul, ">>", "^", ">>", "*");
run_inner(s, n_args, shape, rsh, xor, rsh, rsh, ">>", "^", ">>", ">>");
run_inner(s, n_args, shape, rsh, xor, rsh, hsr, ">>", "^", ">>", "<<");
run_inner(s, n_args, shape, rsh, xor, hsr, and, ">>", "^", "<<", "&");
run_inner(s, n_args, shape, rsh, xor, hsr, add, ">>", "^", "<<", "+");
run_inner(s, n_args, shape, rsh, xor, hsr, xor, ">>", "^", "<<", "^");
run_inner(s, n_args, shape, rsh, xor, hsr, or, ">>", "^", "<<", "|");
run_inner(s, n_args, shape, rsh, xor, hsr, sub, ">>", "^", "<<", "-");
run_inner(s, n_args, shape, rsh, xor, hsr, bus, ">>", "^", "<<", "←");
run_inner(s, n_args, shape, rsh, xor, hsr, mul, ">>", "^", "<<", "*");
run_inner(s, n_args, shape, rsh, xor, hsr, rsh, ">>", "^", "<<", ">>");
run_inner(s, n_args, shape, rsh, xor, hsr, hsr, ">>", "^", "<<", "<<");
run_inner(s, n_args, shape, rsh, or, and, and, ">>", "|", "&", "&");
run_inner(s, n_args, shape, rsh, or, and, add, ">>", "|", "&", "+");
run_inner(s, n_args, shape, rsh, or, and, xor, ">>", "|", "&", "^");
run_inner(s, n_args, shape, rsh, or, and, or, ">>", "|", "&", "|");
run_inner(s, n_args, shape, rsh, or, and, sub, ">>", "|", "&", "-");
run_inner(s, n_args, shape, rsh, or, and, bus, ">>", "|", "&", "←");
run_inner(s, n_args, shape, rsh, or, and, mul, ">>", "|", "&", "*");
run_inner(s, n_args, shape, rsh, or, and, rsh, ">>", "|", "&", ">>");
run_inner(s, n_args, shape, rsh, or, and, hsr, ">>", "|", "&", "<<");
run_inner(s, n_args, shape, rsh, or, add, and, ">>", "|", "+", "&");
run_inner(s, n_args, shape, rsh, or, add, add, ">>", "|", "+", "+");
run_inner(s, n_args, shape, rsh, or, add, xor, ">>", "|", "+", "^");
run_inner(s, n_args, shape, rsh, or, add, or, ">>", "|", "+", "|");
run_inner(s, n_args, shape, rsh, or, add, sub, ">>", "|", "+", "-");
run_inner(s, n_args, shape, rsh, or, add, bus, ">>", "|", "+", "←");
run_inner(s, n_args, shape, rsh, or, add, mul, ">>", "|", "+", "*");
run_inner(s, n_args, shape, rsh, or, add, rsh, ">>", "|", "+", ">>");
run_inner(s, n_args, shape, rsh, or, add, hsr, ">>", "|", "+", "<<");
run_inner(s, n_args, shape, rsh, or, xor, and, ">>", "|", "^", "&");
run_inner(s, n_args, shape, rsh, or, xor, add, ">>", "|", "^", "+");
run_inner(s, n_args, shape, rsh, or, xor, xor, ">>", "|", "^", "^");
run_inner(s, n_args, shape, rsh, or, xor, or, ">>", "|", "^", "|");
run_inner(s, n_args, shape, rsh, or, xor, sub, ">>", "|", "^", "-");
run_inner(s, n_args, shape, rsh, or, xor, bus, ">>", "|", "^", "←");
run_inner(s, n_args, shape, rsh, or, xor, mul, ">>", "|", "^", "*");
run_inner(s, n_args, shape, rsh, or, xor, rsh, ">>", "|", "^", ">>");
run_inner(s, n_args, shape, rsh, or, xor, hsr, ">>", "|", "^", "<<");
run_inner(s, n_args, shape, rsh, or, or, and, ">>", "|", "|", "&");
run_inner(s, n_args, shape, rsh, or, or, add, ">>", "|", "|", "+");
run_inner(s, n_args, shape, rsh, or, or, xor, ">>", "|", "|", "^");
run_inner(s, n_args, shape, rsh, or, or, or, ">>", "|", "|", "|");
run_inner(s, n_args, shape, rsh, or, or, sub, ">>", "|", "|", "-");
run_inner(s, n_args, shape, rsh, or, or, bus, ">>", "|", "|", "←");
run_inner(s, n_args, shape, rsh, or, or, mul, ">>", "|", "|", "*");
run_inner(s, n_args, shape, rsh, or, or, rsh, ">>", "|", "|", ">>");
run_inner(s, n_args, shape, rsh, or, or, hsr, ">>", "|", "|", "<<");
run_inner(s, n_args, shape, rsh, or, sub, and, ">>", "|", "-", "&");
run_inner(s, n_args, shape, rsh, or, sub, add, ">>", "|", "-", "+");
run_inner(s, n_args, shape, rsh, or, sub, xor, ">>", "|", "-", "^");
run_inner(s, n_args, shape, rsh, or, sub, or, ">>", "|", "-", "|");
run_inner(s, n_args, shape, rsh, or, sub, sub, ">>", "|", "-", "-");
run_inner(s, n_args, shape, rsh, or, sub, bus, ">>", "|", "-", "←");
run_inner(s, n_args, shape, rsh, or, sub, mul, ">>", "|", "-", "*");
run_inner(s, n_args, shape, rsh, or, sub, rsh, ">>", "|", "-", ">>");
run_inner(s, n_args, shape, rsh, or, sub, hsr, ">>", "|", "-", "<<");
run_inner(s, n_args, shape, rsh, or, bus, and, ">>", "|", "←", "&");
run_inner(s, n_args, shape, rsh, or, bus, add, ">>", "|", "←", "+");
run_inner(s, n_args, shape, rsh, or, bus, xor, ">>", "|", "←", "^");
run_inner(s, n_args, shape, rsh, or, bus, or, ">>", "|", "←", "|");
run_inner(s, n_args, shape, rsh, or, bus, sub, ">>", "|", "←", "-");
run_inner(s, n_args, shape, rsh, or, bus, bus, ">>", "|", "←", "←");
run_inner(s, n_args, shape, rsh, or, bus, mul, ">>", "|", "←", "*");
run_inner(s, n_args, shape, rsh, or, bus, rsh, ">>", "|", "←", ">>");
run_inner(s, n_args, shape, rsh, or, bus, hsr, ">>", "|", "←", "<<");
run_inner(s, n_args, shape, rsh, or, mul, and, ">>", "|", "*", "&");
run_inner(s, n_args, shape, rsh, or, mul, add, ">>", "|", "*", "+");
run_inner(s, n_args, shape, rsh, or, mul, xor, ">>", "|", "*", "^");
run_inner(s, n_args, shape, rsh, or, mul, or, ">>", "|", "*", "|");
run_inner(s, n_args, shape, rsh, or, mul, sub, ">>", "|", "*", "-");
run_inner(s, n_args, shape, rsh, or, mul, bus, ">>", "|", "*", "←");
run_inner(s, n_args, shape, rsh, or, mul, mul, ">>", "|", "*", "*");
run_inner(s, n_args, shape, rsh, or, mul, rsh, ">>", "|", "*", ">>");
run_inner(s, n_args, shape, rsh, or, mul, hsr, ">>", "|", "*", "<<");
run_inner(s, n_args, shape, rsh, or, rsh, and, ">>", "|", ">>", "&");
run_inner(s, n_args, shape, rsh, or, rsh, add, ">>", "|", ">>", "+");
run_inner(s, n_args, shape, rsh, or, rsh, xor, ">>", "|", ">>", "^");
run_inner(s, n_args, shape, rsh, or, rsh, or, ">>", "|", ">>", "|");
run_inner(s, n_args, shape, rsh, or, rsh, sub, ">>", "|", ">>", "-");
run_inner(s, n_args, shape, rsh, or, rsh, bus, ">>", "|", ">>", "←");
run_inner(s, n_args, shape, rsh, or, rsh, mul, ">>", "|", ">>", "*");
run_inner(s, n_args, shape, rsh, or, rsh, rsh, ">>", "|", ">>", ">>");
run_inner(s, n_args, shape, rsh, or, rsh, hsr, ">>", "|", ">>", "<<");
run_inner(s, n_args, shape, rsh, or, hsr, and, ">>", "|", "<<", "&");
run_inner(s, n_args, shape, rsh, or, hsr, add, ">>", "|", "<<", "+");
run_inner(s, n_args, shape, rsh, or, hsr, xor, ">>", "|", "<<", "^");
run_inner(s, n_args, shape, rsh, or, hsr, or, ">>", "|", "<<", "|");
run_inner(s, n_args, shape, rsh, or, hsr, sub, ">>", "|", "<<", "-");
run_inner(s, n_args, shape, rsh, or, hsr, bus, ">>", "|", "<<", "←");
run_inner(s, n_args, shape, rsh, or, hsr, mul, ">>", "|", "<<", "*");
run_inner(s, n_args, shape, rsh, or, hsr, rsh, ">>", "|", "<<", ">>");
run_inner(s, n_args, shape, rsh, or, hsr, hsr, ">>", "|", "<<", "<<");
run_inner(s, n_args, shape, rsh, sub, and, and, ">>", "-", "&", "&");
run_inner(s, n_args, shape, rsh, sub, and, add, ">>", "-", "&", "+");
run_inner(s, n_args, shape, rsh, sub, and, xor, ">>", "-", "&", "^");
run_inner(s, n_args, shape, rsh, sub, and, or, ">>", "-", "&", "|");
run_inner(s, n_args, shape, rsh, sub, and, sub, ">>", "-", "&", "-");
run_inner(s, n_args, shape, rsh, sub, and, bus, ">>", "-", "&", "←");
run_inner(s, n_args, shape, rsh, sub, and, mul, ">>", "-", "&", "*");
run_inner(s, n_args, shape, rsh, sub, and, rsh, ">>", "-", "&", ">>");
run_inner(s, n_args, shape, rsh, sub, and, hsr, ">>", "-", "&", "<<");
run_inner(s, n_args, shape, rsh, sub, add, and, ">>", "-", "+", "&");
run_inner(s, n_args, shape, rsh, sub, add, add, ">>", "-", "+", "+");
run_inner(s, n_args, shape, rsh, sub, add, xor, ">>", "-", "+", "^");
run_inner(s, n_args, shape, rsh, sub, add, or, ">>", "-", "+", "|");
run_inner(s, n_args, shape, rsh, sub, add, sub, ">>", "-", "+", "-");
run_inner(s, n_args, shape, rsh, sub, add, bus, ">>", "-", "+", "←");
run_inner(s, n_args, shape, rsh, sub, add, mul, ">>", "-", "+", "*");
run_inner(s, n_args, shape, rsh, sub, add, rsh, ">>", "-", "+", ">>");
run_inner(s, n_args, shape, rsh, sub, add, hsr, ">>", "-", "+", "<<");
run_inner(s, n_args, shape, rsh, sub, xor, and, ">>", "-", "^", "&");
run_inner(s, n_args, shape, rsh, sub, xor, add, ">>", "-", "^", "+");
run_inner(s, n_args, shape, rsh, sub, xor, xor, ">>", "-", "^", "^");
run_inner(s, n_args, shape, rsh, sub, xor, or, ">>", "-", "^", "|");
run_inner(s, n_args, shape, rsh, sub, xor, sub, ">>", "-", "^", "-");
run_inner(s, n_args, shape, rsh, sub, xor, bus, ">>", "-", "^", "←");
run_inner(s, n_args, shape, rsh, sub, xor, mul, ">>", "-", "^", "*");
run_inner(s, n_args, shape, rsh, sub, xor, rsh, ">>", "-", "^", ">>");
run_inner(s, n_args, shape, rsh, sub, xor, hsr, ">>", "-", "^", "<<");
run_inner(s, n_args, shape, rsh, sub, or, and, ">>", "-", "|", "&");
run_inner(s, n_args, shape, rsh, sub, or, add, ">>", "-", "|", "+");
run_inner(s, n_args, shape, rsh, sub, or, xor, ">>", "-", "|", "^");
run_inner(s, n_args, shape, rsh, sub, or, or, ">>", "-", "|", "|");
run_inner(s, n_args, shape, rsh, sub, or, sub, ">>", "-", "|", "-");
run_inner(s, n_args, shape, rsh, sub, or, bus, ">>", "-", "|", "←");
run_inner(s, n_args, shape, rsh, sub, or, mul, ">>", "-", "|", "*");
run_inner(s, n_args, shape, rsh, sub, or, rsh, ">>", "-", "|", ">>");
run_inner(s, n_args, shape, rsh, sub, or, hsr, ">>", "-", "|", "<<");
run_inner(s, n_args, shape, rsh, sub, sub, and, ">>", "-", "-", "&");
run_inner(s, n_args, shape, rsh, sub, sub, add, ">>", "-", "-", "+");
run_inner(s, n_args, shape, rsh, sub, sub, xor, ">>", "-", "-", "^");
run_inner(s, n_args, shape, rsh, sub, sub, or, ">>", "-", "-", "|");
run_inner(s, n_args, shape, rsh, sub, sub, sub, ">>", "-", "-", "-");
run_inner(s, n_args, shape, rsh, sub, sub, bus, ">>", "-", "-", "←");
run_inner(s, n_args, shape, rsh, sub, sub, mul, ">>", "-", "-", "*");
run_inner(s, n_args, shape, rsh, sub, sub, rsh, ">>", "-", "-", ">>");
run_inner(s, n_args, shape, rsh, sub, sub, hsr, ">>", "-", "-", "<<");
run_inner(s, n_args, shape, rsh, sub, bus, and, ">>", "-", "←", "&");
run_inner(s, n_args, shape, rsh, sub, bus, add, ">>", "-", "←", "+");
run_inner(s, n_args, shape, rsh, sub, bus, xor, ">>", "-", "←", "^");
run_inner(s, n_args, shape, rsh, sub, bus, or, ">>", "-", "←", "|");
run_inner(s, n_args, shape, rsh, sub, bus, sub, ">>", "-", "←", "-");
run_inner(s, n_args, shape, rsh, sub, bus, bus, ">>", "-", "←", "←");
run_inner(s, n_args, shape, rsh, sub, bus, mul, ">>", "-", "←", "*");
run_inner(s, n_args, shape, rsh, sub, bus, rsh, ">>", "-", "←", ">>");
run_inner(s, n_args, shape, rsh, sub, bus, hsr, ">>", "-", "←", "<<");
run_inner(s, n_args, shape, rsh, sub, mul, and, ">>", "-", "*", "&");
run_inner(s, n_args, shape, rsh, sub, mul, add, ">>", "-", "*", "+");
run_inner(s, n_args, shape, rsh, sub, mul, xor, ">>", "-", "*", "^");
run_inner(s, n_args, shape, rsh, sub, mul, or, ">>", "-", "*", "|");
run_inner(s, n_args, shape, rsh, sub, mul, sub, ">>", "-", "*", "-");
run_inner(s, n_args, shape, rsh, sub, mul, bus, ">>", "-", "*", "←");
run_inner(s, n_args, shape, rsh, sub, mul, mul, ">>", "-", "*", "*");
run_inner(s, n_args, shape, rsh, sub, mul, rsh, ">>", "-", "*", ">>");
run_inner(s, n_args, shape, rsh, sub, mul, hsr, ">>", "-", "*", "<<");
run_inner(s, n_args, shape, rsh, sub, rsh, and, ">>", "-", ">>", "&");
run_inner(s, n_args, shape, rsh, sub, rsh, add, ">>", "-", ">>", "+");
run_inner(s, n_args, shape, rsh, sub, rsh, xor, ">>", "-", ">>", "^");
run_inner(s, n_args, shape, rsh, sub, rsh, or, ">>", "-", ">>", "|");
run_inner(s, n_args, shape, rsh, sub, rsh, sub, ">>", "-", ">>", "-");
run_inner(s, n_args, shape, rsh, sub, rsh, bus, ">>", "-", ">>", "←");
run_inner(s, n_args, shape, rsh, sub, rsh, mul, ">>", "-", ">>", "*");
run_inner(s, n_args, shape, rsh, sub, rsh, rsh, ">>", "-", ">>", ">>");
run_inner(s, n_args, shape, rsh, sub, rsh, hsr, ">>", "-", ">>", "<<");
run_inner(s, n_args, shape, rsh, sub, hsr, and, ">>", "-", "<<", "&");
run_inner(s, n_args, shape, rsh, sub, hsr, add, ">>", "-", "<<", "+");
run_inner(s, n_args, shape, rsh, sub, hsr, xor, ">>", "-", "<<", "^");
run_inner(s, n_args, shape, rsh, sub, hsr, or, ">>", "-", "<<", "|");
run_inner(s, n_args, shape, rsh, sub, hsr, sub, ">>", "-", "<<", "-");
run_inner(s, n_args, shape, rsh, sub, hsr, bus, ">>", "-", "<<", "←");
run_inner(s, n_args, shape, rsh, sub, hsr, mul, ">>", "-", "<<", "*");
run_inner(s, n_args, shape, rsh, sub, hsr, rsh, ">>", "-", "<<", ">>");
run_inner(s, n_args, shape, rsh, sub, hsr, hsr, ">>", "-", "<<", "<<");
run_inner(s, n_args, shape, rsh, bus, and, and, ">>", "←", "&", "&");
run_inner(s, n_args, shape, rsh, bus, and, add, ">>", "←", "&", "+");
run_inner(s, n_args, shape, rsh, bus, and, xor, ">>", "←", "&", "^");
run_inner(s, n_args, shape, rsh, bus, and, or, ">>", "←", "&", "|");
run_inner(s, n_args, shape, rsh, bus, and, sub, ">>", "←", "&", "-");
run_inner(s, n_args, shape, rsh, bus, and, bus, ">>", "←", "&", "←");
run_inner(s, n_args, shape, rsh, bus, and, mul, ">>", "←", "&", "*");
run_inner(s, n_args, shape, rsh, bus, and, rsh, ">>", "←", "&", ">>");
run_inner(s, n_args, shape, rsh, bus, and, hsr, ">>", "←", "&", "<<");
run_inner(s, n_args, shape, rsh, bus, add, and, ">>", "←", "+", "&");
run_inner(s, n_args, shape, rsh, bus, add, add, ">>", "←", "+", "+");
run_inner(s, n_args, shape, rsh, bus, add, xor, ">>", "←", "+", "^");
run_inner(s, n_args, shape, rsh, bus, add, or, ">>", "←", "+", "|");
run_inner(s, n_args, shape, rsh, bus, add, sub, ">>", "←", "+", "-");
run_inner(s, n_args, shape, rsh, bus, add, bus, ">>", "←", "+", "←");
run_inner(s, n_args, shape, rsh, bus, add, mul, ">>", "←", "+", "*");
run_inner(s, n_args, shape, rsh, bus, add, rsh, ">>", "←", "+", ">>");
run_inner(s, n_args, shape, rsh, bus, add, hsr, ">>", "←", "+", "<<");
run_inner(s, n_args, shape, rsh, bus, xor, and, ">>", "←", "^", "&");
run_inner(s, n_args, shape, rsh, bus, xor, add, ">>", "←", "^", "+");
run_inner(s, n_args, shape, rsh, bus, xor, xor, ">>", "←", "^", "^");
run_inner(s, n_args, shape, rsh, bus, xor, or, ">>", "←", "^", "|");
run_inner(s, n_args, shape, rsh, bus, xor, sub, ">>", "←", "^", "-");
run_inner(s, n_args, shape, rsh, bus, xor, bus, ">>", "←", "^", "←");
run_inner(s, n_args, shape, rsh, bus, xor, mul, ">>", "←", "^", "*");
run_inner(s, n_args, shape, rsh, bus, xor, rsh, ">>", "←", "^", ">>");
run_inner(s, n_args, shape, rsh, bus, xor, hsr, ">>", "←", "^", "<<");
run_inner(s, n_args, shape, rsh, bus, or, and, ">>", "←", "|", "&");
run_inner(s, n_args, shape, rsh, bus, or, add, ">>", "←", "|", "+");
run_inner(s, n_args, shape, rsh, bus, or, xor, ">>", "←", "|", "^");
run_inner(s, n_args, shape, rsh, bus, or, or, ">>", "←", "|", "|");
run_inner(s, n_args, shape, rsh, bus, or, sub, ">>", "←", "|", "-");
run_inner(s, n_args, shape, rsh, bus, or, bus, ">>", "←", "|", "←");
run_inner(s, n_args, shape, rsh, bus, or, mul, ">>", "←", "|", "*");
run_inner(s, n_args, shape, rsh, bus, or, rsh, ">>", "←", "|", ">>");
run_inner(s, n_args, shape, rsh, bus, or, hsr, ">>", "←", "|", "<<");
run_inner(s, n_args, shape, rsh, bus, sub, and, ">>", "←", "-", "&");
run_inner(s, n_args, shape, rsh, bus, sub, add, ">>", "←", "-", "+");
run_inner(s, n_args, shape, rsh, bus, sub, xor, ">>", "←", "-", "^");
run_inner(s, n_args, shape, rsh, bus, sub, or, ">>", "←", "-", "|");
run_inner(s, n_args, shape, rsh, bus, sub, sub, ">>", "←", "-", "-");
run_inner(s, n_args, shape, rsh, bus, sub, bus, ">>", "←", "-", "←");
run_inner(s, n_args, shape, rsh, bus, sub, mul, ">>", "←", "-", "*");
run_inner(s, n_args, shape, rsh, bus, sub, rsh, ">>", "←", "-", ">>");
run_inner(s, n_args, shape, rsh, bus, sub, hsr, ">>", "←", "-", "<<");
run_inner(s, n_args, shape, rsh, bus, bus, and, ">>", "←", "←", "&");
run_inner(s, n_args, shape, rsh, bus, bus, add, ">>", "←", "←", "+");
run_inner(s, n_args, shape, rsh, bus, bus, xor, ">>", "←", "←", "^");
run_inner(s, n_args, shape, rsh, bus, bus, or, ">>", "←", "←", "|");
run_inner(s, n_args, shape, rsh, bus, bus, sub, ">>", "←", "←", "-");
run_inner(s, n_args, shape, rsh, bus, bus, bus, ">>", "←", "←", "←");
run_inner(s, n_args, shape, rsh, bus, bus, mul, ">>", "←", "←", "*");
run_inner(s, n_args, shape, rsh, bus, bus, rsh, ">>", "←", "←", ">>");
run_inner(s, n_args, shape, rsh, bus, bus, hsr, ">>", "←", "←", "<<");
run_inner(s, n_args, shape, rsh, bus, mul, and, ">>", "←", "*", "&");
run_inner(s, n_args, shape, rsh, bus, mul, add, ">>", "←", "*", "+");
run_inner(s, n_args, shape, rsh, bus, mul, xor, ">>", "←", "*", "^");
run_inner(s, n_args, shape, rsh, bus, mul, or, ">>", "←", "*", "|");
run_inner(s, n_args, shape, rsh, bus, mul, sub, ">>", "←", "*", "-");
run_inner(s, n_args, shape, rsh, bus, mul, bus, ">>", "←", "*", "←");
run_inner(s, n_args, shape, rsh, bus, mul, mul, ">>", "←", "*", "*");
run_inner(s, n_args, shape, rsh, bus, mul, rsh, ">>", "←", "*", ">>");
run_inner(s, n_args, shape, rsh, bus, mul, hsr, ">>", "←", "*", "<<");
run_inner(s, n_args, shape, rsh, bus, rsh, and, ">>", "←", ">>", "&");
run_inner(s, n_args, shape, rsh, bus, rsh, add, ">>", "←", ">>", "+");
run_inner(s, n_args, shape, rsh, bus, rsh, xor, ">>", "←", ">>", "^");
run_inner(s, n_args, shape, rsh, bus, rsh, or, ">>", "←", ">>", "|");
run_inner(s, n_args, shape, rsh, bus, rsh, sub, ">>", "←", ">>", "-");
run_inner(s, n_args, shape, rsh, bus, rsh, bus, ">>", "←", ">>", "←");
run_inner(s, n_args, shape, rsh, bus, rsh, mul, ">>", "←", ">>", "*");
run_inner(s, n_args, shape, rsh, bus, rsh, rsh, ">>", "←", ">>", ">>");
run_inner(s, n_args, shape, rsh, bus, rsh, hsr, ">>", "←", ">>", "<<");
run_inner(s, n_args, shape, rsh, bus, hsr, and, ">>", "←", "<<", "&");
run_inner(s, n_args, shape, rsh, bus, hsr, add, ">>", "←", "<<", "+");
run_inner(s, n_args, shape, rsh, bus, hsr, xor, ">>", "←", "<<", "^");
run_inner(s, n_args, shape, rsh, bus, hsr, or, ">>", "←", "<<", "|");
run_inner(s, n_args, shape, rsh, bus, hsr, sub, ">>", "←", "<<", "-");
run_inner(s, n_args, shape, rsh, bus, hsr, bus, ">>", "←", "<<", "←");
run_inner(s, n_args, shape, rsh, bus, hsr, mul, ">>", "←", "<<", "*");
run_inner(s, n_args, shape, rsh, bus, hsr, rsh, ">>", "←", "<<", ">>");
run_inner(s, n_args, shape, rsh, bus, hsr, hsr, ">>", "←", "<<", "<<");
run_inner(s, n_args, shape, rsh, mul, and, and, ">>", "*", "&", "&");
run_inner(s, n_args, shape, rsh, mul, and, add, ">>", "*", "&", "+");
run_inner(s, n_args, shape, rsh, mul, and, xor, ">>", "*", "&", "^");
run_inner(s, n_args, shape, rsh, mul, and, or, ">>", "*", "&", "|");
run_inner(s, n_args, shape, rsh, mul, and, sub, ">>", "*", "&", "-");
run_inner(s, n_args, shape, rsh, mul, and, bus, ">>", "*", "&", "←");
run_inner(s, n_args, shape, rsh, mul, and, mul, ">>", "*", "&", "*");
run_inner(s, n_args, shape, rsh, mul, and, rsh, ">>", "*", "&", ">>");
run_inner(s, n_args, shape, rsh, mul, and, hsr, ">>", "*", "&", "<<");
run_inner(s, n_args, shape, rsh, mul, add, and, ">>", "*", "+", "&");
run_inner(s, n_args, shape, rsh, mul, add, add, ">>", "*", "+", "+");
run_inner(s, n_args, shape, rsh, mul, add, xor, ">>", "*", "+", "^");
run_inner(s, n_args, shape, rsh, mul, add, or, ">>", "*", "+", "|");
run_inner(s, n_args, shape, rsh, mul, add, sub, ">>", "*", "+", "-");
run_inner(s, n_args, shape, rsh, mul, add, bus, ">>", "*", "+", "←");
run_inner(s, n_args, shape, rsh, mul, add, mul, ">>", "*", "+", "*");
run_inner(s, n_args, shape, rsh, mul, add, rsh, ">>", "*", "+", ">>");
run_inner(s, n_args, shape, rsh, mul, add, hsr, ">>", "*", "+", "<<");
run_inner(s, n_args, shape, rsh, mul, xor, and, ">>", "*", "^", "&");
run_inner(s, n_args, shape, rsh, mul, xor, add, ">>", "*", "^", "+");
run_inner(s, n_args, shape, rsh, mul, xor, xor, ">>", "*", "^", "^");
run_inner(s, n_args, shape, rsh, mul, xor, or, ">>", "*", "^", "|");
run_inner(s, n_args, shape, rsh, mul, xor, sub, ">>", "*", "^", "-");
run_inner(s, n_args, shape, rsh, mul, xor, bus, ">>", "*", "^", "←");
run_inner(s, n_args, shape, rsh, mul, xor, mul, ">>", "*", "^", "*");
run_inner(s, n_args, shape, rsh, mul, xor, rsh, ">>", "*", "^", ">>");
run_inner(s, n_args, shape, rsh, mul, xor, hsr, ">>", "*", "^", "<<");
run_inner(s, n_args, shape, rsh, mul, or, and, ">>", "*", "|", "&");
run_inner(s, n_args, shape, rsh, mul, or, add, ">>", "*", "|", "+");
run_inner(s, n_args, shape, rsh, mul, or, xor, ">>", "*", "|", "^");
run_inner(s, n_args, shape, rsh, mul, or, or, ">>", "*", "|", "|");
run_inner(s, n_args, shape, rsh, mul, or, sub, ">>", "*", "|", "-");
run_inner(s, n_args, shape, rsh, mul, or, bus, ">>", "*", "|", "←");
run_inner(s, n_args, shape, rsh, mul, or, mul, ">>", "*", "|", "*");
run_inner(s, n_args, shape, rsh, mul, or, rsh, ">>", "*", "|", ">>");
run_inner(s, n_args, shape, rsh, mul, or, hsr, ">>", "*", "|", "<<");
run_inner(s, n_args, shape, rsh, mul, sub, and, ">>", "*", "-", "&");
run_inner(s, n_args, shape, rsh, mul, sub, add, ">>", "*", "-", "+");
run_inner(s, n_args, shape, rsh, mul, sub, xor, ">>", "*", "-", "^");
run_inner(s, n_args, shape, rsh, mul, sub, or, ">>", "*", "-", "|");
run_inner(s, n_args, shape, rsh, mul, sub, sub, ">>", "*", "-", "-");
run_inner(s, n_args, shape, rsh, mul, sub, bus, ">>", "*", "-", "←");
run_inner(s, n_args, shape, rsh, mul, sub, mul, ">>", "*", "-", "*");
run_inner(s, n_args, shape, rsh, mul, sub, rsh, ">>", "*", "-", ">>");
run_inner(s, n_args, shape, rsh, mul, sub, hsr, ">>", "*", "-", "<<");
run_inner(s, n_args, shape, rsh, mul, bus, and, ">>", "*", "←", "&");
run_inner(s, n_args, shape, rsh, mul, bus, add, ">>", "*", "←", "+");
run_inner(s, n_args, shape, rsh, mul, bus, xor, ">>", "*", "←", "^");
run_inner(s, n_args, shape, rsh, mul, bus, or, ">>", "*", "←", "|");
run_inner(s, n_args, shape, rsh, mul, bus, sub, ">>", "*", "←", "-");
run_inner(s, n_args, shape, rsh, mul, bus, bus, ">>", "*", "←", "←");
run_inner(s, n_args, shape, rsh, mul, bus, mul, ">>", "*", "←", "*");
run_inner(s, n_args, shape, rsh, mul, bus, rsh, ">>", "*", "←", ">>");
run_inner(s, n_args, shape, rsh, mul, bus, hsr, ">>", "*", "←", "<<");
run_inner(s, n_args, shape, rsh, mul, mul, and, ">>", "*", "*", "&");
run_inner(s, n_args, shape, rsh, mul, mul, add, ">>", "*", "*", "+");
run_inner(s, n_args, shape, rsh, mul, mul, xor, ">>", "*", "*", "^");
run_inner(s, n_args, shape, rsh, mul, mul, or, ">>", "*", "*", "|");
run_inner(s, n_args, shape, rsh, mul, mul, sub, ">>", "*", "*", "-");
run_inner(s, n_args, shape, rsh, mul, mul, bus, ">>", "*", "*", "←");
run_inner(s, n_args, shape, rsh, mul, mul, mul, ">>", "*", "*", "*");
run_inner(s, n_args, shape, rsh, mul, mul, rsh, ">>", "*", "*", ">>");
run_inner(s, n_args, shape, rsh, mul, mul, hsr, ">>", "*", "*", "<<");
run_inner(s, n_args, shape, rsh, mul, rsh, and, ">>", "*", ">>", "&");
run_inner(s, n_args, shape, rsh, mul, rsh, add, ">>", "*", ">>", "+");
run_inner(s, n_args, shape, rsh, mul, rsh, xor, ">>", "*", ">>", "^");
run_inner(s, n_args, shape, rsh, mul, rsh, or, ">>", "*", ">>", "|");
run_inner(s, n_args, shape, rsh, mul, rsh, sub, ">>", "*", ">>", "-");
run_inner(s, n_args, shape, rsh, mul, rsh, bus, ">>", "*", ">>", "←");
run_inner(s, n_args, shape, rsh, mul, rsh, mul, ">>", "*", ">>", "*");
run_inner(s, n_args, shape, rsh, mul, rsh, rsh, ">>", "*", ">>", ">>");
run_inner(s, n_args, shape, rsh, mul, rsh, hsr, ">>", "*", ">>", "<<");
run_inner(s, n_args, shape, rsh, mul, hsr, and, ">>", "*", "<<", "&");
run_inner(s, n_args, shape, rsh, mul, hsr, add, ">>", "*", "<<", "+");
run_inner(s, n_args, shape, rsh, mul, hsr, xor, ">>", "*", "<<", "^");
run_inner(s, n_args, shape, rsh, mul, hsr, or, ">>", "*", "<<", "|");
run_inner(s, n_args, shape, rsh, mul, hsr, sub, ">>", "*", "<<", "-");
run_inner(s, n_args, shape, rsh, mul, hsr, bus, ">>", "*", "<<", "←");
run_inner(s, n_args, shape, rsh, mul, hsr, mul, ">>", "*", "<<", "*");
run_inner(s, n_args, shape, rsh, mul, hsr, rsh, ">>", "*", "<<", ">>");
run_inner(s, n_args, shape, rsh, mul, hsr, hsr, ">>", "*", "<<", "<<");
run_inner(s, n_args, shape, rsh, rsh, and, and, ">>", ">>", "&", "&");
run_inner(s, n_args, shape, rsh, rsh, and, add, ">>", ">>", "&", "+");
run_inner(s, n_args, shape, rsh, rsh, and, xor, ">>", ">>", "&", "^");
run_inner(s, n_args, shape, rsh, rsh, and, or, ">>", ">>", "&", "|");
run_inner(s, n_args, shape, rsh, rsh, and, sub, ">>", ">>", "&", "-");
run_inner(s, n_args, shape, rsh, rsh, and, bus, ">>", ">>", "&", "←");
run_inner(s, n_args, shape, rsh, rsh, and, mul, ">>", ">>", "&", "*");
run_inner(s, n_args, shape, rsh, rsh, and, rsh, ">>", ">>", "&", ">>");
run_inner(s, n_args, shape, rsh, rsh, and, hsr, ">>", ">>", "&", "<<");
run_inner(s, n_args, shape, rsh, rsh, add, and, ">>", ">>", "+", "&");
run_inner(s, n_args, shape, rsh, rsh, add, add, ">>", ">>", "+", "+");
run_inner(s, n_args, shape, rsh, rsh, add, xor, ">>", ">>", "+", "^");
run_inner(s, n_args, shape, rsh, rsh, add, or, ">>", ">>", "+", "|");
run_inner(s, n_args, shape, rsh, rsh, add, sub, ">>", ">>", "+", "-");
run_inner(s, n_args, shape, rsh, rsh, add, bus, ">>", ">>", "+", "←");
run_inner(s, n_args, shape, rsh, rsh, add, mul, ">>", ">>", "+", "*");
run_inner(s, n_args, shape, rsh, rsh, add, rsh, ">>", ">>", "+", ">>");
run_inner(s, n_args, shape, rsh, rsh, add, hsr, ">>", ">>", "+", "<<");
run_inner(s, n_args, shape, rsh, rsh, xor, and, ">>", ">>", "^", "&");
run_inner(s, n_args, shape, rsh, rsh, xor, add, ">>", ">>", "^", "+");
run_inner(s, n_args, shape, rsh, rsh, xor, xor, ">>", ">>", "^", "^");
run_inner(s, n_args, shape, rsh, rsh, xor, or, ">>", ">>", "^", "|");
run_inner(s, n_args, shape, rsh, rsh, xor, sub, ">>", ">>", "^", "-");
run_inner(s, n_args, shape, rsh, rsh, xor, bus, ">>", ">>", "^", "←");
run_inner(s, n_args, shape, rsh, rsh, xor, mul, ">>", ">>", "^", "*");
run_inner(s, n_args, shape, rsh, rsh, xor, rsh, ">>", ">>", "^", ">>");
run_inner(s, n_args, shape, rsh, rsh, xor, hsr, ">>", ">>", "^", "<<");
run_inner(s, n_args, shape, rsh, rsh, or, and, ">>", ">>", "|", "&");
run_inner(s, n_args, shape, rsh, rsh, or, add, ">>", ">>", "|", "+");
run_inner(s, n_args, shape, rsh, rsh, or, xor, ">>", ">>", "|", "^");
run_inner(s, n_args, shape, rsh, rsh, or, or, ">>", ">>", "|", "|");
run_inner(s, n_args, shape, rsh, rsh, or, sub, ">>", ">>", "|", "-");
run_inner(s, n_args, shape, rsh, rsh, or, bus, ">>", ">>", "|", "←");
run_inner(s, n_args, shape, rsh, rsh, or, mul, ">>", ">>", "|", "*");
run_inner(s, n_args, shape, rsh, rsh, or, rsh, ">>", ">>", "|", ">>");
run_inner(s, n_args, shape, rsh, rsh, or, hsr, ">>", ">>", "|", "<<");
run_inner(s, n_args, shape, rsh, rsh, sub, and, ">>", ">>", "-", "&");
run_inner(s, n_args, shape, rsh, rsh, sub, add, ">>", ">>", "-", "+");
run_inner(s, n_args, shape, rsh, rsh, sub, xor, ">>", ">>", "-", "^");
run_inner(s, n_args, shape, rsh, rsh, sub, or, ">>", ">>", "-", "|");
run_inner(s, n_args, shape, rsh, rsh, sub, sub, ">>", ">>", "-", "-");
run_inner(s, n_args, shape, rsh, rsh, sub, bus, ">>", ">>", "-", "←");
run_inner(s, n_args, shape, rsh, rsh, sub, mul, ">>", ">>", "-", "*");
run_inner(s, n_args, shape, rsh, rsh, sub, rsh, ">>", ">>", "-", ">>");
run_inner(s, n_args, shape, rsh, rsh, sub, hsr, ">>", ">>", "-", "<<");
run_inner(s, n_args, shape, rsh, rsh, bus, and, ">>", ">>", "←", "&");
run_inner(s, n_args, shape, rsh, rsh, bus, add, ">>", ">>", "←", "+");
run_inner(s, n_args, shape, rsh, rsh, bus, xor, ">>", ">>", "←", "^");
run_inner(s, n_args, shape, rsh, rsh, bus, or, ">>", ">>", "←", "|");
run_inner(s, n_args, shape, rsh, rsh, bus, sub, ">>", ">>", "←", "-");
run_inner(s, n_args, shape, rsh, rsh, bus, bus, ">>", ">>", "←", "←");
run_inner(s, n_args, shape, rsh, rsh, bus, mul, ">>", ">>", "←", "*");
run_inner(s, n_args, shape, rsh, rsh, bus, rsh, ">>", ">>", "←", ">>");
run_inner(s, n_args, shape, rsh, rsh, bus, hsr, ">>", ">>", "←", "<<");
run_inner(s, n_args, shape, rsh, rsh, mul, and, ">>", ">>", "*", "&");
run_inner(s, n_args, shape, rsh, rsh, mul, add, ">>", ">>", "*", "+");
run_inner(s, n_args, shape, rsh, rsh, mul, xor, ">>", ">>", "*", "^");
run_inner(s, n_args, shape, rsh, rsh, mul, or, ">>", ">>", "*", "|");
run_inner(s, n_args, shape, rsh, rsh, mul, sub, ">>", ">>", "*", "-");
run_inner(s, n_args, shape, rsh, rsh, mul, bus, ">>", ">>", "*", "←");
run_inner(s, n_args, shape, rsh, rsh, mul, mul, ">>", ">>", "*", "*");
run_inner(s, n_args, shape, rsh, rsh, mul, rsh, ">>", ">>", "*", ">>");
run_inner(s, n_args, shape, rsh, rsh, mul, hsr, ">>", ">>", "*", "<<");
run_inner(s, n_args, shape, rsh, rsh, rsh, and, ">>", ">>", ">>", "&");
run_inner(s, n_args, shape, rsh, rsh, rsh, add, ">>", ">>", ">>", "+");
run_inner(s, n_args, shape, rsh, rsh, rsh, xor, ">>", ">>", ">>", "^");
run_inner(s, n_args, shape, rsh, rsh, rsh, or, ">>", ">>", ">>", "|");
run_inner(s, n_args, shape, rsh, rsh, rsh, sub, ">>", ">>", ">>", "-");
run_inner(s, n_args, shape, rsh, rsh, rsh, bus, ">>", ">>", ">>", "←");
run_inner(s, n_args, shape, rsh, rsh, rsh, mul, ">>", ">>", ">>", "*");
run_inner(s, n_args, shape, rsh, rsh, rsh, rsh, ">>", ">>", ">>", ">>");
run_inner(s, n_args, shape, rsh, rsh, rsh, hsr, ">>", ">>", ">>", "<<");
run_inner(s, n_args, shape, rsh, rsh, hsr, and, ">>", ">>", "<<", "&");
run_inner(s, n_args, shape, rsh, rsh, hsr, add, ">>", ">>", "<<", "+");
run_inner(s, n_args, shape, rsh, rsh, hsr, xor, ">>", ">>", "<<", "^");
run_inner(s, n_args, shape, rsh, rsh, hsr, or, ">>", ">>", "<<", "|");
run_inner(s, n_args, shape, rsh, rsh, hsr, sub, ">>", ">>", "<<", "-");
run_inner(s, n_args, shape, rsh, rsh, hsr, bus, ">>", ">>", "<<", "←");
run_inner(s, n_args, shape, rsh, rsh, hsr, mul, ">>", ">>", "<<", "*");
run_inner(s, n_args, shape, rsh, rsh, hsr, rsh, ">>", ">>", "<<", ">>");
run_inner(s, n_args, shape, rsh, rsh, hsr, hsr, ">>", ">>", "<<", "<<");
run_inner(s, n_args, shape, rsh, hsr, and, and, ">>", "<<", "&", "&");
run_inner(s, n_args, shape, rsh, hsr, and, add, ">>", "<<", "&", "+");
run_inner(s, n_args, shape, rsh, hsr, and, xor, ">>", "<<", "&", "^");
run_inner(s, n_args, shape, rsh, hsr, and, or, ">>", "<<", "&", "|");
run_inner(s, n_args, shape, rsh, hsr, and, sub, ">>", "<<", "&", "-");
run_inner(s, n_args, shape, rsh, hsr, and, bus, ">>", "<<", "&", "←");
run_inner(s, n_args, shape, rsh, hsr, and, mul, ">>", "<<", "&", "*");
run_inner(s, n_args, shape, rsh, hsr, and, rsh, ">>", "<<", "&", ">>");
run_inner(s, n_args, shape, rsh, hsr, and, hsr, ">>", "<<", "&", "<<");
run_inner(s, n_args, shape, rsh, hsr, add, and, ">>", "<<", "+", "&");
run_inner(s, n_args, shape, rsh, hsr, add, add, ">>", "<<", "+", "+");
run_inner(s, n_args, shape, rsh, hsr, add, xor, ">>", "<<", "+", "^");
run_inner(s, n_args, shape, rsh, hsr, add, or, ">>", "<<", "+", "|");
run_inner(s, n_args, shape, rsh, hsr, add, sub, ">>", "<<", "+", "-");
run_inner(s, n_args, shape, rsh, hsr, add, bus, ">>", "<<", "+", "←");
run_inner(s, n_args, shape, rsh, hsr, add, mul, ">>", "<<", "+", "*");
run_inner(s, n_args, shape, rsh, hsr, add, rsh, ">>", "<<", "+", ">>");
run_inner(s, n_args, shape, rsh, hsr, add, hsr, ">>", "<<", "+", "<<");
run_inner(s, n_args, shape, rsh, hsr, xor, and, ">>", "<<", "^", "&");
run_inner(s, n_args, shape, rsh, hsr, xor, add, ">>", "<<", "^", "+");
run_inner(s, n_args, shape, rsh, hsr, xor, xor, ">>", "<<", "^", "^");
run_inner(s, n_args, shape, rsh, hsr, xor, or, ">>", "<<", "^", "|");
run_inner(s, n_args, shape, rsh, hsr, xor, sub, ">>", "<<", "^", "-");
run_inner(s, n_args, shape, rsh, hsr, xor, bus, ">>", "<<", "^", "←");
run_inner(s, n_args, shape, rsh, hsr, xor, mul, ">>", "<<", "^", "*");
run_inner(s, n_args, shape, rsh, hsr, xor, rsh, ">>", "<<", "^", ">>");
run_inner(s, n_args, shape, rsh, hsr, xor, hsr, ">>", "<<", "^", "<<");
run_inner(s, n_args, shape, rsh, hsr, or, and, ">>", "<<", "|", "&");
run_inner(s, n_args, shape, rsh, hsr, or, add, ">>", "<<", "|", "+");
run_inner(s, n_args, shape, rsh, hsr, or, xor, ">>", "<<", "|", "^");
run_inner(s, n_args, shape, rsh, hsr, or, or, ">>", "<<", "|", "|");
run_inner(s, n_args, shape, rsh, hsr, or, sub, ">>", "<<", "|", "-");
run_inner(s, n_args, shape, rsh, hsr, or, bus, ">>", "<<", "|", "←");
run_inner(s, n_args, shape, rsh, hsr, or, mul, ">>", "<<", "|", "*");
run_inner(s, n_args, shape, rsh, hsr, or, rsh, ">>", "<<", "|", ">>");
run_inner(s, n_args, shape, rsh, hsr, or, hsr, ">>", "<<", "|", "<<");
run_inner(s, n_args, shape, rsh, hsr, sub, and, ">>", "<<", "-", "&");
run_inner(s, n_args, shape, rsh, hsr, sub, add, ">>", "<<", "-", "+");
run_inner(s, n_args, shape, rsh, hsr, sub, xor, ">>", "<<", "-", "^");
run_inner(s, n_args, shape, rsh, hsr, sub, or, ">>", "<<", "-", "|");
run_inner(s, n_args, shape, rsh, hsr, sub, sub, ">>", "<<", "-", "-");
run_inner(s, n_args, shape, rsh, hsr, sub, bus, ">>", "<<", "-", "←");
run_inner(s, n_args, shape, rsh, hsr, sub, mul, ">>", "<<", "-", "*");
run_inner(s, n_args, shape, rsh, hsr, sub, rsh, ">>", "<<", "-", ">>");
run_inner(s, n_args, shape, rsh, hsr, sub, hsr, ">>", "<<", "-", "<<");
run_inner(s, n_args, shape, rsh, hsr, bus, and, ">>", "<<", "←", "&");
run_inner(s, n_args, shape, rsh, hsr, bus, add, ">>", "<<", "←", "+");
run_inner(s, n_args, shape, rsh, hsr, bus, xor, ">>", "<<", "←", "^");
run_inner(s, n_args, shape, rsh, hsr, bus, or, ">>", "<<", "←", "|");
run_inner(s, n_args, shape, rsh, hsr, bus, sub, ">>", "<<", "←", "-");
run_inner(s, n_args, shape, rsh, hsr, bus, bus, ">>", "<<", "←", "←");
run_inner(s, n_args, shape, rsh, hsr, bus, mul, ">>", "<<", "←", "*");
run_inner(s, n_args, shape, rsh, hsr, bus, rsh, ">>", "<<", "←", ">>");
run_inner(s, n_args, shape, rsh, hsr, bus, hsr, ">>", "<<", "←", "<<");
run_inner(s, n_args, shape, rsh, hsr, mul, and, ">>", "<<", "*", "&");
run_inner(s, n_args, shape, rsh, hsr, mul, add, ">>", "<<", "*", "+");
run_inner(s, n_args, shape, rsh, hsr, mul, xor, ">>", "<<", "*", "^");
run_inner(s, n_args, shape, rsh, hsr, mul, or, ">>", "<<", "*", "|");
run_inner(s, n_args, shape, rsh, hsr, mul, sub, ">>", "<<", "*", "-");
run_inner(s, n_args, shape, rsh, hsr, mul, bus, ">>", "<<", "*", "←");
run_inner(s, n_args, shape, rsh, hsr, mul, mul, ">>", "<<", "*", "*");
run_inner(s, n_args, shape, rsh, hsr, mul, rsh, ">>", "<<", "*", ">>");
run_inner(s, n_args, shape, rsh, hsr, mul, hsr, ">>", "<<", "*", "<<");
run_inner(s, n_args, shape, rsh, hsr, rsh, and, ">>", "<<", ">>", "&");
run_inner(s, n_args, shape, rsh, hsr, rsh, add, ">>", "<<", ">>", "+");
run_inner(s, n_args, shape, rsh, hsr, rsh, xor, ">>", "<<", ">>", "^");
run_inner(s, n_args, shape, rsh, hsr, rsh, or, ">>", "<<", ">>", "|");
run_inner(s, n_args, shape, rsh, hsr, rsh, sub, ">>", "<<", ">>", "-");
run_inner(s, n_args, shape, rsh, hsr, rsh, bus, ">>", "<<", ">>", "←");
run_inner(s, n_args, shape, rsh, hsr, rsh, mul, ">>", "<<", ">>", "*");
run_inner(s, n_args, shape, rsh, hsr, rsh, rsh, ">>", "<<", ">>", ">>");
run_inner(s, n_args, shape, rsh, hsr, rsh, hsr, ">>", "<<", ">>", "<<");
run_inner(s, n_args, shape, rsh, hsr, hsr, and, ">>", "<<", "<<", "&");
run_inner(s, n_args, shape, rsh, hsr, hsr, add, ">>", "<<", "<<", "+");
run_inner(s, n_args, shape, rsh, hsr, hsr, xor, ">>", "<<", "<<", "^");
run_inner(s, n_args, shape, rsh, hsr, hsr, or, ">>", "<<", "<<", "|");
run_inner(s, n_args, shape, rsh, hsr, hsr, sub, ">>", "<<", "<<", "-");
run_inner(s, n_args, shape, rsh, hsr, hsr, bus, ">>", "<<", "<<", "←");
run_inner(s, n_args, shape, rsh, hsr, hsr, mul, ">>", "<<", "<<", "*");
run_inner(s, n_args, shape, rsh, hsr, hsr, rsh, ">>", "<<", "<<", ">>");
run_inner(s, n_args, shape, rsh, hsr, hsr, hsr, ">>", "<<", "<<", "<<");
}));
threads.push(thread::spawn(move || {
run_inner(s, n_args, shape, hsr, and, and, and, "<<", "&", "&", "&");
run_inner(s, n_args, shape, hsr, and, and, add, "<<", "&", "&", "+");
run_inner(s, n_args, shape, hsr, and, and, xor, "<<", "&", "&", "^");
run_inner(s, n_args, shape, hsr, and, and, or, "<<", "&", "&", "|");
run_inner(s, n_args, shape, hsr, and, and, sub, "<<", "&", "&", "-");
run_inner(s, n_args, shape, hsr, and, and, bus, "<<", "&", "&", "←");
run_inner(s, n_args, shape, hsr, and, and, mul, "<<", "&", "&", "*");
run_inner(s, n_args, shape, hsr, and, and, rsh, "<<", "&", "&", ">>");
run_inner(s, n_args, shape, hsr, and, and, hsr, "<<", "&", "&", "<<");
run_inner(s, n_args, shape, hsr, and, add, and, "<<", "&", "+", "&");
run_inner(s, n_args, shape, hsr, and, add, add, "<<", "&", "+", "+");
run_inner(s, n_args, shape, hsr, and, add, xor, "<<", "&", "+", "^");
run_inner(s, n_args, shape, hsr, and, add, or, "<<", "&", "+", "|");
run_inner(s, n_args, shape, hsr, and, add, sub, "<<", "&", "+", "-");
run_inner(s, n_args, shape, hsr, and, add, bus, "<<", "&", "+", "←");
run_inner(s, n_args, shape, hsr, and, add, mul, "<<", "&", "+", "*");
run_inner(s, n_args, shape, hsr, and, add, rsh, "<<", "&", "+", ">>");
run_inner(s, n_args, shape, hsr, and, add, hsr, "<<", "&", "+", "<<");
run_inner(s, n_args, shape, hsr, and, xor, and, "<<", "&", "^", "&");
run_inner(s, n_args, shape, hsr, and, xor, add, "<<", "&", "^", "+");
run_inner(s, n_args, shape, hsr, and, xor, xor, "<<", "&", "^", "^");
run_inner(s, n_args, shape, hsr, and, xor, or, "<<", "&", "^", "|");
run_inner(s, n_args, shape, hsr, and, xor, sub, "<<", "&", "^", "-");
run_inner(s, n_args, shape, hsr, and, xor, bus, "<<", "&", "^", "←");
run_inner(s, n_args, shape, hsr, and, xor, mul, "<<", "&", "^", "*");
run_inner(s, n_args, shape, hsr, and, xor, rsh, "<<", "&", "^", ">>");
run_inner(s, n_args, shape, hsr, and, xor, hsr, "<<", "&", "^", "<<");
run_inner(s, n_args, shape, hsr, and, or, and, "<<", "&", "|", "&");
run_inner(s, n_args, shape, hsr, and, or, add, "<<", "&", "|", "+");
run_inner(s, n_args, shape, hsr, and, or, xor, "<<", "&", "|", "^");
run_inner(s, n_args, shape, hsr, and, or, or, "<<", "&", "|", "|");
run_inner(s, n_args, shape, hsr, and, or, sub, "<<", "&", "|", "-");
run_inner(s, n_args, shape, hsr, and, or, bus, "<<", "&", "|", "←");
run_inner(s, n_args, shape, hsr, and, or, mul, "<<", "&", "|", "*");
run_inner(s, n_args, shape, hsr, and, or, rsh, "<<", "&", "|", ">>");
run_inner(s, n_args, shape, hsr, and, or, hsr, "<<", "&", "|", "<<");
run_inner(s, n_args, shape, hsr, and, sub, and, "<<", "&", "-", "&");
run_inner(s, n_args, shape, hsr, and, sub, add, "<<", "&", "-", "+");
run_inner(s, n_args, shape, hsr, and, sub, xor, "<<", "&", "-", "^");
run_inner(s, n_args, shape, hsr, and, sub, or, "<<", "&", "-", "|");
run_inner(s, n_args, shape, hsr, and, sub, sub, "<<", "&", "-", "-");
run_inner(s, n_args, shape, hsr, and, sub, bus, "<<", "&", "-", "←");
run_inner(s, n_args, shape, hsr, and, sub, mul, "<<", "&", "-", "*");
run_inner(s, n_args, shape, hsr, and, sub, rsh, "<<", "&", "-", ">>");
run_inner(s, n_args, shape, hsr, and, sub, hsr, "<<", "&", "-", "<<");
run_inner(s, n_args, shape, hsr, and, bus, and, "<<", "&", "←", "&");
run_inner(s, n_args, shape, hsr, and, bus, add, "<<", "&", "←", "+");
run_inner(s, n_args, shape, hsr, and, bus, xor, "<<", "&", "←", "^");
run_inner(s, n_args, shape, hsr, and, bus, or, "<<", "&", "←", "|");
run_inner(s, n_args, shape, hsr, and, bus, sub, "<<", "&", "←", "-");
run_inner(s, n_args, shape, hsr, and, bus, bus, "<<", "&", "←", "←");
run_inner(s, n_args, shape, hsr, and, bus, mul, "<<", "&", "←", "*");
run_inner(s, n_args, shape, hsr, and, bus, rsh, "<<", "&", "←", ">>");
run_inner(s, n_args, shape, hsr, and, bus, hsr, "<<", "&", "←", "<<");
run_inner(s, n_args, shape, hsr, and, mul, and, "<<", "&", "*", "&");
run_inner(s, n_args, shape, hsr, and, mul, add, "<<", "&", "*", "+");
run_inner(s, n_args, shape, hsr, and, mul, xor, "<<", "&", "*", "^");
run_inner(s, n_args, shape, hsr, and, mul, or, "<<", "&", "*", "|");
run_inner(s, n_args, shape, hsr, and, mul, sub, "<<", "&", "*", "-");
run_inner(s, n_args, shape, hsr, and, mul, bus, "<<", "&", "*", "←");
run_inner(s, n_args, shape, hsr, and, mul, mul, "<<", "&", "*", "*");
run_inner(s, n_args, shape, hsr, and, mul, rsh, "<<", "&", "*", ">>");
run_inner(s, n_args, shape, hsr, and, mul, hsr, "<<", "&", "*", "<<");
run_inner(s, n_args, shape, hsr, and, rsh, and, "<<", "&", ">>", "&");
run_inner(s, n_args, shape, hsr, and, rsh, add, "<<", "&", ">>", "+");
run_inner(s, n_args, shape, hsr, and, rsh, xor, "<<", "&", ">>", "^");
run_inner(s, n_args, shape, hsr, and, rsh, or, "<<", "&", ">>", "|");
run_inner(s, n_args, shape, hsr, and, rsh, sub, "<<", "&", ">>", "-");
run_inner(s, n_args, shape, hsr, and, rsh, bus, "<<", "&", ">>", "←");
run_inner(s, n_args, shape, hsr, and, rsh, mul, "<<", "&", ">>", "*");
run_inner(s, n_args, shape, hsr, and, rsh, rsh, "<<", "&", ">>", ">>");
run_inner(s, n_args, shape, hsr, and, rsh, hsr, "<<", "&", ">>", "<<");
run_inner(s, n_args, shape, hsr, and, hsr, and, "<<", "&", "<<", "&");
run_inner(s, n_args, shape, hsr, and, hsr, add, "<<", "&", "<<", "+");
run_inner(s, n_args, shape, hsr, and, hsr, xor, "<<", "&", "<<", "^");
run_inner(s, n_args, shape, hsr, and, hsr, or, "<<", "&", "<<", "|");
run_inner(s, n_args, shape, hsr, and, hsr, sub, "<<", "&", "<<", "-");
run_inner(s, n_args, shape, hsr, and, hsr, bus, "<<", "&", "<<", "←");
run_inner(s, n_args, shape, hsr, and, hsr, mul, "<<", "&", "<<", "*");
run_inner(s, n_args, shape, hsr, and, hsr, rsh, "<<", "&", "<<", ">>");
run_inner(s, n_args, shape, hsr, and, hsr, hsr, "<<", "&", "<<", "<<");
run_inner(s, n_args, shape, hsr, add, and, and, "<<", "+", "&", "&");
run_inner(s, n_args, shape, hsr, add, and, add, "<<", "+", "&", "+");
run_inner(s, n_args, shape, hsr, add, and, xor, "<<", "+", "&", "^");
run_inner(s, n_args, shape, hsr, add, and, or, "<<", "+", "&", "|");
run_inner(s, n_args, shape, hsr, add, and, sub, "<<", "+", "&", "-");
run_inner(s, n_args, shape, hsr, add, and, bus, "<<", "+", "&", "←");
run_inner(s, n_args, shape, hsr, add, and, mul, "<<", "+", "&", "*");
run_inner(s, n_args, shape, hsr, add, and, rsh, "<<", "+", "&", ">>");
run_inner(s, n_args, shape, hsr, add, and, hsr, "<<", "+", "&", "<<");
run_inner(s, n_args, shape, hsr, add, add, and, "<<", "+", "+", "&");
run_inner(s, n_args, shape, hsr, add, add, add, "<<", "+", "+", "+");
run_inner(s, n_args, shape, hsr, add, add, xor, "<<", "+", "+", "^");
run_inner(s, n_args, shape, hsr, add, add, or, "<<", "+", "+", "|");
run_inner(s, n_args, shape, hsr, add, add, sub, "<<", "+", "+", "-");
run_inner(s, n_args, shape, hsr, add, add, bus, "<<", "+", "+", "←");
run_inner(s, n_args, shape, hsr, add, add, mul, "<<", "+", "+", "*");
run_inner(s, n_args, shape, hsr, add, add, rsh, "<<", "+", "+", ">>");
run_inner(s, n_args, shape, hsr, add, add, hsr, "<<", "+", "+", "<<");
run_inner(s, n_args, shape, hsr, add, xor, and, "<<", "+", "^", "&");
run_inner(s, n_args, shape, hsr, add, xor, add, "<<", "+", "^", "+");
run_inner(s, n_args, shape, hsr, add, xor, xor, "<<", "+", "^", "^");
run_inner(s, n_args, shape, hsr, add, xor, or, "<<", "+", "^", "|");
run_inner(s, n_args, shape, hsr, add, xor, sub, "<<", "+", "^", "-");
run_inner(s, n_args, shape, hsr, add, xor, bus, "<<", "+", "^", "←");
run_inner(s, n_args, shape, hsr, add, xor, mul, "<<", "+", "^", "*");
run_inner(s, n_args, shape, hsr, add, xor, rsh, "<<", "+", "^", ">>");
run_inner(s, n_args, shape, hsr, add, xor, hsr, "<<", "+", "^", "<<");
run_inner(s, n_args, shape, hsr, add, or, and, "<<", "+", "|", "&");
run_inner(s, n_args, shape, hsr, add, or, add, "<<", "+", "|", "+");
run_inner(s, n_args, shape, hsr, add, or, xor, "<<", "+", "|", "^");
run_inner(s, n_args, shape, hsr, add, or, or, "<<", "+", "|", "|");
run_inner(s, n_args, shape, hsr, add, or, sub, "<<", "+", "|", "-");
run_inner(s, n_args, shape, hsr, add, or, bus, "<<", "+", "|", "←");
run_inner(s, n_args, shape, hsr, add, or, mul, "<<", "+", "|", "*");
run_inner(s, n_args, shape, hsr, add, or, rsh, "<<", "+", "|", ">>");
run_inner(s, n_args, shape, hsr, add, or, hsr, "<<", "+", "|", "<<");
run_inner(s, n_args, shape, hsr, add, sub, and, "<<", "+", "-", "&");
run_inner(s, n_args, shape, hsr, add, sub, add, "<<", "+", "-", "+");
run_inner(s, n_args, shape, hsr, add, sub, xor, "<<", "+", "-", "^");
run_inner(s, n_args, shape, hsr, add, sub, or, "<<", "+", "-", "|");
run_inner(s, n_args, shape, hsr, add, sub, sub, "<<", "+", "-", "-");
run_inner(s, n_args, shape, hsr, add, sub, bus, "<<", "+", "-", "←");
run_inner(s, n_args, shape, hsr, add, sub, mul, "<<", "+", "-", "*");
run_inner(s, n_args, shape, hsr, add, sub, rsh, "<<", "+", "-", ">>");
run_inner(s, n_args, shape, hsr, add, sub, hsr, "<<", "+", "-", "<<");
run_inner(s, n_args, shape, hsr, add, bus, and, "<<", "+", "←", "&");
run_inner(s, n_args, shape, hsr, add, bus, add, "<<", "+", "←", "+");
run_inner(s, n_args, shape, hsr, add, bus, xor, "<<", "+", "←", "^");
run_inner(s, n_args, shape, hsr, add, bus, or, "<<", "+", "←", "|");
run_inner(s, n_args, shape, hsr, add, bus, sub, "<<", "+", "←", "-");
run_inner(s, n_args, shape, hsr, add, bus, bus, "<<", "+", "←", "←");
run_inner(s, n_args, shape, hsr, add, bus, mul, "<<", "+", "←", "*");
run_inner(s, n_args, shape, hsr, add, bus, rsh, "<<", "+", "←", ">>");
run_inner(s, n_args, shape, hsr, add, bus, hsr, "<<", "+", "←", "<<");
run_inner(s, n_args, shape, hsr, add, mul, and, "<<", "+", "*", "&");
run_inner(s, n_args, shape, hsr, add, mul, add, "<<", "+", "*", "+");
run_inner(s, n_args, shape, hsr, add, mul, xor, "<<", "+", "*", "^");
run_inner(s, n_args, shape, hsr, add, mul, or, "<<", "+", "*", "|");
run_inner(s, n_args, shape, hsr, add, mul, sub, "<<", "+", "*", "-");
run_inner(s, n_args, shape, hsr, add, mul, bus, "<<", "+", "*", "←");
run_inner(s, n_args, shape, hsr, add, mul, mul, "<<", "+", "*", "*");
run_inner(s, n_args, shape, hsr, add, mul, rsh, "<<", "+", "*", ">>");
run_inner(s, n_args, shape, hsr, add, mul, hsr, "<<", "+", "*", "<<");
run_inner(s, n_args, shape, hsr, add, rsh, and, "<<", "+", ">>", "&");
run_inner(s, n_args, shape, hsr, add, rsh, add, "<<", "+", ">>", "+");
run_inner(s, n_args, shape, hsr, add, rsh, xor, "<<", "+", ">>", "^");
run_inner(s, n_args, shape, hsr, add, rsh, or, "<<", "+", ">>", "|");
run_inner(s, n_args, shape, hsr, add, rsh, sub, "<<", "+", ">>", "-");
run_inner(s, n_args, shape, hsr, add, rsh, bus, "<<", "+", ">>", "←");
run_inner(s, n_args, shape, hsr, add, rsh, mul, "<<", "+", ">>", "*");
run_inner(s, n_args, shape, hsr, add, rsh, rsh, "<<", "+", ">>", ">>");
run_inner(s, n_args, shape, hsr, add, rsh, hsr, "<<", "+", ">>", "<<");
run_inner(s, n_args, shape, hsr, add, hsr, and, "<<", "+", "<<", "&");
run_inner(s, n_args, shape, hsr, add, hsr, add, "<<", "+", "<<", "+");
run_inner(s, n_args, shape, hsr, add, hsr, xor, "<<", "+", "<<", "^");
run_inner(s, n_args, shape, hsr, add, hsr, or, "<<", "+", "<<", "|");
run_inner(s, n_args, shape, hsr, add, hsr, sub, "<<", "+", "<<", "-");
run_inner(s, n_args, shape, hsr, add, hsr, bus, "<<", "+", "<<", "←");
run_inner(s, n_args, shape, hsr, add, hsr, mul, "<<", "+", "<<", "*");
run_inner(s, n_args, shape, hsr, add, hsr, rsh, "<<", "+", "<<", ">>");
run_inner(s, n_args, shape, hsr, add, hsr, hsr, "<<", "+", "<<", "<<");
run_inner(s, n_args, shape, hsr, xor, and, and, "<<", "^", "&", "&");
run_inner(s, n_args, shape, hsr, xor, and, add, "<<", "^", "&", "+");
run_inner(s, n_args, shape, hsr, xor, and, xor, "<<", "^", "&", "^");
run_inner(s, n_args, shape, hsr, xor, and, or, "<<", "^", "&", "|");
run_inner(s, n_args, shape, hsr, xor, and, sub, "<<", "^", "&", "-");
run_inner(s, n_args, shape, hsr, xor, and, bus, "<<", "^", "&", "←");
run_inner(s, n_args, shape, hsr, xor, and, mul, "<<", "^", "&", "*");
run_inner(s, n_args, shape, hsr, xor, and, rsh, "<<", "^", "&", ">>");
run_inner(s, n_args, shape, hsr, xor, and, hsr, "<<", "^", "&", "<<");
run_inner(s, n_args, shape, hsr, xor, add, and, "<<", "^", "+", "&");
run_inner(s, n_args, shape, hsr, xor, add, add, "<<", "^", "+", "+");
run_inner(s, n_args, shape, hsr, xor, add, xor, "<<", "^", "+", "^");
run_inner(s, n_args, shape, hsr, xor, add, or, "<<", "^", "+", "|");
run_inner(s, n_args, shape, hsr, xor, add, sub, "<<", "^", "+", "-");
run_inner(s, n_args, shape, hsr, xor, add, bus, "<<", "^", "+", "←");
run_inner(s, n_args, shape, hsr, xor, add, mul, "<<", "^", "+", "*");
run_inner(s, n_args, shape, hsr, xor, add, rsh, "<<", "^", "+", ">>");
run_inner(s, n_args, shape, hsr, xor, add, hsr, "<<", "^", "+", "<<");
run_inner(s, n_args, shape, hsr, xor, xor, and, "<<", "^", "^", "&");
run_inner(s, n_args, shape, hsr, xor, xor, add, "<<", "^", "^", "+");
run_inner(s, n_args, shape, hsr, xor, xor, xor, "<<", "^", "^", "^");
run_inner(s, n_args, shape, hsr, xor, xor, or, "<<", "^", "^", "|");
run_inner(s, n_args, shape, hsr, xor, xor, sub, "<<", "^", "^", "-");
run_inner(s, n_args, shape, hsr, xor, xor, bus, "<<", "^", "^", "←");
run_inner(s, n_args, shape, hsr, xor, xor, mul, "<<", "^", "^", "*");
run_inner(s, n_args, shape, hsr, xor, xor, rsh, "<<", "^", "^", ">>");
run_inner(s, n_args, shape, hsr, xor, xor, hsr, "<<", "^", "^", "<<");
run_inner(s, n_args, shape, hsr, xor, or, and, "<<", "^", "|", "&");
run_inner(s, n_args, shape, hsr, xor, or, add, "<<", "^", "|", "+");
run_inner(s, n_args, shape, hsr, xor, or, xor, "<<", "^", "|", "^");
run_inner(s, n_args, shape, hsr, xor, or, or, "<<", "^", "|", "|");
run_inner(s, n_args, shape, hsr, xor, or, sub, "<<", "^", "|", "-");
run_inner(s, n_args, shape, hsr, xor, or, bus, "<<", "^", "|", "←");
run_inner(s, n_args, shape, hsr, xor, or, mul, "<<", "^", "|", "*");
run_inner(s, n_args, shape, hsr, xor, or, rsh, "<<", "^", "|", ">>");
run_inner(s, n_args, shape, hsr, xor, or, hsr, "<<", "^", "|", "<<");
run_inner(s, n_args, shape, hsr, xor, sub, and, "<<", "^", "-", "&");
run_inner(s, n_args, shape, hsr, xor, sub, add, "<<", "^", "-", "+");
run_inner(s, n_args, shape, hsr, xor, sub, xor, "<<", "^", "-", "^");
run_inner(s, n_args, shape, hsr, xor, sub, or, "<<", "^", "-", "|");
run_inner(s, n_args, shape, hsr, xor, sub, sub, "<<", "^", "-", "-");
run_inner(s, n_args, shape, hsr, xor, sub, bus, "<<", "^", "-", "←");
run_inner(s, n_args, shape, hsr, xor, sub, mul, "<<", "^", "-", "*");
run_inner(s, n_args, shape, hsr, xor, sub, rsh, "<<", "^", "-", ">>");
run_inner(s, n_args, shape, hsr, xor, sub, hsr, "<<", "^", "-", "<<");
run_inner(s, n_args, shape, hsr, xor, bus, and, "<<", "^", "←", "&");
run_inner(s, n_args, shape, hsr, xor, bus, add, "<<", "^", "←", "+");
run_inner(s, n_args, shape, hsr, xor, bus, xor, "<<", "^", "←", "^");
run_inner(s, n_args, shape, hsr, xor, bus, or, "<<", "^", "←", "|");
run_inner(s, n_args, shape, hsr, xor, bus, sub, "<<", "^", "←", "-");
run_inner(s, n_args, shape, hsr, xor, bus, bus, "<<", "^", "←", "←");
run_inner(s, n_args, shape, hsr, xor, bus, mul, "<<", "^", "←", "*");
run_inner(s, n_args, shape, hsr, xor, bus, rsh, "<<", "^", "←", ">>");
run_inner(s, n_args, shape, hsr, xor, bus, hsr, "<<", "^", "←", "<<");
run_inner(s, n_args, shape, hsr, xor, mul, and, "<<", "^", "*", "&");
run_inner(s, n_args, shape, hsr, xor, mul, add, "<<", "^", "*", "+");
run_inner(s, n_args, shape, hsr, xor, mul, xor, "<<", "^", "*", "^");
run_inner(s, n_args, shape, hsr, xor, mul, or, "<<", "^", "*", "|");
run_inner(s, n_args, shape, hsr, xor, mul, sub, "<<", "^", "*", "-");
run_inner(s, n_args, shape, hsr, xor, mul, bus, "<<", "^", "*", "←");
run_inner(s, n_args, shape, hsr, xor, mul, mul, "<<", "^", "*", "*");
run_inner(s, n_args, shape, hsr, xor, mul, rsh, "<<", "^", "*", ">>");
run_inner(s, n_args, shape, hsr, xor, mul, hsr, "<<", "^", "*", "<<");
run_inner(s, n_args, shape, hsr, xor, rsh, and, "<<", "^", ">>", "&");
run_inner(s, n_args, shape, hsr, xor, rsh, add, "<<", "^", ">>", "+");
run_inner(s, n_args, shape, hsr, xor, rsh, xor, "<<", "^", ">>", "^");
run_inner(s, n_args, shape, hsr, xor, rsh, or, "<<", "^", ">>", "|");
run_inner(s, n_args, shape, hsr, xor, rsh, sub, "<<", "^", ">>", "-");
run_inner(s, n_args, shape, hsr, xor, rsh, bus, "<<", "^", ">>", "←");
run_inner(s, n_args, shape, hsr, xor, rsh, mul, "<<", "^", ">>", "*");
run_inner(s, n_args, shape, hsr, xor, rsh, rsh, "<<", "^", ">>", ">>");
run_inner(s, n_args, shape, hsr, xor, rsh, hsr, "<<", "^", ">>", "<<");
run_inner(s, n_args, shape, hsr, xor, hsr, and, "<<", "^", "<<", "&");
run_inner(s, n_args, shape, hsr, xor, hsr, add, "<<", "^", "<<", "+");
run_inner(s, n_args, shape, hsr, xor, hsr, xor, "<<", "^", "<<", "^");
run_inner(s, n_args, shape, hsr, xor, hsr, or, "<<", "^", "<<", "|");
run_inner(s, n_args, shape, hsr, xor, hsr, sub, "<<", "^", "<<", "-");
run_inner(s, n_args, shape, hsr, xor, hsr, bus, "<<", "^", "<<", "←");
run_inner(s, n_args, shape, hsr, xor, hsr, mul, "<<", "^", "<<", "*");
run_inner(s, n_args, shape, hsr, xor, hsr, rsh, "<<", "^", "<<", ">>");
run_inner(s, n_args, shape, hsr, xor, hsr, hsr, "<<", "^", "<<", "<<");
run_inner(s, n_args, shape, hsr, or, and, and, "<<", "|", "&", "&");
run_inner(s, n_args, shape, hsr, or, and, add, "<<", "|", "&", "+");
run_inner(s, n_args, shape, hsr, or, and, xor, "<<", "|", "&", "^");
run_inner(s, n_args, shape, hsr, or, and, or, "<<", "|", "&", "|");
run_inner(s, n_args, shape, hsr, or, and, sub, "<<", "|", "&", "-");
run_inner(s, n_args, shape, hsr, or, and, bus, "<<", "|", "&", "←");
run_inner(s, n_args, shape, hsr, or, and, mul, "<<", "|", "&", "*");
run_inner(s, n_args, shape, hsr, or, and, rsh, "<<", "|", "&", ">>");
run_inner(s, n_args, shape, hsr, or, and, hsr, "<<", "|", "&", "<<");
run_inner(s, n_args, shape, hsr, or, add, and, "<<", "|", "+", "&");
run_inner(s, n_args, shape, hsr, or, add, add, "<<", "|", "+", "+");
run_inner(s, n_args, shape, hsr, or, add, xor, "<<", "|", "+", "^");
run_inner(s, n_args, shape, hsr, or, add, or, "<<", "|", "+", "|");
run_inner(s, n_args, shape, hsr, or, add, sub, "<<", "|", "+", "-");
run_inner(s, n_args, shape, hsr, or, add, bus, "<<", "|", "+", "←");
run_inner(s, n_args, shape, hsr, or, add, mul, "<<", "|", "+", "*");
run_inner(s, n_args, shape, hsr, or, add, rsh, "<<", "|", "+", ">>");
run_inner(s, n_args, shape, hsr, or, add, hsr, "<<", "|", "+", "<<");
run_inner(s, n_args, shape, hsr, or, xor, and, "<<", "|", "^", "&");
run_inner(s, n_args, shape, hsr, or, xor, add, "<<", "|", "^", "+");
run_inner(s, n_args, shape, hsr, or, xor, xor, "<<", "|", "^", "^");
run_inner(s, n_args, shape, hsr, or, xor, or, "<<", "|", "^", "|");
run_inner(s, n_args, shape, hsr, or, xor, sub, "<<", "|", "^", "-");
run_inner(s, n_args, shape, hsr, or, xor, bus, "<<", "|", "^", "←");
run_inner(s, n_args, shape, hsr, or, xor, mul, "<<", "|", "^", "*");
run_inner(s, n_args, shape, hsr, or, xor, rsh, "<<", "|", "^", ">>");
run_inner(s, n_args, shape, hsr, or, xor, hsr, "<<", "|", "^", "<<");
run_inner(s, n_args, shape, hsr, or, or, and, "<<", "|", "|", "&");
run_inner(s, n_args, shape, hsr, or, or, add, "<<", "|", "|", "+");
run_inner(s, n_args, shape, hsr, or, or, xor, "<<", "|", "|", "^");
run_inner(s, n_args, shape, hsr, or, or, or, "<<", "|", "|", "|");
run_inner(s, n_args, shape, hsr, or, or, sub, "<<", "|", "|", "-");
run_inner(s, n_args, shape, hsr, or, or, bus, "<<", "|", "|", "←");
run_inner(s, n_args, shape, hsr, or, or, mul, "<<", "|", "|", "*");
run_inner(s, n_args, shape, hsr, or, or, rsh, "<<", "|", "|", ">>");
run_inner(s, n_args, shape, hsr, or, or, hsr, "<<", "|", "|", "<<");
run_inner(s, n_args, shape, hsr, or, sub, and, "<<", "|", "-", "&");
run_inner(s, n_args, shape, hsr, or, sub, add, "<<", "|", "-", "+");
run_inner(s, n_args, shape, hsr, or, sub, xor, "<<", "|", "-", "^");
run_inner(s, n_args, shape, hsr, or, sub, or, "<<", "|", "-", "|");
run_inner(s, n_args, shape, hsr, or, sub, sub, "<<", "|", "-", "-");
run_inner(s, n_args, shape, hsr, or, sub, bus, "<<", "|", "-", "←");
run_inner(s, n_args, shape, hsr, or, sub, mul, "<<", "|", "-", "*");
run_inner(s, n_args, shape, hsr, or, sub, rsh, "<<", "|", "-", ">>");
run_inner(s, n_args, shape, hsr, or, sub, hsr, "<<", "|", "-", "<<");
run_inner(s, n_args, shape, hsr, or, bus, and, "<<", "|", "←", "&");
run_inner(s, n_args, shape, hsr, or, bus, add, "<<", "|", "←", "+");
run_inner(s, n_args, shape, hsr, or, bus, xor, "<<", "|", "←", "^");
run_inner(s, n_args, shape, hsr, or, bus, or, "<<", "|", "←", "|");
run_inner(s, n_args, shape, hsr, or, bus, sub, "<<", "|", "←", "-");
run_inner(s, n_args, shape, hsr, or, bus, bus, "<<", "|", "←", "←");
run_inner(s, n_args, shape, hsr, or, bus, mul, "<<", "|", "←", "*");
run_inner(s, n_args, shape, hsr, or, bus, rsh, "<<", "|", "←", ">>");
run_inner(s, n_args, shape, hsr, or, bus, hsr, "<<", "|", "←", "<<");
run_inner(s, n_args, shape, hsr, or, mul, and, "<<", "|", "*", "&");
run_inner(s, n_args, shape, hsr, or, mul, add, "<<", "|", "*", "+");
run_inner(s, n_args, shape, hsr, or, mul, xor, "<<", "|", "*", "^");
run_inner(s, n_args, shape, hsr, or, mul, or, "<<", "|", "*", "|");
run_inner(s, n_args, shape, hsr, or, mul, sub, "<<", "|", "*", "-");
run_inner(s, n_args, shape, hsr, or, mul, bus, "<<", "|", "*", "←");
run_inner(s, n_args, shape, hsr, or, mul, mul, "<<", "|", "*", "*");
run_inner(s, n_args, shape, hsr, or, mul, rsh, "<<", "|", "*", ">>");
run_inner(s, n_args, shape, hsr, or, mul, hsr, "<<", "|", "*", "<<");
run_inner(s, n_args, shape, hsr, or, rsh, and, "<<", "|", ">>", "&");
run_inner(s, n_args, shape, hsr, or, rsh, add, "<<", "|", ">>", "+");
run_inner(s, n_args, shape, hsr, or, rsh, xor, "<<", "|", ">>", "^");
run_inner(s, n_args, shape, hsr, or, rsh, or, "<<", "|", ">>", "|");
run_inner(s, n_args, shape, hsr, or, rsh, sub, "<<", "|", ">>", "-");
run_inner(s, n_args, shape, hsr, or, rsh, bus, "<<", "|", ">>", "←");
run_inner(s, n_args, shape, hsr, or, rsh, mul, "<<", "|", ">>", "*");
run_inner(s, n_args, shape, hsr, or, rsh, rsh, "<<", "|", ">>", ">>");
run_inner(s, n_args, shape, hsr, or, rsh, hsr, "<<", "|", ">>", "<<");
run_inner(s, n_args, shape, hsr, or, hsr, and, "<<", "|", "<<", "&");
run_inner(s, n_args, shape, hsr, or, hsr, add, "<<", "|", "<<", "+");
run_inner(s, n_args, shape, hsr, or, hsr, xor, "<<", "|", "<<", "^");
run_inner(s, n_args, shape, hsr, or, hsr, or, "<<", "|", "<<", "|");
run_inner(s, n_args, shape, hsr, or, hsr, sub, "<<", "|", "<<", "-");
run_inner(s, n_args, shape, hsr, or, hsr, bus, "<<", "|", "<<", "←");
run_inner(s, n_args, shape, hsr, or, hsr, mul, "<<", "|", "<<", "*");
run_inner(s, n_args, shape, hsr, or, hsr, rsh, "<<", "|", "<<", ">>");
run_inner(s, n_args, shape, hsr, or, hsr, hsr, "<<", "|", "<<", "<<");
run_inner(s, n_args, shape, hsr, sub, and, and, "<<", "-", "&", "&");
run_inner(s, n_args, shape, hsr, sub, and, add, "<<", "-", "&", "+");
run_inner(s, n_args, shape, hsr, sub, and, xor, "<<", "-", "&", "^");
run_inner(s, n_args, shape, hsr, sub, and, or, "<<", "-", "&", "|");
run_inner(s, n_args, shape, hsr, sub, and, sub, "<<", "-", "&", "-");
run_inner(s, n_args, shape, hsr, sub, and, bus, "<<", "-", "&", "←");
run_inner(s, n_args, shape, hsr, sub, and, mul, "<<", "-", "&", "*");
run_inner(s, n_args, shape, hsr, sub, and, rsh, "<<", "-", "&", ">>");
run_inner(s, n_args, shape, hsr, sub, and, hsr, "<<", "-", "&", "<<");
run_inner(s, n_args, shape, hsr, sub, add, and, "<<", "-", "+", "&");
run_inner(s, n_args, shape, hsr, sub, add, add, "<<", "-", "+", "+");
run_inner(s, n_args, shape, hsr, sub, add, xor, "<<", "-", "+", "^");
run_inner(s, n_args, shape, hsr, sub, add, or, "<<", "-", "+", "|");
run_inner(s, n_args, shape, hsr, sub, add, sub, "<<", "-", "+", "-");
run_inner(s, n_args, shape, hsr, sub, add, bus, "<<", "-", "+", "←");
run_inner(s, n_args, shape, hsr, sub, add, mul, "<<", "-", "+", "*");
run_inner(s, n_args, shape, hsr, sub, add, rsh, "<<", "-", "+", ">>");
run_inner(s, n_args, shape, hsr, sub, add, hsr, "<<", "-", "+", "<<");
run_inner(s, n_args, shape, hsr, sub, xor, and, "<<", "-", "^", "&");
run_inner(s, n_args, shape, hsr, sub, xor, add, "<<", "-", "^", "+");
run_inner(s, n_args, shape, hsr, sub, xor, xor, "<<", "-", "^", "^");
run_inner(s, n_args, shape, hsr, sub, xor, or, "<<", "-", "^", "|");
run_inner(s, n_args, shape, hsr, sub, xor, sub, "<<", "-", "^", "-");
run_inner(s, n_args, shape, hsr, sub, xor, bus, "<<", "-", "^", "←");
run_inner(s, n_args, shape, hsr, sub, xor, mul, "<<", "-", "^", "*");
run_inner(s, n_args, shape, hsr, sub, xor, rsh, "<<", "-", "^", ">>");
run_inner(s, n_args, shape, hsr, sub, xor, hsr, "<<", "-", "^", "<<");
run_inner(s, n_args, shape, hsr, sub, or, and, "<<", "-", "|", "&");
run_inner(s, n_args, shape, hsr, sub, or, add, "<<", "-", "|", "+");
run_inner(s, n_args, shape, hsr, sub, or, xor, "<<", "-", "|", "^");
run_inner(s, n_args, shape, hsr, sub, or, or, "<<", "-", "|", "|");
run_inner(s, n_args, shape, hsr, sub, or, sub, "<<", "-", "|", "-");
run_inner(s, n_args, shape, hsr, sub, or, bus, "<<", "-", "|", "←");
run_inner(s, n_args, shape, hsr, sub, or, mul, "<<", "-", "|", "*");
run_inner(s, n_args, shape, hsr, sub, or, rsh, "<<", "-", "|", ">>");
run_inner(s, n_args, shape, hsr, sub, or, hsr, "<<", "-", "|", "<<");
run_inner(s, n_args, shape, hsr, sub, sub, and, "<<", "-", "-", "&");
run_inner(s, n_args, shape, hsr, sub, sub, add, "<<", "-", "-", "+");
run_inner(s, n_args, shape, hsr, sub, sub, xor, "<<", "-", "-", "^");
run_inner(s, n_args, shape, hsr, sub, sub, or, "<<", "-", "-", "|");
run_inner(s, n_args, shape, hsr, sub, sub, sub, "<<", "-", "-", "-");
run_inner(s, n_args, shape, hsr, sub, sub, bus, "<<", "-", "-", "←");
run_inner(s, n_args, shape, hsr, sub, sub, mul, "<<", "-", "-", "*");
run_inner(s, n_args, shape, hsr, sub, sub, rsh, "<<", "-", "-", ">>");
run_inner(s, n_args, shape, hsr, sub, sub, hsr, "<<", "-", "-", "<<");
run_inner(s, n_args, shape, hsr, sub, bus, and, "<<", "-", "←", "&");
run_inner(s, n_args, shape, hsr, sub, bus, add, "<<", "-", "←", "+");
run_inner(s, n_args, shape, hsr, sub, bus, xor, "<<", "-", "←", "^");
run_inner(s, n_args, shape, hsr, sub, bus, or, "<<", "-", "←", "|");
run_inner(s, n_args, shape, hsr, sub, bus, sub, "<<", "-", "←", "-");
run_inner(s, n_args, shape, hsr, sub, bus, bus, "<<", "-", "←", "←");
run_inner(s, n_args, shape, hsr, sub, bus, mul, "<<", "-", "←", "*");
run_inner(s, n_args, shape, hsr, sub, bus, rsh, "<<", "-", "←", ">>");
run_inner(s, n_args, shape, hsr, sub, bus, hsr, "<<", "-", "←", "<<");
run_inner(s, n_args, shape, hsr, sub, mul, and, "<<", "-", "*", "&");
run_inner(s, n_args, shape, hsr, sub, mul, add, "<<", "-", "*", "+");
run_inner(s, n_args, shape, hsr, sub, mul, xor, "<<", "-", "*", "^");
run_inner(s, n_args, shape, hsr, sub, mul, or, "<<", "-", "*", "|");
run_inner(s, n_args, shape, hsr, sub, mul, sub, "<<", "-", "*", "-");
run_inner(s, n_args, shape, hsr, sub, mul, bus, "<<", "-", "*", "←");
run_inner(s, n_args, shape, hsr, sub, mul, mul, "<<", "-", "*", "*");
run_inner(s, n_args, shape, hsr, sub, mul, rsh, "<<", "-", "*", ">>");
run_inner(s, n_args, shape, hsr, sub, mul, hsr, "<<", "-", "*", "<<");
run_inner(s, n_args, shape, hsr, sub, rsh, and, "<<", "-", ">>", "&");
run_inner(s, n_args, shape, hsr, sub, rsh, add, "<<", "-", ">>", "+");
run_inner(s, n_args, shape, hsr, sub, rsh, xor, "<<", "-", ">>", "^");
run_inner(s, n_args, shape, hsr, sub, rsh, or, "<<", "-", ">>", "|");
run_inner(s, n_args, shape, hsr, sub, rsh, sub, "<<", "-", ">>", "-");
run_inner(s, n_args, shape, hsr, sub, rsh, bus, "<<", "-", ">>", "←");
run_inner(s, n_args, shape, hsr, sub, rsh, mul, "<<", "-", ">>", "*");
run_inner(s, n_args, shape, hsr, sub, rsh, rsh, "<<", "-", ">>", ">>");
run_inner(s, n_args, shape, hsr, sub, rsh, hsr, "<<", "-", ">>", "<<");
run_inner(s, n_args, shape, hsr, sub, hsr, and, "<<", "-", "<<", "&");
run_inner(s, n_args, shape, hsr, sub, hsr, add, "<<", "-", "<<", "+");
run_inner(s, n_args, shape, hsr, sub, hsr, xor, "<<", "-", "<<", "^");
run_inner(s, n_args, shape, hsr, sub, hsr, or, "<<", "-", "<<", "|");
run_inner(s, n_args, shape, hsr, sub, hsr, sub, "<<", "-", "<<", "-");
run_inner(s, n_args, shape, hsr, sub, hsr, bus, "<<", "-", "<<", "←");
run_inner(s, n_args, shape, hsr, sub, hsr, mul, "<<", "-", "<<", "*");
run_inner(s, n_args, shape, hsr, sub, hsr, rsh, "<<", "-", "<<", ">>");
run_inner(s, n_args, shape, hsr, sub, hsr, hsr, "<<", "-", "<<", "<<");
run_inner(s, n_args, shape, hsr, bus, and, and, "<<", "←", "&", "&");
run_inner(s, n_args, shape, hsr, bus, and, add, "<<", "←", "&", "+");
run_inner(s, n_args, shape, hsr, bus, and, xor, "<<", "←", "&", "^");
run_inner(s, n_args, shape, hsr, bus, and, or, "<<", "←", "&", "|");
run_inner(s, n_args, shape, hsr, bus, and, sub, "<<", "←", "&", "-");
run_inner(s, n_args, shape, hsr, bus, and, bus, "<<", "←", "&", "←");
run_inner(s, n_args, shape, hsr, bus, and, mul, "<<", "←", "&", "*");
run_inner(s, n_args, shape, hsr, bus, and, rsh, "<<", "←", "&", ">>");
run_inner(s, n_args, shape, hsr, bus, and, hsr, "<<", "←", "&", "<<");
run_inner(s, n_args, shape, hsr, bus, add, and, "<<", "←", "+", "&");
run_inner(s, n_args, shape, hsr, bus, add, add, "<<", "←", "+", "+");
run_inner(s, n_args, shape, hsr, bus, add, xor, "<<", "←", "+", "^");
run_inner(s, n_args, shape, hsr, bus, add, or, "<<", "←", "+", "|");
run_inner(s, n_args, shape, hsr, bus, add, sub, "<<", "←", "+", "-");
run_inner(s, n_args, shape, hsr, bus, add, bus, "<<", "←", "+", "←");
run_inner(s, n_args, shape, hsr, bus, add, mul, "<<", "←", "+", "*");
run_inner(s, n_args, shape, hsr, bus, add, rsh, "<<", "←", "+", ">>");
run_inner(s, n_args, shape, hsr, bus, add, hsr, "<<", "←", "+", "<<");
run_inner(s, n_args, shape, hsr, bus, xor, and, "<<", "←", "^", "&");
run_inner(s, n_args, shape, hsr, bus, xor, add, "<<", "←", "^", "+");
run_inner(s, n_args, shape, hsr, bus, xor, xor, "<<", "←", "^", "^");
run_inner(s, n_args, shape, hsr, bus, xor, or, "<<", "←", "^", "|");
run_inner(s, n_args, shape, hsr, bus, xor, sub, "<<", "←", "^", "-");
run_inner(s, n_args, shape, hsr, bus, xor, bus, "<<", "←", "^", "←");
run_inner(s, n_args, shape, hsr, bus, xor, mul, "<<", "←", "^", "*");
run_inner(s, n_args, shape, hsr, bus, xor, rsh, "<<", "←", "^", ">>");
run_inner(s, n_args, shape, hsr, bus, xor, hsr, "<<", "←", "^", "<<");
run_inner(s, n_args, shape, hsr, bus, or, and, "<<", "←", "|", "&");
run_inner(s, n_args, shape, hsr, bus, or, add, "<<", "←", "|", "+");
run_inner(s, n_args, shape, hsr, bus, or, xor, "<<", "←", "|", "^");
run_inner(s, n_args, shape, hsr, bus, or, or, "<<", "←", "|", "|");
run_inner(s, n_args, shape, hsr, bus, or, sub, "<<", "←", "|", "-");
run_inner(s, n_args, shape, hsr, bus, or, bus, "<<", "←", "|", "←");
run_inner(s, n_args, shape, hsr, bus, or, mul, "<<", "←", "|", "*");
run_inner(s, n_args, shape, hsr, bus, or, rsh, "<<", "←", "|", ">>");
run_inner(s, n_args, shape, hsr, bus, or, hsr, "<<", "←", "|", "<<");
run_inner(s, n_args, shape, hsr, bus, sub, and, "<<", "←", "-", "&");
run_inner(s, n_args, shape, hsr, bus, sub, add, "<<", "←", "-", "+");
run_inner(s, n_args, shape, hsr, bus, sub, xor, "<<", "←", "-", "^");
run_inner(s, n_args, shape, hsr, bus, sub, or, "<<", "←", "-", "|");
run_inner(s, n_args, shape, hsr, bus, sub, sub, "<<", "←", "-", "-");
run_inner(s, n_args, shape, hsr, bus, sub, bus, "<<", "←", "-", "←");
run_inner(s, n_args, shape, hsr, bus, sub, mul, "<<", "←", "-", "*");
run_inner(s, n_args, shape, hsr, bus, sub, rsh, "<<", "←", "-", ">>");
run_inner(s, n_args, shape, hsr, bus, sub, hsr, "<<", "←", "-", "<<");
run_inner(s, n_args, shape, hsr, bus, bus, and, "<<", "←", "←", "&");
run_inner(s, n_args, shape, hsr, bus, bus, add, "<<", "←", "←", "+");
run_inner(s, n_args, shape, hsr, bus, bus, xor, "<<", "←", "←", "^");
run_inner(s, n_args, shape, hsr, bus, bus, or, "<<", "←", "←", "|");
run_inner(s, n_args, shape, hsr, bus, bus, sub, "<<", "←", "←", "-");
run_inner(s, n_args, shape, hsr, bus, bus, bus, "<<", "←", "←", "←");
run_inner(s, n_args, shape, hsr, bus, bus, mul, "<<", "←", "←", "*");
run_inner(s, n_args, shape, hsr, bus, bus, rsh, "<<", "←", "←", ">>");
run_inner(s, n_args, shape, hsr, bus, bus, hsr, "<<", "←", "←", "<<");
run_inner(s, n_args, shape, hsr, bus, mul, and, "<<", "←", "*", "&");
run_inner(s, n_args, shape, hsr, bus, mul, add, "<<", "←", "*", "+");
run_inner(s, n_args, shape, hsr, bus, mul, xor, "<<", "←", "*", "^");
run_inner(s, n_args, shape, hsr, bus, mul, or, "<<", "←", "*", "|");
run_inner(s, n_args, shape, hsr, bus, mul, sub, "<<", "←", "*", "-");
run_inner(s, n_args, shape, hsr, bus, mul, bus, "<<", "←", "*", "←");
run_inner(s, n_args, shape, hsr, bus, mul, mul, "<<", "←", "*", "*");
run_inner(s, n_args, shape, hsr, bus, mul, rsh, "<<", "←", "*", ">>");
run_inner(s, n_args, shape, hsr, bus, mul, hsr, "<<", "←", "*", "<<");
run_inner(s, n_args, shape, hsr, bus, rsh, and, "<<", "←", ">>", "&");
run_inner(s, n_args, shape, hsr, bus, rsh, add, "<<", "←", ">>", "+");
run_inner(s, n_args, shape, hsr, bus, rsh, xor, "<<", "←", ">>", "^");
run_inner(s, n_args, shape, hsr, bus, rsh, or, "<<", "←", ">>", "|");
run_inner(s, n_args, shape, hsr, bus, rsh, sub, "<<", "←", ">>", "-");
run_inner(s, n_args, shape, hsr, bus, rsh, bus, "<<", "←", ">>", "←");
run_inner(s, n_args, shape, hsr, bus, rsh, mul, "<<", "←", ">>", "*");
run_inner(s, n_args, shape, hsr, bus, rsh, rsh, "<<", "←", ">>", ">>");
run_inner(s, n_args, shape, hsr, bus, rsh, hsr, "<<", "←", ">>", "<<");
run_inner(s, n_args, shape, hsr, bus, hsr, and, "<<", "←", "<<", "&");
run_inner(s, n_args, shape, hsr, bus, hsr, add, "<<", "←", "<<", "+");
run_inner(s, n_args, shape, hsr, bus, hsr, xor, "<<", "←", "<<", "^");
run_inner(s, n_args, shape, hsr, bus, hsr, or, "<<", "←", "<<", "|");
run_inner(s, n_args, shape, hsr, bus, hsr, sub, "<<", "←", "<<", "-");
run_inner(s, n_args, shape, hsr, bus, hsr, bus, "<<", "←", "<<", "←");
run_inner(s, n_args, shape, hsr, bus, hsr, mul, "<<", "←", "<<", "*");
run_inner(s, n_args, shape, hsr, bus, hsr, rsh, "<<", "←", "<<", ">>");
run_inner(s, n_args, shape, hsr, bus, hsr, hsr, "<<", "←", "<<", "<<");
run_inner(s, n_args, shape, hsr, mul, and, and, "<<", "*", "&", "&");
run_inner(s, n_args, shape, hsr, mul, and, add, "<<", "*", "&", "+");
run_inner(s, n_args, shape, hsr, mul, and, xor, "<<", "*", "&", "^");
run_inner(s, n_args, shape, hsr, mul, and, or, "<<", "*", "&", "|");
run_inner(s, n_args, shape, hsr, mul, and, sub, "<<", "*", "&", "-");
run_inner(s, n_args, shape, hsr, mul, and, bus, "<<", "*", "&", "←");
run_inner(s, n_args, shape, hsr, mul, and, mul, "<<", "*", "&", "*");
run_inner(s, n_args, shape, hsr, mul, and, rsh, "<<", "*", "&", ">>");
run_inner(s, n_args, shape, hsr, mul, and, hsr, "<<", "*", "&", "<<");
run_inner(s, n_args, shape, hsr, mul, add, and, "<<", "*", "+", "&");
run_inner(s, n_args, shape, hsr, mul, add, add, "<<", "*", "+", "+");
run_inner(s, n_args, shape, hsr, mul, add, xor, "<<", "*", "+", "^");
run_inner(s, n_args, shape, hsr, mul, add, or, "<<", "*", "+", "|");
run_inner(s, n_args, shape, hsr, mul, add, sub, "<<", "*", "+", "-");
run_inner(s, n_args, shape, hsr, mul, add, bus, "<<", "*", "+", "←");
run_inner(s, n_args, shape, hsr, mul, add, mul, "<<", "*", "+", "*");
run_inner(s, n_args, shape, hsr, mul, add, rsh, "<<", "*", "+", ">>");
run_inner(s, n_args, shape, hsr, mul, add, hsr, "<<", "*", "+", "<<");
run_inner(s, n_args, shape, hsr, mul, xor, and, "<<", "*", "^", "&");
run_inner(s, n_args, shape, hsr, mul, xor, add, "<<", "*", "^", "+");
run_inner(s, n_args, shape, hsr, mul, xor, xor, "<<", "*", "^", "^");
run_inner(s, n_args, shape, hsr, mul, xor, or, "<<", "*", "^", "|");
run_inner(s, n_args, shape, hsr, mul, xor, sub, "<<", "*", "^", "-");
run_inner(s, n_args, shape, hsr, mul, xor, bus, "<<", "*", "^", "←");
run_inner(s, n_args, shape, hsr, mul, xor, mul, "<<", "*", "^", "*");
run_inner(s, n_args, shape, hsr, mul, xor, rsh, "<<", "*", "^", ">>");
run_inner(s, n_args, shape, hsr, mul, xor, hsr, "<<", "*", "^", "<<");
run_inner(s, n_args, shape, hsr, mul, or, and, "<<", "*", "|", "&");
run_inner(s, n_args, shape, hsr, mul, or, add, "<<", "*", "|", "+");
run_inner(s, n_args, shape, hsr, mul, or, xor, "<<", "*", "|", "^");
run_inner(s, n_args, shape, hsr, mul, or, or, "<<", "*", "|", "|");
run_inner(s, n_args, shape, hsr, mul, or, sub, "<<", "*", "|", "-");
run_inner(s, n_args, shape, hsr, mul, or, bus, "<<", "*", "|", "←");
run_inner(s, n_args, shape, hsr, mul, or, mul, "<<", "*", "|", "*");
run_inner(s, n_args, shape, hsr, mul, or, rsh, "<<", "*", "|", ">>");
run_inner(s, n_args, shape, hsr, mul, or, hsr, "<<", "*", "|", "<<");
run_inner(s, n_args, shape, hsr, mul, sub, and, "<<", "*", "-", "&");
run_inner(s, n_args, shape, hsr, mul, sub, add, "<<", "*", "-", "+");
run_inner(s, n_args, shape, hsr, mul, sub, xor, "<<", "*", "-", "^");
run_inner(s, n_args, shape, hsr, mul, sub, or, "<<", "*", "-", "|");
run_inner(s, n_args, shape, hsr, mul, sub, sub, "<<", "*", "-", "-");
run_inner(s, n_args, shape, hsr, mul, sub, bus, "<<", "*", "-", "←");
run_inner(s, n_args, shape, hsr, mul, sub, mul, "<<", "*", "-", "*");
run_inner(s, n_args, shape, hsr, mul, sub, rsh, "<<", "*", "-", ">>");
run_inner(s, n_args, shape, hsr, mul, sub, hsr, "<<", "*", "-", "<<");
run_inner(s, n_args, shape, hsr, mul, bus, and, "<<", "*", "←", "&");
run_inner(s, n_args, shape, hsr, mul, bus, add, "<<", "*", "←", "+");
run_inner(s, n_args, shape, hsr, mul, bus, xor, "<<", "*", "←", "^");
run_inner(s, n_args, shape, hsr, mul, bus, or, "<<", "*", "←", "|");
run_inner(s, n_args, shape, hsr, mul, bus, sub, "<<", "*", "←", "-");
run_inner(s, n_args, shape, hsr, mul, bus, bus, "<<", "*", "←", "←");
run_inner(s, n_args, shape, hsr, mul, bus, mul, "<<", "*", "←", "*");
run_inner(s, n_args, shape, hsr, mul, bus, rsh, "<<", "*", "←", ">>");
run_inner(s, n_args, shape, hsr, mul, bus, hsr, "<<", "*", "←", "<<");
run_inner(s, n_args, shape, hsr, mul, mul, and, "<<", "*", "*", "&");
run_inner(s, n_args, shape, hsr, mul, mul, add, "<<", "*", "*", "+");
run_inner(s, n_args, shape, hsr, mul, mul, xor, "<<", "*", "*", "^");
run_inner(s, n_args, shape, hsr, mul, mul, or, "<<", "*", "*", "|");
run_inner(s, n_args, shape, hsr, mul, mul, sub, "<<", "*", "*", "-");
run_inner(s, n_args, shape, hsr, mul, mul, bus, "<<", "*", "*", "←");
run_inner(s, n_args, shape, hsr, mul, mul, mul, "<<", "*", "*", "*");
run_inner(s, n_args, shape, hsr, mul, mul, rsh, "<<", "*", "*", ">>");
run_inner(s, n_args, shape, hsr, mul, mul, hsr, "<<", "*", "*", "<<");
run_inner(s, n_args, shape, hsr, mul, rsh, and, "<<", "*", ">>", "&");
run_inner(s, n_args, shape, hsr, mul, rsh, add, "<<", "*", ">>", "+");
run_inner(s, n_args, shape, hsr, mul, rsh, xor, "<<", "*", ">>", "^");
run_inner(s, n_args, shape, hsr, mul, rsh, or, "<<", "*", ">>", "|");
run_inner(s, n_args, shape, hsr, mul, rsh, sub, "<<", "*", ">>", "-");
run_inner(s, n_args, shape, hsr, mul, rsh, bus, "<<", "*", ">>", "←");
run_inner(s, n_args, shape, hsr, mul, rsh, mul, "<<", "*", ">>", "*");
run_inner(s, n_args, shape, hsr, mul, rsh, rsh, "<<", "*", ">>", ">>");
run_inner(s, n_args, shape, hsr, mul, rsh, hsr, "<<", "*", ">>", "<<");
run_inner(s, n_args, shape, hsr, mul, hsr, and, "<<", "*", "<<", "&");
run_inner(s, n_args, shape, hsr, mul, hsr, add, "<<", "*", "<<", "+");
run_inner(s, n_args, shape, hsr, mul, hsr, xor, "<<", "*", "<<", "^");
run_inner(s, n_args, shape, hsr, mul, hsr, or, "<<", "*", "<<", "|");
run_inner(s, n_args, shape, hsr, mul, hsr, sub, "<<", "*", "<<", "-");
run_inner(s, n_args, shape, hsr, mul, hsr, bus, "<<", "*", "<<", "←");
run_inner(s, n_args, shape, hsr, mul, hsr, mul, "<<", "*", "<<", "*");
run_inner(s, n_args, shape, hsr, mul, hsr, rsh, "<<", "*", "<<", ">>");
run_inner(s, n_args, shape, hsr, mul, hsr, hsr, "<<", "*", "<<", "<<");
run_inner(s, n_args, shape, hsr, rsh, and, and, "<<", ">>", "&", "&");
run_inner(s, n_args, shape, hsr, rsh, and, add, "<<", ">>", "&", "+");
run_inner(s, n_args, shape, hsr, rsh, and, xor, "<<", ">>", "&", "^");
run_inner(s, n_args, shape, hsr, rsh, and, or, "<<", ">>", "&", "|");
run_inner(s, n_args, shape, hsr, rsh, and, sub, "<<", ">>", "&", "-");
run_inner(s, n_args, shape, hsr, rsh, and, bus, "<<", ">>", "&", "←");
run_inner(s, n_args, shape, hsr, rsh, and, mul, "<<", ">>", "&", "*");
run_inner(s, n_args, shape, hsr, rsh, and, rsh, "<<", ">>", "&", ">>");
run_inner(s, n_args, shape, hsr, rsh, and, hsr, "<<", ">>", "&", "<<");
run_inner(s, n_args, shape, hsr, rsh, add, and, "<<", ">>", "+", "&");
run_inner(s, n_args, shape, hsr, rsh, add, add, "<<", ">>", "+", "+");
run_inner(s, n_args, shape, hsr, rsh, add, xor, "<<", ">>", "+", "^");
run_inner(s, n_args, shape, hsr, rsh, add, or, "<<", ">>", "+", "|");
run_inner(s, n_args, shape, hsr, rsh, add, sub, "<<", ">>", "+", "-");
run_inner(s, n_args, shape, hsr, rsh, add, bus, "<<", ">>", "+", "←");
run_inner(s, n_args, shape, hsr, rsh, add, mul, "<<", ">>", "+", "*");
run_inner(s, n_args, shape, hsr, rsh, add, rsh, "<<", ">>", "+", ">>");
run_inner(s, n_args, shape, hsr, rsh, add, hsr, "<<", ">>", "+", "<<");
run_inner(s, n_args, shape, hsr, rsh, xor, and, "<<", ">>", "^", "&");
run_inner(s, n_args, shape, hsr, rsh, xor, add, "<<", ">>", "^", "+");
run_inner(s, n_args, shape, hsr, rsh, xor, xor, "<<", ">>", "^", "^");
run_inner(s, n_args, shape, hsr, rsh, xor, or, "<<", ">>", "^", "|");
run_inner(s, n_args, shape, hsr, rsh, xor, sub, "<<", ">>", "^", "-");
run_inner(s, n_args, shape, hsr, rsh, xor, bus, "<<", ">>", "^", "←");
run_inner(s, n_args, shape, hsr, rsh, xor, mul, "<<", ">>", "^", "*");
run_inner(s, n_args, shape, hsr, rsh, xor, rsh, "<<", ">>", "^", ">>");
run_inner(s, n_args, shape, hsr, rsh, xor, hsr, "<<", ">>", "^", "<<");
run_inner(s, n_args, shape, hsr, rsh, or, and, "<<", ">>", "|", "&");
run_inner(s, n_args, shape, hsr, rsh, or, add, "<<", ">>", "|", "+");
run_inner(s, n_args, shape, hsr, rsh, or, xor, "<<", ">>", "|", "^");
run_inner(s, n_args, shape, hsr, rsh, or, or, "<<", ">>", "|", "|");
run_inner(s, n_args, shape, hsr, rsh, or, sub, "<<", ">>", "|", "-");
run_inner(s, n_args, shape, hsr, rsh, or, bus, "<<", ">>", "|", "←");
run_inner(s, n_args, shape, hsr, rsh, or, mul, "<<", ">>", "|", "*");
run_inner(s, n_args, shape, hsr, rsh, or, rsh, "<<", ">>", "|", ">>");
run_inner(s, n_args, shape, hsr, rsh, or, hsr, "<<", ">>", "|", "<<");
run_inner(s, n_args, shape, hsr, rsh, sub, and, "<<", ">>", "-", "&");
run_inner(s, n_args, shape, hsr, rsh, sub, add, "<<", ">>", "-", "+");
run_inner(s, n_args, shape, hsr, rsh, sub, xor, "<<", ">>", "-", "^");
run_inner(s, n_args, shape, hsr, rsh, sub, or, "<<", ">>", "-", "|");
run_inner(s, n_args, shape, hsr, rsh, sub, sub, "<<", ">>", "-", "-");
run_inner(s, n_args, shape, hsr, rsh, sub, bus, "<<", ">>", "-", "←");
run_inner(s, n_args, shape, hsr, rsh, sub, mul, "<<", ">>", "-", "*");
run_inner(s, n_args, shape, hsr, rsh, sub, rsh, "<<", ">>", "-", ">>");
run_inner(s, n_args, shape, hsr, rsh, sub, hsr, "<<", ">>", "-", "<<");
run_inner(s, n_args, shape, hsr, rsh, bus, and, "<<", ">>", "←", "&");
run_inner(s, n_args, shape, hsr, rsh, bus, add, "<<", ">>", "←", "+");
run_inner(s, n_args, shape, hsr, rsh, bus, xor, "<<", ">>", "←", "^");
run_inner(s, n_args, shape, hsr, rsh, bus, or, "<<", ">>", "←", "|");
run_inner(s, n_args, shape, hsr, rsh, bus, sub, "<<", ">>", "←", "-");
run_inner(s, n_args, shape, hsr, rsh, bus, bus, "<<", ">>", "←", "←");
run_inner(s, n_args, shape, hsr, rsh, bus, mul, "<<", ">>", "←", "*");
run_inner(s, n_args, shape, hsr, rsh, bus, rsh, "<<", ">>", "←", ">>");
run_inner(s, n_args, shape, hsr, rsh, bus, hsr, "<<", ">>", "←", "<<");
run_inner(s, n_args, shape, hsr, rsh, mul, and, "<<", ">>", "*", "&");
run_inner(s, n_args, shape, hsr, rsh, mul, add, "<<", ">>", "*", "+");
run_inner(s, n_args, shape, hsr, rsh, mul, xor, "<<", ">>", "*", "^");
run_inner(s, n_args, shape, hsr, rsh, mul, or, "<<", ">>", "*", "|");
run_inner(s, n_args, shape, hsr, rsh, mul, sub, "<<", ">>", "*", "-");
run_inner(s, n_args, shape, hsr, rsh, mul, bus, "<<", ">>", "*", "←");
run_inner(s, n_args, shape, hsr, rsh, mul, mul, "<<", ">>", "*", "*");
run_inner(s, n_args, shape, hsr, rsh, mul, rsh, "<<", ">>", "*", ">>");
run_inner(s, n_args, shape, hsr, rsh, mul, hsr, "<<", ">>", "*", "<<");
run_inner(s, n_args, shape, hsr, rsh, rsh, and, "<<", ">>", ">>", "&");
run_inner(s, n_args, shape, hsr, rsh, rsh, add, "<<", ">>", ">>", "+");
run_inner(s, n_args, shape, hsr, rsh, rsh, xor, "<<", ">>", ">>", "^");
run_inner(s, n_args, shape, hsr, rsh, rsh, or, "<<", ">>", ">>", "|");
run_inner(s, n_args, shape, hsr, rsh, rsh, sub, "<<", ">>", ">>", "-");
run_inner(s, n_args, shape, hsr, rsh, rsh, bus, "<<", ">>", ">>", "←");
run_inner(s, n_args, shape, hsr, rsh, rsh, mul, "<<", ">>", ">>", "*");
run_inner(s, n_args, shape, hsr, rsh, rsh, rsh, "<<", ">>", ">>", ">>");
run_inner(s, n_args, shape, hsr, rsh, rsh, hsr, "<<", ">>", ">>", "<<");
run_inner(s, n_args, shape, hsr, rsh, hsr, and, "<<", ">>", "<<", "&");
run_inner(s, n_args, shape, hsr, rsh, hsr, add, "<<", ">>", "<<", "+");
run_inner(s, n_args, shape, hsr, rsh, hsr, xor, "<<", ">>", "<<", "^");
run_inner(s, n_args, shape, hsr, rsh, hsr, or, "<<", ">>", "<<", "|");
run_inner(s, n_args, shape, hsr, rsh, hsr, sub, "<<", ">>", "<<", "-");
run_inner(s, n_args, shape, hsr, rsh, hsr, bus, "<<", ">>", "<<", "←");
run_inner(s, n_args, shape, hsr, rsh, hsr, mul, "<<", ">>", "<<", "*");
run_inner(s, n_args, shape, hsr, rsh, hsr, rsh, "<<", ">>", "<<", ">>");
run_inner(s, n_args, shape, hsr, rsh, hsr, hsr, "<<", ">>", "<<", "<<");
run_inner(s, n_args, shape, hsr, hsr, and, and, "<<", "<<", "&", "&");
run_inner(s, n_args, shape, hsr, hsr, and, add, "<<", "<<", "&", "+");
run_inner(s, n_args, shape, hsr, hsr, and, xor, "<<", "<<", "&", "^");
run_inner(s, n_args, shape, hsr, hsr, and, or, "<<", "<<", "&", "|");
run_inner(s, n_args, shape, hsr, hsr, and, sub, "<<", "<<", "&", "-");
run_inner(s, n_args, shape, hsr, hsr, and, bus, "<<", "<<", "&", "←");
run_inner(s, n_args, shape, hsr, hsr, and, mul, "<<", "<<", "&", "*");
run_inner(s, n_args, shape, hsr, hsr, and, rsh, "<<", "<<", "&", ">>");
run_inner(s, n_args, shape, hsr, hsr, and, hsr, "<<", "<<", "&", "<<");
run_inner(s, n_args, shape, hsr, hsr, add, and, "<<", "<<", "+", "&");
run_inner(s, n_args, shape, hsr, hsr, add, add, "<<", "<<", "+", "+");
run_inner(s, n_args, shape, hsr, hsr, add, xor, "<<", "<<", "+", "^");
run_inner(s, n_args, shape, hsr, hsr, add, or, "<<", "<<", "+", "|");
run_inner(s, n_args, shape, hsr, hsr, add, sub, "<<", "<<", "+", "-");
run_inner(s, n_args, shape, hsr, hsr, add, bus, "<<", "<<", "+", "←");
run_inner(s, n_args, shape, hsr, hsr, add, mul, "<<", "<<", "+", "*");
run_inner(s, n_args, shape, hsr, hsr, add, rsh, "<<", "<<", "+", ">>");
run_inner(s, n_args, shape, hsr, hsr, add, hsr, "<<", "<<", "+", "<<");
run_inner(s, n_args, shape, hsr, hsr, xor, and, "<<", "<<", "^", "&");
run_inner(s, n_args, shape, hsr, hsr, xor, add, "<<", "<<", "^", "+");
run_inner(s, n_args, shape, hsr, hsr, xor, xor, "<<", "<<", "^", "^");
run_inner(s, n_args, shape, hsr, hsr, xor, or, "<<", "<<", "^", "|");
run_inner(s, n_args, shape, hsr, hsr, xor, sub, "<<", "<<", "^", "-");
run_inner(s, n_args, shape, hsr, hsr, xor, bus, "<<", "<<", "^", "←");
run_inner(s, n_args, shape, hsr, hsr, xor, mul, "<<", "<<", "^", "*");
run_inner(s, n_args, shape, hsr, hsr, xor, rsh, "<<", "<<", "^", ">>");
run_inner(s, n_args, shape, hsr, hsr, xor, hsr, "<<", "<<", "^", "<<");
run_inner(s, n_args, shape, hsr, hsr, or, and, "<<", "<<", "|", "&");
run_inner(s, n_args, shape, hsr, hsr, or, add, "<<", "<<", "|", "+");
run_inner(s, n_args, shape, hsr, hsr, or, xor, "<<", "<<", "|", "^");
run_inner(s, n_args, shape, hsr, hsr, or, or, "<<", "<<", "|", "|");
run_inner(s, n_args, shape, hsr, hsr, or, sub, "<<", "<<", "|", "-");
run_inner(s, n_args, shape, hsr, hsr, or, bus, "<<", "<<", "|", "←");
run_inner(s, n_args, shape, hsr, hsr, or, mul, "<<", "<<", "|", "*");
run_inner(s, n_args, shape, hsr, hsr, or, rsh, "<<", "<<", "|", ">>");
run_inner(s, n_args, shape, hsr, hsr, or, hsr, "<<", "<<", "|", "<<");
run_inner(s, n_args, shape, hsr, hsr, sub, and, "<<", "<<", "-", "&");
run_inner(s, n_args, shape, hsr, hsr, sub, add, "<<", "<<", "-", "+");
run_inner(s, n_args, shape, hsr, hsr, sub, xor, "<<", "<<", "-", "^");
run_inner(s, n_args, shape, hsr, hsr, sub, or, "<<", "<<", "-", "|");
run_inner(s, n_args, shape, hsr, hsr, sub, sub, "<<", "<<", "-", "-");
run_inner(s, n_args, shape, hsr, hsr, sub, bus, "<<", "<<", "-", "←");
run_inner(s, n_args, shape, hsr, hsr, sub, mul, "<<", "<<", "-", "*");
run_inner(s, n_args, shape, hsr, hsr, sub, rsh, "<<", "<<", "-", ">>");
run_inner(s, n_args, shape, hsr, hsr, sub, hsr, "<<", "<<", "-", "<<");
run_inner(s, n_args, shape, hsr, hsr, bus, and, "<<", "<<", "←", "&");
run_inner(s, n_args, shape, hsr, hsr, bus, add, "<<", "<<", "←", "+");
run_inner(s, n_args, shape, hsr, hsr, bus, xor, "<<", "<<", "←", "^");
run_inner(s, n_args, shape, hsr, hsr, bus, or, "<<", "<<", "←", "|");
run_inner(s, n_args, shape, hsr, hsr, bus, sub, "<<", "<<", "←", "-");
run_inner(s, n_args, shape, hsr, hsr, bus, bus, "<<", "<<", "←", "←");
run_inner(s, n_args, shape, hsr, hsr, bus, mul, "<<", "<<", "←", "*");
run_inner(s, n_args, shape, hsr, hsr, bus, rsh, "<<", "<<", "←", ">>");
run_inner(s, n_args, shape, hsr, hsr, bus, hsr, "<<", "<<", "←", "<<");
run_inner(s, n_args, shape, hsr, hsr, mul, and, "<<", "<<", "*", "&");
run_inner(s, n_args, shape, hsr, hsr, mul, add, "<<", "<<", "*", "+");
run_inner(s, n_args, shape, hsr, hsr, mul, xor, "<<", "<<", "*", "^");
run_inner(s, n_args, shape, hsr, hsr, mul, or, "<<", "<<", "*", "|");
run_inner(s, n_args, shape, hsr, hsr, mul, sub, "<<", "<<", "*", "-");
run_inner(s, n_args, shape, hsr, hsr, mul, bus, "<<", "<<", "*", "←");
run_inner(s, n_args, shape, hsr, hsr, mul, mul, "<<", "<<", "*", "*");
run_inner(s, n_args, shape, hsr, hsr, mul, rsh, "<<", "<<", "*", ">>");
run_inner(s, n_args, shape, hsr, hsr, mul, hsr, "<<", "<<", "*", "<<");
run_inner(s, n_args, shape, hsr, hsr, rsh, and, "<<", "<<", ">>", "&");
run_inner(s, n_args, shape, hsr, hsr, rsh, add, "<<", "<<", ">>", "+");
run_inner(s, n_args, shape, hsr, hsr, rsh, xor, "<<", "<<", ">>", "^");
run_inner(s, n_args, shape, hsr, hsr, rsh, or, "<<", "<<", ">>", "|");
run_inner(s, n_args, shape, hsr, hsr, rsh, sub, "<<", "<<", ">>", "-");
run_inner(s, n_args, shape, hsr, hsr, rsh, bus, "<<", "<<", ">>", "←");
run_inner(s, n_args, shape, hsr, hsr, rsh, mul, "<<", "<<", ">>", "*");
run_inner(s, n_args, shape, hsr, hsr, rsh, rsh, "<<", "<<", ">>", ">>");
run_inner(s, n_args, shape, hsr, hsr, rsh, hsr, "<<", "<<", ">>", "<<");
run_inner(s, n_args, shape, hsr, hsr, hsr, and, "<<", "<<", "<<", "&");
run_inner(s, n_args, shape, hsr, hsr, hsr, add, "<<", "<<", "<<", "+");
run_inner(s, n_args, shape, hsr, hsr, hsr, xor, "<<", "<<", "<<", "^");
run_inner(s, n_args, shape, hsr, hsr, hsr, or, "<<", "<<", "<<", "|");
run_inner(s, n_args, shape, hsr, hsr, hsr, sub, "<<", "<<", "<<", "-");
run_inner(s, n_args, shape, hsr, hsr, hsr, bus, "<<", "<<", "<<", "←");
run_inner(s, n_args, shape, hsr, hsr, hsr, mul, "<<", "<<", "<<", "*");
run_inner(s, n_args, shape, hsr, hsr, hsr, rsh, "<<", "<<", "<<", ">>");
run_inner(s, n_args, shape, hsr, hsr, hsr, hsr, "<<", "<<", "<<", "<<");
}));
for thread in threads {
thread.join().unwrap();
}
}
#[inline(always)]
fn run_inner<Shape>(s: &'static str, n_args: usize, shape: Shape,
f: Op, g: Op, h: Op, i: Op,
f_name: &'static str,
g_name: &'static str,
h_name: &'static str,
i_name: &'static str)
where Shape: Fn(Op, Op, Op, Op, u8, u8, u8, u8, u8) -> u8,
{
// println!("{}",
// s.replace("F", f_name)
// .replace("G", g_name)
// .replace("H", h_name)
// .replace("I", i_name)
// .replace("M", "?")
// .replace("N", "?")
// .replace("O", "?")
// .replace("P", "?")
// );
for m in 0..if n_args >= 1 { 255 } else { 1 } {
for n in 0..if n_args >= 2 { 255 } else { 1 } {
for o in 0..if n_args >= 3 { 255 } else { 1 } {
for p in 0..if n_args >= 4 { 255 } else { 1 } {
if is_ok(|tok| shape(f, g, h, i, m, n, o, p, tok)) {
println!("{}",
s.replace("F", f_name)
.replace("G", g_name)
.replace("H", h_name)
.replace("I", i_name)
.replace("M", &m.to_string())
.replace("N", &n.to_string())
.replace("O", &o.to_string())
.replace("P", &p.to_string())
);
}
}
}
}
}
}
fn main() {
{
fn shape(f: Op, g: Op, h: Op, i: Op, m: u8, _: u8, _: u8, _: u8, tok: u8) -> u8 {
f(tok, g(tok, h(tok, i(m, tok))))
}
run("(tok) F (tok G (tok H (M I tok)))", 1, shape);
}
{
fn shape(f: Op, g: Op, h: Op, i: Op, m: u8, n: u8, _: u8, _: u8, tok: u8) -> u8 {
f(tok, g(tok, h(m, i(n, tok))))
}
run("tok F (tok G (M H (N I tok)))", 2, shape);
}
{
fn shape(f: Op, g: Op, h: Op, i: Op, m: u8, n: u8, _: u8, _: u8, tok: u8) -> u8 {
f(tok, g(m, h(tok, i(n, tok))))
}
run("tok F (M G (tok H (N I tok)))", 2, shape);
}
{
fn shape(f: Op, g: Op, h: Op, i: Op, m: u8, n: u8, _: u8, _: u8, tok: u8) -> u8 {
f(m, g(tok, h(tok, i(n, tok))))
}
run("M F (tok G (tok H (N I tok)))", 2, shape);
}
{
fn shape(f: Op, g: Op, h: Op, i: Op, m: u8, n: u8, _: u8, _: u8, tok: u8) -> u8 {
f(g(m, tok), h(tok, i(n, tok)))
}
run("(M G tok) F (tok H (N I tok))", 2, shape);
}
{
fn shape(f: Op, g: Op, h: Op, i: Op, m: u8, n: u8, o: u8, _: u8, tok: u8) -> u8 {
f(tok, g(m, h(n, i(o, tok))))
}
run("tok F (M G (N H (O I tok)))", 3, shape);
}
{
fn shape(f: Op, g: Op, h: Op, i: Op, m: u8, n: u8, o: u8, _: u8, tok: u8) -> u8 {
f(m, g(tok, h(n, i(o, tok))))
}
run("M F (tok G (N H (O I tok)))", 3, shape);
}
{
fn shape(f: Op, g: Op, h: Op, i: Op, m: u8, n: u8, o: u8, _: u8, tok: u8) -> u8 {
f(m, g(n, h(tok, i(o, tok))))
}
run("M F (N G (tok H (O I tok)))", 3, shape);
}
{
fn shape(f: Op, g: Op, h: Op, i: Op, m: u8, n: u8, o: u8, _: u8, tok: u8) -> u8 {
f(g(m, tok), h(n, i(o, tok)))
}
run("(M G tok) F (N H (O I tok))", 3, shape);
}
{
fn shape(f: Op, g: Op, h: Op, i: Op, m: u8, n: u8, o: u8, p: u8, tok: u8) -> u8 {
f(m, g(n, h(o, i(p, tok))))
}
run("M F (N G (O H (P I tok)))", 4, shape);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment