less poluting method of variable scoping