peg.js grammar