Testing Confluence syntax that needs escaping:

* just a star
# just a hash
{somethingelse}

[*] but we should probably leave this sort of construct alone

