parser is almost there need to add some tests