made more flexible syntax classes