def __new__(self, string, tags=["<STR_LIT>"], language=None):
<EOL>if isinstance(string, unicode) and hasattr(string, "<STR_LIT>"):<EOL><INDENT>tags, language = string.tags, string.language<EOL><DEDENT>if isinstance(string, list):<EOL><INDENT>string = [[[x.replace("<STR_LIT:/>", "<STR_LIT>") for x in token] for token in s] for s in string]<EOL>string = "<STR_LIT:\n>".join("<STR_LIT:U+0020>".join("<STR_LIT:/>".join(token) for token in s) for s in string)<EOL><DEDENT>s = unicode.__new__(self, string)<EOL>s.tags = list(tags)<EOL>s.language = language<EOL>return s<EOL>
Unicode string with tags and language attributes.
            For example: TaggedString("cat/NN/NP", tags=["word", "pos", "chunk"]).