out(result) {} run fine, if foo() return 0, an exception is throw by assert() but in doesn't work. I don't know what I'm missing. It' my first time using contracts