B £é|@NÑÅã@s<dZddlmZddlmZdddœZGdd„dejƒZd S) z¢Fixer for unicode. * Changes unicode to str and unichr to chr. * If "...\u..." is not unicode literal change it into "...\\u...". * Change u"..." into "...". é)Útoken)Ú fixer_baseÚchrÚstr)ZunichrZunicodecs,eZdZdZdZ‡fdd„Zdd„Z‡ZS)Ú FixUnicodeTzSTRING | 'unicode' | 'unichr'cs"tt|ƒ ||¡d|jk|_dS)NÚunicode_literals)ÚsuperrÚ start_treeZfuture_featuresr)ÚselfZtreeÚfilename)Ú __class__©ú!sz(FixUnicode.transform..ZuUé) ÚtyperÚNAMEZcloneÚ_mappingÚvalueÚSTRINGrÚjoinÚsplit)r ZnodeZresultsÚnewÚvalr r rÚ transforms"      zFixUnicode.transform)Ú__name__Ú __module__Ú __qualname__Z BM_compatibleZPATTERNr rÚ __classcell__r r )r rrs rN)Ú__doc__Zpgen2rÚrrZBaseFixrr r r rÚ s