HT\* n d dl Z d dlmZ d dlmZ d dlmZ d dlmZm Z m Z mZmZ ddl mZ ddlmZmZmZmZ dd lmZ dd lmZ ddlmZmZmZmZmZ ded e e fdZded e e fdZ e ded e e fd Z! e ded e e fd Z" ee ded ee#e#f fd Z$ d%de e de#d e e fdZ%dede e d e&fdZ'ded e e fdZ(de e d efdZ) ed d&ded"e&d#ee d efd$ Z*dS )' N)IncrementalDecoder)Counter) lru_cache)r DictListOptionalTuple )FREQUENCIES)KO_NAMESLANGUAGE_SUPPORTED_COUNTTOO_SMALL_SEQUENCEZH_NAMES) is_suspiciously_successive_range)CoherenceMatches)is_accentuatedis_latinis_multi_byte_encodingis_unicode_range_secondary unicode_range iana_namereturnc t | rt d t j d | j } |d }i dt dd D ]h}| t |g }|rAt | }|9t | d u r|vrd|<