diff --git a/Project2.fst b/Project2.fst index 3a951fa..a5e2862 100644 --- a/Project2.fst +++ b/Project2.fst @@ -132,7 +132,8 @@ let step te cs = let gs' = update gs actor acc in Next (Exec(((gas-1, pc+1, mem, stack'), (actor, input, code), gs') :: ps)) | (SLOAD, v::stack') -> Next (Exec(((gas-1, pc+1, mem, (let (bal, stor, code) = gs actor in stor v)::stack'), (actor, input, code), gs)::ps)) - | (BALANCE, a::stack') -> magic () + | (BALANCE, a::stack') -> let (bal, _, _) = (gs a) in + Next (Exec(((gas-1, pc+1, mem, bal::stack'), (actor, input, code), gs') :: ps)) | (ADDRESS, stack') -> Next (Exec(((gas-1, pc+1, mem, actor::stack'), (actor, input, code), gs)::ps)) | (INPUT, stack') -> magic () | (GAS, stack') -> Next (Exec(((gas-1, pc+1, mem, gas::stack'), (actor, input, code), gs)::ps))