你身处一个大型仓库中,有 $2^{40}$ 个存储位置排列成一个圆环。
一辆装有起重机的卡车沿着这些存储位置移动,根据程序拾取或放下板条箱。(卡车上装有无限供应的板条箱,因此它总是可以放下更多的板条箱。)
程序由以下指令序列组成:
b: 向后移动一个位置f: 向前移动一个位置u: 在当前位置拾取一个板条箱d: 在当前位置放下一个板条箱(: 什么都不做): 如果当前位置的板条箱数量多于一个,则回到指令序列中最近的一个(,并从那里继续执行程序。(这不会移动卡车。)
程序中的 ( 和 ) 指令总是成对出现:一个 ( 后面总会跟着一个匹配的 )。程序中最多包含两对这样的括号,如果包含两对,它们不会嵌套——也就是说,情况只可能是:
- 没有
(或)指令; - 程序中某处有一个
(指令,后面跟着一个)指令; - 一个
(指令,后面跟着一个)指令,再后面跟着另一个(指令,最后跟着另一个)指令。
样例中包含了上述每种情况的示例。
在起重机卡车开始运行程序之前,每个存储位置最初都有一个板条箱。
神秘的是,如果卡车拾取了某个位置的最后一个板条箱,另一辆卡车会立即赶来并在那里放下 256 个板条箱!同样,如果卡车在某个位置放下了一个板条箱,使得该位置的板条箱数量达到 257 个,另一辆卡车会立即驶过并拾取 256 个板条箱,只留下一个。因此,每个位置的板条箱数量始终在 1 到 256 之间。
在程序结束之前,卡车总共会向前或向后移动多少次?
输入格式
第一行包含一个整数 $T$,表示测试用例的数量。
接下来 $T$ 行,每行包含一个长度不超过 2000 个字符的起重机卡车程序。
输出格式
输出 $T$ 行,每行格式为 "Case #$X$: $Y$",其中 $X$ 是测试用例编号,$Y$ 是卡车移动的总次数。
数据范围
$1 \le T \le 20$
$1 \le$ 程序长度 $\le 2000$
保证程序会终止。
样例
样例输入 1
4 ufffdddbbbdd dddd(fdbu)fff dddd(fdddddbu)f(fdddddbu) bf
样例输出 1
Case #1: 6 Case #2: 11 Case #3: 49 Case #4: 2