about to fix a bug with the mod loop
done
I think this works
Simplified the parser