extracted cardinal direction module, all passing