U f1 @ s d dl Z d dlmZ d dlmZ d dlmZ d dlmZm Z m Z mZmZ ddl mZmZmZmZmZ ddlmZ dd lmZ dd lmZmZmZmZmZ ee e ddd Zee e dddZe ee e dddZ e ee e dddZ!eedeee"e"f dddZ#d-e e e"e e dddZ$ee e e%dddZ&ee e d d!d"Z'e e ed#d$d%Z(eed#d&d'Z)ed(dd.ee%ee ed*d+d,Z*dS )/ N)IncrementalDecoder)Counter) lru_cache)r DictListOptionalTuple )FREQUENCIESKO_NAMESLANGUAGE_SUPPORTED_COUNTTOO_SMALL_SEQUENCEZH_NAMES) is_suspiciously_successive_range)CoherenceMatches)is_accentuatedis_latinis_multi_byte_encodingis_unicode_range_secondary unicode_range) iana_namereturnc s t | rtdtd| j}|dd}i d tddD ]^}|t|g}|r>t |}|dkrhq>t |d kr>|krd|<