parser exercise working copy