#!/usr/bin/env bash { echo 'h=0' echo 'd=0' cat 2.in | sed 's/forward/h+=/; s/down/d+=/; s/up/d-=/; s/^/: $((/; s/$/))/' echo 'echo $((h * d))' } | bash { echo 'h=0' echo 'a=0' echo 'd=0' cat 2.in | sed 's/forward \(.*\)/: $((h+=\1)) $((d+=a*\1))/; s/down \(.*\)/: $((a+=\1))/; s/up \(.*\)/: $((a-=\1))/' echo 'echo $((h * d))' } | bash