given this grammar :

```cpp
const auto grammar_def = x3::lit("start")
                        > x3::lit("{")
                        > (*(char_("a-zA-Z0-9\".{}=_~")))
                        > x3::lit("}") > x3::lit(";");

```

the last **x3::lit("}")** is being consumed by **(\*(char\_("a-zA-Z0-9\".{}=\_~")))** since it contains **"}"**  

is there way to prevent that ? something like giving **x3::lit("}")** higher priority during parse?