U468476 神机(easy ver.)

题目背景

出题人:[Zskioaert1106](https://www.luogu.com.cn/user/1072502) 验题人:[Bright12077](https://www.luogu.com.cn/user/533708) ~~小 L 就是个人机~~,但是他数学很好,所以被尊称为“人机妙算”。 计算机是当之无愧的“神机”,可惜它只会速算,所以最多算是“神机速算”。 为了帮助计算机达成“神机妙算”的称号,你需要帮助计算机分析一段程序,~~这样我们就彻底摆脱小 L 这个人机了~~。

题目描述

计算机使用的编译环境共有以下几种指令: 1. `start`,代表一段函数体的开始。 2. `?=in`,代表将某个变量赋值为输入。 3. `out?`,代表输出某个变量。 4. `a=b`,代表将变量 `b` 赋值给变量 `a`。 5. `a->b`,代表在下一次针对变量 `a` 的赋值操作(`a` 位于操作 2、4 或 5 的第一项)之前,`a` 的值始终为不断变化的 `b`。 6. `for?`,代表将后面紧接着的一段函数体执行 `?` 遍,`?` 处只会是已经声明的变量。 7. `end`,代表一段函数体的结束。 计算机的编译环境保证以下要求: - 变量名只会是 `a` 到 `z` 的一位小写字母,至多有 $26$ 个变量。 - `for` 指令的下一条一定跟 `start`。 - `for` 指令的次数值固定,不受循环中改变的影响。 - `start` 与 `end` 的搭配遵循就近原则。 - 若要求输出的变量未定义,将会输出 `None`。 - 每个指令后跟一个 `;`。 - 第一条指令保证为 `start`,末指令不保证为 `end`,但第一行的 `start` 代表主函数,主函数结束后的指令会被忽略。 - 数据中不存在指向环一类的情况。

输入格式

一行字符串,构成一个保证合法的程序。 若一条为 `in` 指令,则下一条为输入的值。 __此题作为 easy ver. 的原因是,循环内保证没有 `in` 指令。__ 显然输入中不含空格。

输出格式

每遇到 `out` 指令就按要求输出,每次输出换行。

说明/提示

### 样例解释 (更好的阅读体验——换行版样例): #### #1 样例解释 ``` start; a = in; 114514; k = in; 1919810; i = a; out o; out i; b = in; 3; a -> b; for b; start; out a; b = k; end; end; out k; ``` 对于第一行输出,变量 `o` 并未被定义,所以输出 `None`; 对于第二行输出,变量 `i` 被赋值为 `a`,因此输出 `a` 的值; 对于第三行输出,`a` 的值始终追随 `b`,此时 `b` 的值为输入的 `3`; 对于第四、五行输出,`b` 的值被赋值为 `k`,`a` 追随 `b`,所以输出 `k` 的值。 对于最后一条的 `outk` 指令,由于主函数在上一条结束,所以将这一指令忽略。 #### #2样例解释 ``` start; a->b; a=in; 114514; outb; end; ``` `b` 的值自始至终没有被定义,所以输出 `None`。 ### 数据范围与约定 总指令数不超过 $2\times10^3$。所有输入的值均为 int 范围内的**非负整数**,每个指令被执行的次数均不会超过 $10^5$。 对于 $20\%$ 的数据,没有循环; 对于 $50\%$ 的数据,只有小于等于一重的循环; 对于 $100\%$ 的数据,不超过十重循环。