Just about done with do/undo block functions