including w, CODE UNTESTED