wip, testing and fixing do block semantics