UNTESTED: wrote znum(), anum() and snum()