new begin/end block syntax
throwing exception if block was externally changed