updated off() and tests