added full support for character classes