removed restriction on def grammar