!(U( d dl mZ d dlmZmZ ddlmZmZ ddlm Z m Z mZmZm Z mZmZmZmZmZmZmZmZmZmZmZ G d d Z G d d e Z G d de Z G d d e Z G d de Z G d de Z G d de Z G d de Z G d de Z! ed dee" dee" de#fd Z$ ed d&d!e"d"e%d#e#de%fd$ Z&d%S )' ) lru_cache)ListOptional )COMMON_SAFE_ASCII_CHARACTERSUNICODE_SECONDARY_RANGE_KEYWORD)is_accentuatedis_asciiis_case_variableis_cjkis_emoticon is_hangulis_hiraganais_katakanais_latinis_punctuationis_separator is_symbolis_thaiis_unprintable remove_accent unicode_rangec V e Zd ZdZdedefdZdeddfdZd dZe de fd ZdS ) MessDetectorPluginzy Base abstract class used for mess detection plugins. All detectors MUST extend and implement given methods. characterreturnc t )z@ Determine if given character should be fed in. NotImplementedErrorselfr s g/builddir/build/BUILD/cloudlinux-venv-1.0.10/venv/lib/python3.11/site-packages/charset_normalizer/md.pyeligiblezMessDetectorPlugin.eligible "! Nc t )z The main routine to be executed upon character. Insert the logic in witch the text would be considered chaotic. r r s r" feedzMessDetectorPlugin.feed% s "!r% c t )zB Permit to reset the plugin to the initial state. r r! s r" resetzMessDetectorPlugin.reset, r$ r% c t )z Compute the chaos ratio based on what your feed() has seen. Must NOT be lower than 0.; No restriction gt 0. r r) s r" ratiozMessDetectorPlugin.ratio2 s "!r% r N)__name__ __module____qualname____doc__strboolr# r' r* propertyfloatr, r% r" r r s "# "$ " " " ""c "d " " " "" " " " "u " " " X" " "r% r c Z e Zd Zd dZdedefdZdeddfdZd dZe de fd ZdS ) TooManySymbolOrPunctuationPluginr Nc L d| _ d| _ d| _ d | _ d| _ d S )Nr F)_punctuation_count _symbol_count_character_count_last_printable_char_frenzy_symbol_in_wordr) s r" __init__z)TooManySymbolOrPunctuationPlugin.__init__<