Changed the whole syntax, more flexible and easier to use