introduce syntax parsing