caveat: method calls in do block