better rule deparsing