class Var: def __init__(self, val, idx): self.idx = idx self.val = val def __str__(self): return chr(self.idx + ord("a")) class ArrayVal: def __init__(self, val, idx): self.idx = idx self.val = val def __str__(self): return f"A[{self.idx + 1}]" Value = Var | ArrayVal N = int(input()) variables = [Var(0, i) for i in range(26)] answer = [] def add(x: Var, y: Value, z: Value): global variables variables[x.idx] = Var(y.val + z.val, x.idx) answer.append(f"add {x} {y} {z}") def mul(x: Var, y: Value, z: Value): global variables variables[x.idx] = Var(y.val * z.val, x.idx) answer.append(f"mul {x} {y} {z}") def div(x: Var, y: Value, z: Value): global variables variables[x.idx] = Var(y.val / z.val, x.idx) answer.append(f"div {x} {y} {z}") commands, A = [], [] for i in range(N): cmd, a = input().split() a = int(a) commands.append(cmd) A.append(ArrayVal(a, i)) for i in range(N): cmd = commands[i] a = A[i] if cmd == "+": if variables[1].val == 0: add(variables[0], variables[1], a) else: mul(variables[-1], variables[1], a) add(variables[0], variables[0], variables[-1]) elif cmd == "*": mul(variables[0], variables[0], a) elif cmd == "/": if variables[1].val == 0: add(variables[1], variables[1], a) else: mul(variables[1], variables[1], a) div(variables[0], variables[0], variables[1]) print(len(answer)) print(*answer, sep="\n")