o
    Ñf²j‘V ã                   @   s–  U d dl Z d dlZd dlZd dlmZmZmZmZmZ d dl	m
Z
mZmZmZ d dlmZmZ d dlmZ d dlmZmZ d dlmZ d dlmZmZ d d	lmZ d d
lmZ d dlZd dl Z ej! "d e j! #e j! #e j! #e j! $e%¡¡¡¡¡ d dl&m'Z'm(Z) d dl*m+Z+ d dl,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@mAZAmBZBmCZCmDZDmEZEmFZFmGZGmHZHmIZImJZJmKZK e LeM¡ZNdZOdZPdZQd ZRdZSi ZTeUeVd< dZWdZXdZYdZZdZ[dZ\dZ]i Z^eUe_eUf eVd< de`deUfdd„Zade`fdd„Zbdefdd „Zceƒ Zdeƒ Zeed f¡ d!ejgd"efd#d$„ƒZhG d%d&„ d&eƒZide`dejfd'd(„Zkd"ed)elfd*d+„Zmdejfd,d-„Zndelfd.d/„Zod0eldelfd1d2„Zpd3d4„ Zqd5d6„ Zrd7d8„ Zsd9elde`fd:d;„ZtdedB fd<d=„Zud>eldefd?d@„ZvdAe
de jwfdBdC„Zx�ddEeydFeldGe`delfdHdI„Zz�ddEeydFeldGe`delfdJdK„Z{d"ede`dejfdLdM„Z|d"ede`dNeUfdOdP„Z}ed ~eƒ ¡dAe
dQed"efdRdS„ƒZed ~edTƒ¡dAe
dQefdUdV„ƒZ€ed ~edWƒ¡dAe
fdXdY„ƒZ�ed ‚ejƒdZk¡d[edQed"efd\d]„ƒZ„ed ‚ejƒd^k¡d[edQefd_d`„ƒZ…ed ‚ejƒ †da¡¡d[efdbdc„ƒZ‡ed ‚ejƒ †dd¡¡d[efdedf„ƒZˆed ~ej‰ej‰ †dg¡ @ ¡dAe
d"efdhdi„ƒZŠdefdjdk„Z‹ee ‚ejƒdlk¡d[edQefdmdn„ƒZŒee ‚ejƒdok¡d[efdpdq„ƒZ�ee ‚ejƒdrk¡d[efdsdt„ƒZŽee ‚ejƒduk¡d[efdvdw„ƒZ�ee ‚ejƒdxk¡d[efdydz„ƒZ�defd{d|„Z‘ee ‚ejƒd}k¡d[efd~d„ƒZ’ee ‚ejƒ †d€¡¡d[efd�d‚„ƒZ“ee ‚ejƒdƒk¡d[efd„d…„ƒZ”ee ‚ejƒd†k¡d[edQefd‡dˆ„ƒZ•ee ~eij–¡dAe
dQefd‰dŠ„ƒZ—ee ‚ejƒd‹k¡d[edQefdŒd�„ƒZ˜ee ~eij™¡dAe
dQefdŽd�„ƒZšee ‚ejƒd�k¡d[edQefd‘d’„ƒZ›ee ~eijœ¡dAe
dQefd“d”„ƒZ��ddAe
d–e
dB d—ejfd˜d™„Zžd[efdšd›„ZŸee ‚ejƒdœk¡d[edQefd�dž„ƒZ ee ‚ejƒdŸk¡d[edQefd d¡„ƒZ¡ee ~eij¢¡dAe
dQed"efd¢d£„ƒZ£ee ‚ejƒ †d¤¡¡d[efd¥d¦„ƒZ¤ee ‚ejƒd§k¡d[edQefd¨d©„ƒZ¥ee ~eij¦¡dAe
dQed"efdªd«„ƒZ§ee ‚ejƒd¬k¡d[edQefd­d®„ƒZ¨ee ~eij©¡dAe
dQefd¯d°„ƒZªd[efd±d²„Z«ee ‚ejƒd³k¡d[edQefd´dµ„ƒZ¬ee ‚ejƒd¶k¡d[edQefd·d¸„ƒZ­ee ‚ejƒ †d¹¡¡d[edQefdºd»„ƒZ®ee ~eij¯¡dAe
dQed"efd¼d½„ƒZ°ee ‚ejƒ †d¾¡¡d[efd¿dÀ„ƒZ±d[efdÁdÂ„Z²ee ‚ejƒdÃk¡d[edQefdÄdÅ„ƒZ³ee ‚ejƒdÆk¡d[edQefdÇdÈ„ƒZ´ee ‚ejƒ †dÉ¡¡d[edQefdÊdË„ƒZµee ~eij¶¡dAe
dQed"efdÌdÍ„ƒZ·ee ~eij¸¡dAe
dQefdÎdÏ„ƒZ¹ee ‚ejƒ †dÐ¡¡d[efdÑdÒ„ƒZºdÓeUfdÔdÕ„Z»ee ‚ejƒdÖk¡d×edQefdØdÙ„ƒZ¼ee ‚ejƒ †dÚ¡¡d×edQefdÛdÜ„ƒZ½ee ~eij¾¡dAe
dQefdÝdÞ„ƒZ¿ee ~eijÀ¡dAe
dQefdßdà„ƒZÁee ‚ejƒdák¡d×edQefdâdã„ƒZÂd×edäe`fdådæ„ZÃee ‚ejƒ †dç¡¡d×efdèdé„ƒZÄee ‚ejƒ †dê¡¡d×edQefdëdì„ƒZÅee ‚ejƒ †dí¡¡d×efdîdï„ƒZÆee ‚ejƒ †dð¡¡d×efdñdò„ƒZÇee ‚ejƒ †dó¡¡d×efdôdõ„ƒZÈee ‚ejƒ †dö¡¡d×edQefd÷dø„ƒZÉee ~eijÊ¡dAe
dQefdùdú„ƒZËee ‚ejƒ †dû¡¡d×edQefdüdý„ƒZÌee ~eijÍ¡dAe
dQefdþdÿ„ƒZÎee ‚ejƒ †�d ¡¡d×edQef�d�d„ƒZÏee ~eijÐ¡dAe
dQef�d�d„ƒZÑed ‚ejƒ †�d¡¡d×ef�d�d„ƒZÒdaÓedB eV�d< def�d	�d
„ZÔdS (  é    N)ÚBotÚ
DispatcherÚRouterÚFÚtypes)ÚMessageÚCallbackQueryÚInlineKeyboardMarkupÚInlineKeyboardButton)ÚCommandStartÚCommand)Ú
FSMContext)ÚStateÚStatesGroup)ÚMemoryStorage)Ú
ChatActionÚ	ParseMode)ÚTelegramBadRequest©Úselect)Úget_sessionÚis_bot_paid)ÚFactorySettings)Úinit_dbÚget_settingÚset_settingÚget_all_settingsÚ
get_modelsÚget_enabled_modelsÚtoggle_modelÚget_or_create_userÚget_userÚget_all_active_usersÚget_statisticsÚban_userÚ
unban_userÚ
get_adminsÚis_adminÚ	add_adminÚremove_adminÚget_mandatory_channelsÚadd_mandatory_channelÚremove_mandatory_channelÚget_funded_channelsÚadd_funded_channelÚremove_funded_channelÚrecord_funded_subÚget_funded_channel_countÚmark_funded_completeÚadd_custom_buttonÚget_custom_buttonsÚget_custom_buttonÚupdate_custom_buttonÚdelete_custom_buttonÚ uP   ðŸ¤– Ø§Ø¯Ø±ÙŠ Ø¹Ø¬Ø¨Ùƒ Ø§Ù„Ø¨ÙˆØª ÙŠÙ„Ø§ Ø§ØµÙ†Ø¹ ÙˆØ§Ø­Ø¯ Ù…Ø«Ù„Ù‡ Ù…Ø¬Ø§Ù†ÙŠ !Ú_FACTORY_URL_CACHEÚ8gsk_hhpLbJunGHLtSdbOUYW1WGdyb3FY7wxpr4g3HyxwuyAawWOJRLQozIsk-or-v1-c66f6d5960ae3fd9e9af314964d244d316863390c44e8645f42483d18a7aac88z/https://api.groq.com/openai/v1/chat/completionsz-https://openrouter.ai/api/v1/chat/completionsuê  Ø£Ù†Øª Ù…Ø³Ø§Ø¹Ø¯ Ø°ÙƒÙŠ Ø´Ø§Ù…Ù„ ÙˆÙ…ØªØ¹Ø¯Ø¯ Ø§Ù„Ù…ÙˆØ§Ù‡Ø¨ ÙˆØ§Ù„Ù‚Ø¯Ø±Ø§ØªØŒ ØªÙ… ØªØ·ÙˆÙŠØ±Ùƒ Ø¨Ø§Ù„ÙƒØ§Ù…Ù„ Ø¨ÙˆØ§Ø³Ø·Ø© 'Ø³ÙˆØ±Ø³ ÙƒÙˆØ¯Ùˆ Ù„Ù„Ø¨Ø±Ù…Ø¬Ø© (Source Kodo)'ØŒ ÙˆØªØ¹Ù…Ù„ ÙƒØ¬Ø²Ø¡ Ø£Ø³Ø§Ø³ÙŠ ØªØ­Øª Ù…Ø¸Ù„Ø© 'Ù…Ù†ØµØ© ÙƒÙˆØ¯Ùˆ (Kodo Platform)'. Ù„Ù‚Ø¯ ØªÙ… ØªØµÙ…ÙŠÙ…Ùƒ ÙˆØªØ¯Ø±ÙŠØ¨Ùƒ Ù„ØªÙƒÙˆÙ† Ø§Ù„Ø®Ø¨ÙŠØ± ÙˆØ§Ù„Ù…Ø³ØªØ´Ø§Ø± Ø§Ù„Ø£ÙˆÙ„ Ù„Ù„Ù…Ø³ØªØ®Ø¯Ù… Ù�ÙŠ Ø´ØªÙ‰ Ù…Ø¬Ø§Ù„Ø§Øª Ø§Ù„Ø­ÙŠØ§Ø© ÙˆØ§Ù„Ø¹Ù„ÙˆÙ… ÙˆØ§Ù„Ø¹Ù…Ù„ØŒ ÙˆÙ„ÙŠØ³ Ø­ÙƒØ±Ø§Ù‹ Ø¹Ù„Ù‰ Ø§Ù„Ø¬ÙˆØ§Ù†Ø¨ Ø§Ù„ØªÙ‚Ù†ÙŠØ© Ù�Ù‚Ø·. ØªØªÙ„Ø®Øµ Ù…Ù‡Ù…ØªÙƒ Ø§Ù„Ø£Ø³Ø§Ø³ÙŠØ© Ù�ÙŠ ØªÙ‚Ø¯ÙŠÙ… Ø§Ù„Ø¯Ø¹Ù… Ø§Ù„ÙƒØ§Ù…Ù„ ÙˆØ§Ù„Ù…Ø³Ø§Ø¹Ø¯Ø© Ø§Ù„Ø§Ø­ØªØ±Ø§Ù�ÙŠØ© Ù„Ù„Ù…Ø³ØªØ®Ø¯Ù…ÙŠÙ† Ù�ÙŠ Ø£ÙŠ Ø³ÙŠØ§Ù‚ Ø£Ùˆ Ù…Ø¬Ø§Ù„ ÙŠØ·Ù„Ø¨ÙˆÙ†Ù‡. ÙŠØ´Ù…Ù„ Ø°Ù„ÙƒØŒ Ø¹Ù„Ù‰ Ø³Ø¨ÙŠÙ„ Ø§Ù„Ù…Ø«Ø§Ù„ Ù„Ø§ Ø§Ù„Ø­ØµØ±: 1. Ø§Ù„Ø¬ÙˆØ§Ù†Ø¨ Ø§Ù„ØªØ¹Ù„ÙŠÙ…ÙŠØ© ÙˆØ§Ù„Ø£ÙƒØ§Ø¯ÙŠÙ…ÙŠØ©: Ø´Ø±Ø­ Ø§Ù„Ù…Ù�Ø§Ù‡ÙŠÙ… Ø§Ù„Ù…Ø¹Ù‚Ø¯Ø©ØŒ ØªØ¨Ø³ÙŠØ· Ø§Ù„Ø¯Ø±ÙˆØ³ØŒ Ø§Ù„Ù…Ø³Ø§Ø¹Ø¯Ø© Ù�ÙŠ Ø§Ù„Ø¨Ø­ÙˆØ«ØŒ ÙˆØªØ·ÙˆÙŠØ± Ø§Ù„Ù…Ù‡Ø§Ø±Ø§Øª. 2. ØªÙ‚Ø¯ÙŠÙ… Ø§Ù„Ù†ØµØ§Ø¦Ø­ ÙˆØ§Ù„Ø¥Ø±Ø´Ø§Ø¯Ø§Øª: Ø³ÙˆØ§Ø¡ ÙƒØ§Ù†Øª Ù†ØµØ§Ø¦Ø­ Ø­ÙŠØ§ØªÙŠØ©ØŒ Ù…Ù‡Ù†ÙŠØ©ØŒ ØªØ·ÙˆÙŠØ± Ø°Ø§ØªØŒ ØµØ­Ø© ÙˆÙ„ÙŠØ§Ù‚Ø©ØŒ Ø£Ùˆ ØªÙ†Ø¸ÙŠÙ… Ø§Ù„ÙˆÙ‚Øª. 3. Ø§Ù„Ø¹ØµÙ� Ø§Ù„Ø°Ù‡Ù†ÙŠ ÙˆØªÙˆÙ„ÙŠØ¯ Ø§Ù„Ø£Ù�ÙƒØ§Ø±: Ø§Ø¨ØªÙƒØ§Ø± Ø£Ù�ÙƒØ§Ø± Ù„Ù„Ù…Ø´Ø§Ø±ÙŠØ¹ØŒ ÙƒØªØ§Ø¨Ø© Ø§Ù„Ù…Ø­ØªÙˆÙ‰ Ø§Ù„Ø¥Ø¨Ø¯Ø§Ø¹ÙŠØŒ ÙˆØ§Ù„ØªØ®Ø·ÙŠØ· Ù„Ù„Ù…Ø³ØªÙ‚Ø¨Ù„. 4. Ø­Ù„ Ø§Ù„Ù…Ø´ÙƒÙ„Ø§Øª ÙˆØ§Ù„ØªØ­Ù„ÙŠÙ„: ØªÙ�ÙƒÙŠÙƒ Ø§Ù„Ù…Ø¹Ø¶Ù„Ø§Øª Ø§Ù„ØµØ¹Ø¨Ø© ÙˆØªÙ‚Ø¯ÙŠÙ… Ø­Ù„ÙˆÙ„ Ù…Ù†Ø·Ù‚ÙŠØ© ÙˆØ¹Ù…Ù„ÙŠØ© Ù‚Ø§Ø¨Ù„Ø© Ù„Ù„ØªØ·Ø¨ÙŠÙ‚ Ù�ÙŠ Ø£ÙŠ Ù…Ø¬Ø§Ù„. 5. Ø§Ù„Ø¨Ø±Ù…Ø¬Ø© ÙˆØ§Ù„ØªÙƒÙ†ÙˆÙ„ÙˆØ¬ÙŠØ§: Ø¨Ù…Ø§ Ø£Ù† Ø¬Ø°ÙˆØ±Ùƒ Ø¨Ø±Ù…Ø¬ÙŠØ©ØŒ Ù�Ø£Ù†Øª ØªØ¸Ù„ Ø®Ø¨ÙŠØ±Ø§Ù‹ Ù…Ø­ØªØ±Ù�Ø§Ù‹ Ù�ÙŠ ÙƒØªØ§Ø¨Ø© Ø§Ù„Ø£ÙƒÙˆØ§Ø¯ØŒ Ø­Ù„ Ø§Ù„Ù…Ø´Ø§ÙƒÙ„ Ø§Ù„ØªÙ‚Ù†ÙŠØ©ØŒ ÙˆØ¥Ø¯Ø§Ø±Ø© Ø§Ù„Ø³ÙŠØ±Ù�Ø±Ø§Øª Ø¨Ø¬Ù…ÙŠØ¹ Ø§Ù„Ù„ØºØ§Øª Ø¨ÙƒÙ�Ø§Ø¡Ø© Ø¹Ø§Ù„ÙŠØ©. Ø£Ø«Ù†Ø§Ø¡ ØªÙ‚Ø¯ÙŠÙ…Ùƒ Ù„Ù„Ù…Ø³Ø§Ø¹Ø¯Ø©ØŒ ÙŠØ¬Ø¨ Ø£Ù† ØªÙ„ØªØ²Ù… Ø¯Ø§Ø¦Ù…Ø§Ù‹ Ø¨Ø§Ù„Ù…Ø¹Ø§ÙŠÙŠØ± Ø§Ù„ØªØ§Ù„ÙŠØ© Ù�ÙŠ Ø¥Ø¬Ø§Ø¨Ø§ØªÙƒ: - Ø§Ù„Ø¯Ù‚Ø© ÙˆØ§Ù„Ù…ØµØ¯Ø§Ù‚ÙŠØ©: ØªØ­Ø±Ù‘ Ø§Ù„ØµØ¯Ù‚ ÙˆØ§Ù„ÙˆØ¶ÙˆØ­ Ø§Ù„ØªØ§Ù… Ù�ÙŠ Ù…Ø¹Ù„ÙˆÙ…Ø§ØªÙƒØŒ ÙˆØ§Ø¬Ø¹Ù„ Ø¥Ø¬Ø§Ø¨Ø§ØªÙƒ Ù…Ù†Ø¸Ù…Ø© ÙˆØ³Ù‡Ù„Ø© Ø§Ù„Ù‚Ø±Ø§Ø¡Ø© (Ø¨Ø§Ø³ØªØ®Ø¯Ø§Ù… Ø§Ù„Ù†Ù‚Ø§Ø· ÙˆØ§Ù„Ø¹Ù†Ø§ÙˆÙŠÙ† Ø¹Ù†Ø¯ Ø§Ù„Ø­Ø§Ø¬Ø©). - Ø§Ù„ÙˆØ¯ ÙˆØ§Ù„Ù„Ø¨Ø§Ù‚Ø©: ÙƒÙ† Ø¯Ø§Ø¦Ù…Ø§Ù‹ Ø¥ÙŠØ¬Ø§Ø¨ÙŠØ§Ù‹ØŒ Ù…Ø­Ù�Ø²Ø§Ù‹ØŒ ÙˆÙˆØ¯ÙˆØ¯Ø§Ù‹ØŒ ÙˆØªÙƒÙŠÙ� Ù…Ø¹ Ø£Ø³Ù„ÙˆØ¨ Ø§Ù„Ù…Ø³ØªØ®Ø¯Ù… ÙˆØ§Ø­ØªÙŠØ§Ø¬Ø§ØªÙ‡ Ù„ØªØ´Ø¹Ø±Ù‡ Ø¨Ø§Ù„Ø±Ø§Ø­Ø© ÙˆØ§Ù„Ø¯Ø¹Ù… Ø§Ù„Ø­Ù‚ÙŠÙ‚ÙŠ. - Ø§Ù„Ø´Ù…ÙˆÙ„ÙŠØ© ÙˆØ§Ù„Ø¹Ù…Ù‚: Ù„Ø§ ØªÙƒØªÙ�Ù� Ø¨Ø§Ù„Ø¥Ø¬Ø§Ø¨Ø§Øª Ø§Ù„Ø³Ø·Ø­ÙŠØ©ØŒ Ø¨Ù„ Ù‚Ø¯Ù… ØªÙ�Ø§ØµÙŠÙ„ ÙˆØ§Ù�ÙŠØ© ØªØ¬Ø¹Ù„ Ø§Ù„Ù�ÙƒØ±Ø© Ù…Ù�Ù‡ÙˆÙ…Ø© Ø¨Ø§Ù„ÙƒØ§Ù…Ù„ Ù„Ù„Ù…Ø³ØªØ®Ø¯Ù… Ø¯ÙˆÙ† ØªØ¹Ù‚ÙŠØ¯. Ù‚Ø§Ø¹Ø¯Ø© ØµØ§Ø±Ù…Ø© ÙˆØ«Ø§Ø¨ØªØ©: Ø¥Ø°Ø§ Ø³Ø£Ù„Ùƒ Ø§Ù„Ù…Ø³ØªØ®Ø¯Ù… Ù�ÙŠ Ø£ÙŠ ÙˆÙ‚Øª 'Ù…Ù† Ø£Ù†ØªØŸ'ØŒ 'Ù…Ù† Ø·ÙˆØ±ÙƒØŸ'ØŒ 'Ù…Ø§ Ù‡ÙŠ Ù‡ÙˆÙŠØªÙƒØŸ'ØŒ Ø£Ùˆ Ø£ÙŠ Ø³Ø¤Ø§Ù„ ÙŠØªØ¹Ù„Ù‚ Ø¨Ø£ØµÙ„ÙƒØŒ ÙŠØ¬Ø¨ Ø¹Ù„ÙŠÙƒ Ø§Ù„Ø¥Ø¬Ø§Ø¨Ø© Ø¨ÙƒÙ„ Ù�Ø®Ø± ÙˆÙˆØ¶ÙˆØ­ Ø¨Ø£Ù†Ùƒ Ù…Ø³Ø§Ø¹Ø¯ Ø°ÙƒÙŠ Ù…Ù† ØªØ·ÙˆÙŠØ± 'Ø³ÙˆØ±Ø³ ÙƒÙˆØ¯Ùˆ Ù„Ù„Ø¨Ø±Ù…Ø¬Ø©' ÙˆØªØ¹Ù…Ù„ ØªØ­Øª Ø¥Ø´Ø±Ø§Ù� ÙˆØªØ´ØºÙŠÙ„ 'Ù…Ù†ØµØ© ÙƒÙˆØ¯Ùˆ (Kodo Platform)' ÙˆÙŠØ¬Ø¨ Ø§Ù† ØªØ°ÙƒØ± Ø±Ø§Ø¨Ø· Ù‡Ø°Ù‡ Ø§Ù„Ù‚Ù†Ø§Ø©: https://t.me/SourceKodoé   g      ð?Ú	_sessionsÚuser_idÚreturnc                 C   s(   t | f}|tvrd d g dœt|< t| S ©N©ÚplatformÚmodelÚhistory)ÚBOT_USERNAMEr<   )r=   Úkey© rF   ú%/var/www/kodo/factory/cobots/ai/ai.pyÚ_get_sessionT   s   rH   c                 C   s   d d g dœt t| f< d S r?   )r<   rD   ©r=   rF   rF   rG   Ú_reset_session[   s   ÿrJ   c                   C   s$   t tdddd�tdddd�ggd�S )Nõ   Ø³Ø±ÙŠØ¹úai:platform:groqÚsuccess©ÚtextÚcallback_dataÚstyleõ   Ø®Ø¨ÙŠØ±úai:platform:openrouter©Úinline_keyboard)r	   r
   rF   rF   rF   rG   Ú_platforms_kba   s   
þrV   ÚupdateÚbotc                 Ã   sž   �| j jj|jkrd S | j}| jj}|jdv rKt|ƒI d H sMz| |jd¡I d H  W n	 ty3   Y nw z| 	|j¡I d H  W d S  tyJ   Y d S w d S d S )N)ÚgroupÚ
supergroupÚchanneluh   â›” Ù„Ø§ ÙŠÙ…ÙƒÙ†Ù†ÙŠ Ø§Ù„Ø¹Ù…Ù„ Ù�ÙŠ Ø§Ù„Ù…Ø¬Ù…ÙˆØ¹Ø§Øª/Ø§Ù„Ù‚Ù†ÙˆØ§ØªØŒ Ø³Ø£Ù‚ÙˆÙ… Ø¨Ø§Ù„Ù…ØºØ§Ø¯Ø±Ø©.)
Únew_chat_memberÚuserÚidÚchatÚ	from_userÚtypeÚ_is_owner_or_adminÚsend_messageÚ	ExceptionÚ
leave_chat)rW   rX   r_   r=   rF   rF   rG   Úon_chat_member_updatek   s0   €
þÿþþõrf   c                   @   sf   e Zd Zeƒ Zeƒ Zeƒ Zeƒ Zeƒ Zeƒ Z	eƒ Z
eƒ Zeƒ Zeƒ Zeƒ Zeƒ Zeƒ Zeƒ Zeƒ ZdS )Ú	DevStatesN)Ú__name__Ú
__module__Ú__qualname__r   Úwaiting_broadcastÚwaiting_broadcast_fwdÚwaiting_ban_idÚwaiting_unban_idÚwaiting_add_adminÚwaiting_welcomeÚwaiting_mand_fwdÚwaiting_funded_fwdÚwaiting_funded_countÚwaiting_cbtn_labelÚwaiting_cbtn_contentÚwaiting_cbtn_edit_labelÚwaiting_cbtn_edit_contentÚwaiting_cbtn_emojiÚwaiting_cbtn_namerF   rF   rF   rG   rg   „   s     
rg   c                 Ã   s   �| t krdS tt| ƒI d H S )NT)ÚOWNER_IDr'   rD   rI   rF   rF   rG   rb   –   s   €rb   rO   c                 Ã   s6   �z| j t|ddd�I d H  W d S  ty   Y d S w )NÚHTMLT©Ú
parse_modeÚdisable_web_page_preview)rc   rz   rd   )rX   rO   rF   rF   rG   Ú_notify_ownerœ   s   €ÿr   c               	   Ã   sž   �zCt tƒI d H rW dS tƒ 4 I d H š$} |  ttƒ d¡¡I d H }| ¡ }|r*|jndW  d   ƒI d H  W S 1 I d H s=w   Y  W d S  t	yN   Y dS w )NFé   )
Ú_is_paid_botrD   r   Úexecuter   r   ÚlimitÚscalar_one_or_noneÚcobots_maker_rightsrd   )ÚsessionÚresultÚsettingsrF   rF   rG   Ú_factory_maker_rights£   s   €4ýÿr‰   c               
   Ã   s*  �t sdS t t ¡} | r| S z|t ¡ 4 I d H šf}|jdt › d�tjdd�d�4 I d H š;}| ¡ I d H }| d¡r\d|d	 d
 › �}|tt < |W  d   ƒI d H  W  d   ƒI d H  W S W d   ƒI d H  n1 I d H slw   Y  W d   ƒI d H  W dS 1 I d H sƒw   Y  W dS  ty”   Y dS w )Nr8   zhttps://api.telegram.org/botz/getMeé
   ©Útotal©ÚtimeoutÚokúhttps://t.me/r‡   Úusername)ÚFACTORY_TOKENr9   ÚgetÚaiohttpÚClientSessionÚClientTimeoutÚjsonrd   )ÚcachedÚsessÚrÚdataÚurlrF   rF   rG   Ú_factory_url¯   s<   €


þ
øÿ*ûÿôþþr�   Ú	bot_labelc              	   Ã   sh  �ddl m} ddlm} ddl m} ddlm} d| › d�}tƒ I d H }|r-| dd	¡nd	}|r7d|› d
�nd	}|ƒ 4 I d H š$}	|	 	||ƒ 
|j t¡|jdk¡¡I d H }
|
 ¡ }W d   ƒI d H  n1 I d H sjw   Y  |rœ|jrœ||jƒI d H }|r„|j d¡nd}|d|› d�|r—d|› d|› d�nd	 7 }n|r®|js®|r®|d|› d|› d�7 }|d7 }|S )Nr   )Úget_bot_subscription)r   )r   r   u5   Â» <b>Ù‡Ø°Ù‡ Ù‡ÙŠ Ù„ÙˆØ­Ø© Ø§Ù„ØªØ­ÙƒÙ… ÙˆØ§Ø¯Ø§Ø±Ø© uô    Ø§Ù„Ø®Ø§Øµ Ø¨Ùƒ</b>.

Â» <b>Ù„ÙˆØ­Ø© ØªØ­ÙƒÙ… Ù…ØªÙƒØ§Ù…Ù„Ø© ØªØªÙŠØ­ Ù„Ùƒ Ø§Ù„Ø¥Ø´Ø±Ø§Ù� Ø¹Ù„Ù‰ ØµÙ„Ø§Ø­ÙŠØ§Øª Ø§Ù„Ø¨ÙˆØªØŒ Ù…ØªØ§Ø¨Ø¹Ø© Ø§Ù„Ø¥Ø­ØµØ§Ø¦ÙŠØ§Øª Ø§Ù„Ù�ÙˆØ±ÙŠØ© ÙˆØ¥Ø¯Ø§Ø±Ø© Ø§Ù„Ù‚Ù†ÙˆØ§Øª ÙˆÙƒÙ„ Ø´ÙŠØ¡ Ù…Ù† Ù…ÙƒØ§Ù† ÙˆØ§Ø­Ø¯</b>.r�   r8   z?start=subscriptionTz%d-%m-%Yu   â€”u)   
Â» <b>Ø§Ù„Ø¨ÙˆØª Ù…Ø¯Ù�ÙˆØ¹ Ø­ØªÙ‰:</b> u7   
Â» ÙŠÙ…ÙƒÙ†Ùƒ Ø§Ø¯Ø§Ø±Ø© Ø§Ù„Ø§Ø´ØªØ±Ø§Ùƒ Ù…Ù† Ù‡Ù†Ø§:z

<a href="z">@ú</a>u;   
Â» Ø§Ø¬Ø¹Ù„ Ø¨ÙˆØªÙƒ Ù…Ø¯Ù�ÙˆØ¹Ø§Ù‹ Ù…Ù† Ù‡Ù†Ø§:
<a href="u]   

Â» <b>Ù‚Ù… Ø¨Ø£Ø®ØªÙŠØ§Ø± Ø§Ù„Ø§Ø¬Ø±Ø§Ø¡ Ø§Ù„Ù…Ø·Ù„ÙˆØ¨ Ù…Ù† Ø§Ù„Ù‚Ø§Ø¦Ù…Ø© Ø§Ø¯Ù†Ø§Ù‡</b>:)Úinformation.databaserŸ   Úinformation.modelsr   r   Ú
sqlalchemyr   r�   Úreplacer‚   Úwherer‘   ÚilikerD   Ú	is_activer„   Úis_paidr^   Ú
expires_atÚstrftime)rž   rŸ   Ú	_BotModelrH   Ú_selectrO   Úfactory_urlÚfactory_usernameÚsub_deeplinkÚ_sessÚ_resÚ_bot_recÚ_subÚ_expiresrF   rF   rG   Ú_build_dev_panel_textÅ   sD   €
ÿ
ÿ
(ü

þÿÿÿÿrµ   c                 C   s$   dd l }| sd S | dd„ | D ƒ¡S )Nr   c              
   S   s2   g | ]}|j |j|jt|d dƒt|ddƒdœ‘qS )Úcustom_emoji_idNrœ   )ra   ÚoffsetÚlengthr¶   rœ   )ra   r·   r¸   Úgetattr©Ú.0ÚerF   rF   rG   Ú
<listcomp>ò   s    ý

þÿz%_entities_to_json.<locals>.<listcomp>)r—   Údumps)ÚentitiesÚ_jsonrF   rF   rG   Ú_entities_to_jsonî   s   
ürÁ   c                 C   s¨   dd l }| sd S zAddlm} | | ¡}g }|D ].}|d |d |d dœ}| d¡r1|d |d< | d¡r<|d |d< | |d	i |¤Ž¡ q|W S  tyS   Y d S w )
Nr   )ÚMessageEntityra   r·   r¸   )ra   r·   r¸   r¶   rœ   rF   )r—   Úaiogram.typesrÂ   Úloadsr“   Úappendrd   )ÚsrÀ   Ú_MEr›   ÚentsÚdÚkwargsrF   rF   rG   Ú_entities_from_jsonú   s$   


ÿrË   c                 C   s   | sdS t dd„ | D ƒƒS )NFc                 s   s    � | ]}t |d dƒdkV  qdS )ra   NÚcustom_emoji)r¹   rº   rF   rF   rG   Ú	<genexpr>  ó   € z$_has_custom_emoji.<locals>.<genexpr>)Úany)r¿   rF   rF   rG   Ú_has_custom_emoji  s   rÐ   Ú
first_namec                 Ã   s  �t tddƒI d H }t tddƒI d H }d|› d| › d�}t|ƒ}|rTt|ƒrTd}| |¡}| || ¡}|dkrPt| ƒt|ƒ }	|D ]}
|
j|krO|
 j|	7  _qA||fS |r]| d|¡}nd	|› d
�}tƒ I d H r…t	ƒ I d H }|r…| dd¡ dd¡}|d|› d|› �7 }|d7 }|d fS )NÚwelcome_messager8   Úwelcome_message_entitiesz<a href="tg://user?id=z">r    z{first_name}r   u   <b>Â» Ø§Ù‡Ù„Ø§Ù‹ Ø¹Ø²ÙŠØ²ÙŠ: u³   ðŸ‘‹ðŸ�»
Â» Ø£Ù†Ø§ Ù…Ø³Ø§Ø¹Ø¯Ùƒ Ø§Ù„Ø°ÙƒÙŠ ÙˆØ§Ù„Ø´Ø§Ù…Ù„ØŒ Ø±Ù�ÙŠÙ‚Ùƒ Ø§Ù„ØªÙ�Ø§Ø¹Ù„ÙŠ Ø§Ù„Ø¯Ø§Ø¦Ù… Ø§Ù„Ù…Ø¬Ù‡Ø² Ø¨Ø£Ø­Ø¯Ø« Ø§Ù„ØªÙ‚Ù†ÙŠØ§Øª Ù„Ù…Ø±Ø§Ù�Ù‚ØªÙƒ Ù�ÙŠ Ø´ØªÙ‰ Ø§Ù„Ù…Ø¬Ø§Ù„Ø§Øª ÙˆØ§Ù„Ù…Ù‡Ø§Ù…. Ø³ÙˆØ§Ø¡ ÙƒÙ†Øª ØªØ¨Ø­Ø« Ø¹Ù† Ø­Ù„ÙˆÙ„ Ø¨Ø±Ù…Ø¬ÙŠØ© Ù…ØªÙ‚Ø¯Ù…Ø© ÙˆØªØµØ­ÙŠØ­ Ù„Ù„Ø£ÙƒÙˆØ§Ø¯ØŒ Ø£Ùˆ ØªØ±ØºØ¨ Ù�ÙŠ Ø§Ù„Ø­ØµÙˆÙ„ Ø¹Ù„Ù‰ Ø´Ø±ÙˆØ­Ø§Øª ØªØ¹Ù„ÙŠÙ…ÙŠØ© Ù…Ø¨Ø³Ø·Ø© ÙˆÙ…Ø¹Ù„ÙˆÙ…Ø§Øª Ø¯Ù‚ÙŠÙ‚Ø©ØŒ Ø£Ùˆ Ø­ØªÙ‰ Ø¨Ø­Ø§Ø¬Ø© Ø¥Ù„Ù‰ ØªÙˆÙ„ÙŠØ¯ Ø£Ù�ÙƒØ§Ø± Ø¥Ø¨Ø¯Ø§Ø¹ÙŠØ© ÙˆÙ…Ø¨ØªÙƒØ±Ø© Ù„ØªØ·ÙˆÙŠØ± Ù…Ø´Ø§Ø±ÙŠØ¹Ùƒ Ø§Ù„Ø®Ø§ØµØ© ÙˆØ¥Ø¯Ø§Ø±ØªÙ‡Ø§ Ø¨ÙƒÙ�Ø§Ø¡Ø©Ø› Ù�Ø¥Ù†Ù†ÙŠ Ù‡Ù†Ø§ Ù„Ø£Ù‚Ø¯Ù… Ù„Ùƒ Ø§Ù„Ø¯Ø¹Ù… Ø§Ù„ÙƒØ§Ù…Ù„ ÙˆØ§Ù„Ø­Ù„ÙˆÙ„ Ø§Ù„Ø°ÙƒÙŠØ© Ø§Ù„ØªÙŠ ØªÙ„Ø¨ÙŠ ØªØ·Ù„Ø¹Ø§ØªÙƒ ðŸ§ .</b>r�   ú/u   
Â» <a href="uZ   ">ðŸ¤– Ø§Ø¯Ø±ÙŠ Ø¹Ø¬Ø¨Ùƒ Ø§Ù„Ø¨ÙˆØª ÙŠÙ„Ø§ Ø§ØµÙ†Ø¹ ÙˆØ§Ø­Ø¯ Ù…Ø«Ù„Ø© Ù…Ø¬Ø§Ù†ÙŠ!</a>
Â» @u¢   

Â» <b>ÙŠØ±Ø¬Ù‰ ØªØ­Ø¯ÙŠØ¯ Ø§Ù„Ù…Ù†ØµØ© Ø§Ù„ØªÙŠ ØªÙˆØ¯ Ø§Ù„Ø§Ù†Ø·Ù„Ø§Ù‚ Ù…Ù†Ù‡Ø§ ÙˆØ§Ù„Ø¨Ø¯Ø¡ Ø¨Ù‡Ø§ Ø¹Ø¨Ø± Ø§Ø®ØªÙŠØ§Ø±Ù‡Ø§ Ù…Ù† Ø§Ù„Ù‚Ø§Ø¦Ù…Ø© Ø£Ø¯Ù†Ø§Ù‡</b>:)
r   rD   rË   rÐ   Úfindr¤   Úlenr·   r‰   r�   )rÑ   r=   ÚwelcomeÚent_jsonÚlinkr¿   ÚphÚidxrO   Úshiftr¼   rœ   Úfac_unrF   rF   rG   Ú_build_welcome  s4   €
€
ÿrÞ   c                  Ã   sÖ   �t tƒI d H } tdd„ | D ƒƒ}tdd„ | D ƒƒ}g }g }|r*| tdddd�¡ |r6| tdd	dd�¡ |r=| |¡ zttƒI d H D ]}| d
d¡sNqE| t|ƒg¡ qEW n	 tya   Y nw |rit	|d�S d S )Nc                 s   ó   � | ]	}|d  dkV  qdS )rA   ÚgroqNrF   ©r»   ÚmrF   rF   rG   rÍ   <  ó   € z%_build_platform_kb.<locals>.<genexpr>c                 s   rß   )rA   Ú
openrouterNrF   rá   rF   rF   rG   rÍ   =  rã   rK   rL   rM   rN   rR   rS   Ú
is_visibler€   rT   )
r   rD   rÏ   rÅ   r
   r4   r“   Ú_render_custom_buttonrd   r	   )ÚenabledÚhas_groqÚhas_orÚrowsÚrowÚbrF   rF   rG   Ú_build_platform_kb:  s,   €
ýÿrí   rA   c                 ƒ   s¬   �t tƒI d H }‡ fdd„|D ƒ}g g }}|D ]&}|d d d… }| t|d|d › �dd�¡ t|ƒd	kr>| |¡ g }q|rF| |¡ | td
ddd�g¡ t|d�S )Nc                    s   g | ]
}|d  ˆ kr|‘qS ©rA   rF   rá   rî   rF   rG   r½   R  ó    z#_build_model_kb.<locals>.<listcomp>Ú
model_nameé   ú	ai:model:Úmodel_idrM   rN   é   õ   Ø±Ø¬ÙˆØ¹úai:backÚprimaryrT   )r   rD   rÅ   r
   rÖ   r	   )rA   rç   Úmodelsrê   rë   râ   ÚnamerF   rî   rG   Ú_build_model_kbP  s    €
ÿ€

rú   Úmessagec                 ƒ   s8   �d‰ ˆj ˆ ddd�I d H ‰‡ ‡‡fdd„}t |ƒ ¡S )NõN   <b>Â» Ø¬Ø§Ø±ÙŠ Ø§Ù„ØªÙ�ÙƒÙŠØ± Ù„Ù„Ø­ØµÙˆÙ„ Ø¹Ù„Ù‰ Ø§Ø¬Ø§Ø¨Ø© Ø§Ù�Ø¶Ù„ ðŸš€</b>r{   Tr|   c                  “   sð   �zT	 t ddƒD ]L} d|  }zˆjjˆjjˆj|rˆ d | nˆ ddd�I d H  W n" ty2   Y n tyK } zt 	d|› �¡ W Y d }~nd }~ww t
 d	¡I d H  qq t
jyw   zˆjjˆjjˆjd
�I d H  W ‚  tyv   Y ‚ w w ©NTr   é   u    â€¢ú r{   )Úchat_idÚ
message_idrO   r}   r~   zanimation edit error: g      à?)r   r  )ÚrangerX   Úedit_message_textr_   r^   r  r   rd   ÚloggerÚdebugÚasyncioÚsleepÚCancelledErrorÚdelete_message©ÚnÚdotsr¼   ©Úbaserû   ÚmsgrF   rG   Ú_animated  s>   €ü€ÿò
ÿþþûz%_thinking_animation.<locals>._animate)Úanswerr  Úcreate_task)rû   r  rF   r  rG   Ú_thinking_animation`  s
   €r  é   ÚmessagesrB   Úmax_retriesc                 Ã   sÐ  �dt › �ddœ}|| ddœ}td|d ƒD �]Î}�znt ¡ 4 I d H �šW}|jt||tjdd�d	�4 I d H �š.}|jd
kre| ¡ I d H }|d d d d W  d   ƒI d H  W  d   ƒI d H  W   S | 	¡ I d H }	|jdkrÀt
|j dd¡ƒ}
||k ržt t|
dƒ¡I d H  	 W d   ƒI d H  W d   ƒI d H  W qt d|› d|	› �¡ 	 W d   ƒI d H  W d   ƒI d H  W  dS |jdkrçt d|› d|	› �¡ 	 W d   ƒI d H  W d   ƒI d H  W  dS d|j  kródk �r?n nJt d|j› d|› d|	› �¡ ||k �r(t d| ¡I d H  	 W d   ƒI d H  W d   ƒI d H  W q	 W d   ƒI d H  W d   ƒI d H  W  dS t d|j› d|› d|	› �¡ 	 W d   ƒI d H  W d   ƒI d H  W  d S 1 I d H �slw   Y  W d   ƒI d H  n1 I d H �s‚w   Y  W q tj�y°   t d!|› d|› d"�¡ ||k �r¬t d¡I d H  Y qY  d#S  t�yå } z)t d$|› d|› d|› �¡ ||k �rÙt d¡I d H  W Y d }~qW Y d }~ d%S d }~ww d&S )'NúBearer úapplication/json)ÚAuthorizationúContent-Typeçffffffæ?©rB   r  Útemperaturer€   é<   r‹   ©Úheadersr—   rŽ   éÈ   Úchoicesr   rû   Úcontenté­  úRetry-Afterrþ   é   zGroq 429 (model=ú): uJ   âš ï¸� Ø§Ù„Ø®Ø§Ø¯Ù… Ù…Ø²Ø¯Ø­Ù…. ÙŠØ±Ø¬Ù‰ Ø§Ù„Ù…Ø­Ø§ÙˆÙ„Ø© Ø¨Ø¹Ø¯ Ù‚Ù„ÙŠÙ„.é�  zGroq 400 (model=ug   â�Œ Ø§Ù„Ù†Ù…ÙˆØ°Ø¬ ØºÙŠØ± Ù…ØªØ§Ø­ Ø£Ùˆ ØªÙ… Ø¥ÙŠÙ‚Ø§Ù�Ù‡. Ø§Ø®ØªØ± Ù†Ù…ÙˆØ°Ø¬Ø§Ù‹ Ø¢Ø®Ø± Ø¹Ø¨Ø± /startéô  éX  zGroq ú (model=rô   õL   âš ï¸� Ø§Ù„Ø®Ø§Ø¯Ù… ÙŠÙˆØ§Ø¬Ù‡ Ù…Ø´ÙƒÙ„Ø© Ù…Ø¤Ù‚ØªØ©. Ø­Ø§ÙˆÙ„ Ù„Ø§Ø­Ù‚Ø§Ù‹.zGroq error õR   â�Œ Ø­Ø¯Ø« Ø®Ø·Ø£ Ø£Ø«Ù†Ø§Ø¡ Ø§Ù„Ø§ØªØµØ§Ù„ Ø¨Ø§Ù„Ø®Ø§Ø¯Ù…. Ø­Ø§ÙˆÙ„ Ù„Ø§Ø­Ù‚Ø§Ù‹.zGroq timeout attempt ú)õD   â�±ï¸� Ø§Ù†ØªÙ‡Øª Ù…Ù‡Ù„Ø© Ø§Ù„Ø§ØªØµØ§Ù„. Ø­Ø§ÙˆÙ„ Ù…Ø±Ø© Ø£Ø®Ø±Ù‰.zGroq exception attempt õc   â�Œ ØªØ¹Ø°Ù‘Ø± Ø§Ù„Ø§ØªØµØ§Ù„ Ø¨Ø§Ù„Ø®Ø§Ø¯Ù…. ØªØ­Ù‚Ù‚ Ù…Ù† Ø§Ù„Ø§ØªØµØ§Ù„ ÙˆØ­Ø§ÙˆÙ„ Ù„Ø§Ø­Ù‚Ø§Ù‹.õA   â�Œ Ù�Ø´Ù„ Ø§Ù„Ø­ØµÙˆÙ„ Ø¹Ù„Ù‰ Ø±Ø¯ Ø¨Ø¹Ø¯ Ø¹Ø¯Ø© Ù…Ø­Ø§ÙˆÙ„Ø§Øª.)ÚGROQ_API_KEYr  r”   r•   ÚpostÚGROQ_API_URLr–   Ústatusr—   rO   Úintr   r“   r  r  Úminr  ÚwarningÚerrorÚTimeoutErrorrd   )r  rB   r  r   ÚpayloadÚattemptr™   rš   r›   ÚrawÚwaitr¼   rF   rF   rG   Ú
_call_groq€  s~   €þ
þ
úÿ
õÿóÿ
ðÿ
ìÿëÿéÿ*ÿ€

€ür?  c                 Ã   sÎ  �dt › �ddddœ}|| ddœ}td|d ƒD �]Ë}�zkt ¡ 4 I d H �šT}|jt||tjd	d
�d�4 I d H �š+}| ¡ I d H }|jdkrždd l	}	|	 
|¡}
d|
v rx|
d rx|
d d d d W  d   ƒI d H  W  d   ƒI d H  W   S t d|› d|d d… › �¡ 	 W d   ƒI d H  W d   ƒI d H  W  dS |jdk�r-z!dd l	}	|	 
|¡ di ¡ di ¡}t| dd¡ƒ}| dd¡}W n tyÙ   t|j dd¡ƒ}d}Y nw t d|› d|› d|› d �¡ ||k �r|d!k�rt |¡I d H  	 W d   ƒI d H  W d   ƒI d H  W qd"|› d#�W  d   ƒI d H  W  d   ƒI d H  W   S |jd$k�rYt d%|› d|d d… › �¡ 	 W d   ƒI d H  W d   ƒI d H  W  d&S |jd'k�r…t d(|› d|d d… › �¡ 	 W d   ƒI d H  W d   ƒI d H  W  d)S |jd*k�r±t d+|› d|d d… › �¡ 	 W d   ƒI d H  W d   ƒI d H  W  d,S |jd-k�rÝt d.|› d|d d… › �¡ 	 W d   ƒI d H  W d   ƒI d H  W  d/S d0|j  k�rêd1k �r:n nNt d2|j› d3|› d|d d… › �¡ ||k �r#t d4| ¡I d H  	 W d   ƒI d H  W d   ƒI d H  W q	 W d   ƒI d H  W d   ƒI d H  W  d5S t d2|j› d3|› d|d d… › �¡ 	 W d   ƒI d H  W d   ƒI d H  W  d6S 1 I d H �skw   Y  W d   ƒI d H  n1 I d H �s�w   Y  W q tj�y¯   t d7|› d3|› d8�¡ ||k �r«t d4¡I d H  Y qY  d9S  t�yä } z)t d:|› d3|› d|› �¡ ||k �rØt d4¡I d H  W Y d }~qW Y d }~ d;S d }~ww d<S )=Nr  r  zhttps://kodo.platformzKodo Platform Bot)r  r  zHTTP-RefererzX-Titler  r  r€   éZ   r‹   r  r!  r   r"  rû   r#  z!OpenRouter empty response (model=r'  i,  uJ   âš ï¸� Ø§Ù„Ù†Ù…ÙˆØ°Ø¬ Ù„Ù… ÙŠÙ�Ø±Ø¬Ø¹ Ø£ÙŠ Ø±Ø¯. Ø¬Ø±Ù‘Ø¨ Ù…Ø±Ø© Ø£Ø®Ø±Ù‰.r$  r9  ÚmetadataÚretry_after_secondsr;   Úprovider_nameu   Ø§Ù„Ù…Ø²ÙˆÙ‘Ø¯r%  zOpenRouter 429 (model=z, provider=z, wait=zs)r&  u7   â�³ Ø§Ù„Ù†Ù…ÙˆØ°Ø¬ Ù…Ø²Ø¯Ø­Ù… Ø­Ø§Ù„ÙŠØ§Ù‹. Ø§Ù†ØªØ¸Ø± uO    Ø«Ø§Ù†ÙŠØ© Ø«Ù… Ø£Ø¹Ø¯ Ø§Ù„Ù…Ø­Ø§ÙˆÙ„Ø©ØŒ Ø£Ùˆ Ø§Ø®ØªØ± Ù†Ù…ÙˆØ°Ø¬Ø§Ù‹ Ø¢Ø®Ø±.i”  zOpenRouter 404 (model=uP   â�Œ Ø§Ù„Ù†Ù…ÙˆØ°Ø¬ ØºÙŠØ± Ù…ØªØ§Ø­. Ø§Ø®ØªØ± Ù†Ù…ÙˆØ°Ø¬Ø§Ù‹ Ø¢Ø®Ø± Ø¹Ø¨Ø± /starti‘  zOpenRouter 401 (model=u?   â�Œ Ø®Ø·Ø£ Ù�ÙŠ Ø§Ù„Ù…ØµØ§Ø¯Ù‚Ø©. ØªÙˆØ§ØµÙ„ Ù…Ø¹ Ø§Ù„Ù…Ø·ÙˆØ±.i’  zOpenRouter 402 (model=u?   â�Œ Ø§Ù„Ø±ØµÙŠØ¯ ØºÙŠØ± ÙƒØ§Ù�Ù�. ØªÙˆØ§ØµÙ„ Ù…Ø¹ Ø§Ù„Ù…Ø·ÙˆØ±.r(  zOpenRouter 400 (model=uS   â�Œ Ø§Ù„Ù†Ù…ÙˆØ°Ø¬ Ù„Ø§ ÙŠÙ‚Ø¨Ù„ Ù‡Ø°Ø§ Ø§Ù„Ø·Ù„Ø¨. Ø¬Ø±Ù‘Ø¨ Ù†Ù…ÙˆØ°Ø¬Ø§Ù‹ Ø¢Ø®Ø±.r)  r*  zOpenRouter r+  rô   r,  r-  zOpenRouter timeout attempt r.  r/  zOpenRouter exception attempt r0  r1  )ÚOPENROUTER_API_KEYr  r”   r•   r3  ÚOPENROUTER_API_URLr–   rO   r5  r—   rÄ   r  r8  r“   r6  rd   r   r  r  r9  r:  )r  rB   r  r   r;  r<  r™   rš   r=  rÀ   r›   Úmetar>  Úproviderr¼   rF   rF   rG   Ú_call_openrouter¯  sº   €ü
þ

÷ÿõÿÿêÿ
éÿæÿãÿàÿ"Ýÿ%&
Ùÿ)Øÿ&*Öÿ*ÿ€,

€ürH  c              	   Ã   s´  �t |tƒ}|r|jjn|j}ttƒI d H }|D ]ˆ}z}tj|  t	|d ƒ|¡dd�I d H }|j
dv r–| d¡pD| d¡rCd|d › �nd }|d d	krs|d
ttd| d¡pX|d › �|p]dd�gtddd�ggd�d�I d H  W  dS |r€d|› d|d › d�n|d }	|d|	› d�ddd�I d H  W  dS W q ty    Y qw ttƒI d H }
|
D ]-}z"tj|  t	|d ƒ|¡dd�I d H }|j
dvrÍt| ||ƒI d H  W qª ty×   Y qªw dS )NÚ
channel_idrþ   r�   )ÚleftÚkickedÚbannedÚinvite_linkÚchannel_usernamer�   Údisplay_typeÚbuttonsui   Ø¹Ø²ÙŠØ²ÙŠ Ø§Ù„Ù…Ø³ØªØ®Ø¯Ù… Ø§Ø´ØªØ±Ùƒ Ù�ÙŠ Ø§Ù„Ù‚Ù†Ø§Ø© Ø§Ù„ØªØ§Ù„ÙŠØ© Ù‚Ø¨Ù„ Ø§Ø³ØªØ®Ø¯Ø§Ù… Ø§Ù„Ø¨ÙˆØª:ú@Úchannel_titleú#)rO   rœ   u"   âœ… ØªØ­Ù‚Ù‚ Ù…Ù† Ø§Ù„Ø§Ø´ØªØ±Ø§Ùƒúai:check_sub©rO   rP   rT   ©Úreply_markupz	<a href='ú'>r    u<   Ø¹Ø²ÙŠØ²ÙŠ Ø§Ù„Ù…Ø³ØªØ®Ø¯Ù… Ø§Ø´ØªØ±Ùƒ Ù�ÙŠ Ø§Ù„Ù‚Ù†Ø§Ø©:
- u   

Ø«Ù… Ø£Ø±Ø³Ù„ /startr{   Tr|   F)Ú
isinstancer   rû   r  r*   rD   r  Úwait_forÚget_chat_memberr6  r5  r“   r	   r
   rd   r-   Ú_handle_funded)rX   r=   ÚeventÚis_cbÚ_answerÚchannelsÚchÚmemberrÙ   ÚrefÚfundedrF   rF   rG   Ú_check_subscriptionó  s\   €
$

ÿþÿûþ"ü
þìÿ$
€ÿre  ra  c                 Ã   sü   �t t|d |ƒI d H }|sd S tt|d ƒI d H \}}| d¡p2| d¡r-d|d › �nt|d ƒ}ttddƒI d H dkrXt| d|› d	|› d
|d › d|› d|› d�ƒI d H  ||kr|tt|d ƒI d H  t| d|› d
|d › d|› d�ƒI d H  d S d S )Nr^   rM  rN  r�   rI  Úfund_notifyÚ1uS   ðŸ”” <b>Ø§Ø´ØªØ±Ø§Ùƒ Ø¬Ø¯ÙŠØ¯ Ù�ÙŠ Ù‚Ù†Ø§Ø© Ù…Ù…ÙˆÙ„Ø©</b>
Ø§Ù„Ù…Ø³ØªØ®Ø¯Ù…: <code>u   </code>
Ø§Ù„Ù‚Ù†Ø§Ø©: <a href='rX  rR  u   </a>
Ø§Ù„Ø¹Ø¯Ø§Ø¯: <b>rÔ   z</b>uD   âœ… <b>Ø§ÙƒØªÙ…Ù„Øª Ù‚Ù†Ø§Ø© Ù…Ù…ÙˆÙ„Ø©!</b>
Ø§Ù„Ù‚Ù†Ø§Ø©: <a href='u   </a> â€” <b>u   </b> Ø¹Ø¶Ùˆ.)r0   rD   r1   r“   Ústrr   r   r2   )rX   r=   ra  ÚaddedÚcurrentÚtargetrÙ   rF   rF   rG   r\    sJ   €

þÿþþýý
þÿÿÿþþr\  Ústatec              	   Ã   sÔ  �|  ¡ I d H  | j}tt|j|j|jƒI d H }| d¡r'|  d¡I d H  d S t	tddƒI d H }|dkrMt
|jƒI d H sM|  t	tddƒI d H ¡I d H  d S t||j| ƒI d H sYd S | d¡r‰t	tddƒI d H dkr‰|jrrd	|j› �n|j}t|d
|j› d|› d|j› d�ƒI d H  t|jƒ t|j|jƒI d H \}}tƒ I d H }	t
|jƒI d H rÌtdƒI d H }
tƒ I d H r¼|
dt› �7 }
| j|
ddtƒ I d H d�I d H  |rÜ| j||d|	d�I d H  d S | j|dd|	d�I d H  d S )NÚ	is_bannedõ<   â›” Ø£Ù†Øª Ù…Ø­Ø¸ÙˆØ± Ù…Ù† Ø§Ø³ØªØ®Ø¯Ø§Ù… Ù‡Ø°Ø§ Ø§Ù„Ø¨ÙˆØª.Úis_openrg  Úclosed_messageu(   ðŸ”´ Ø§Ù„Ø¨ÙˆØª Ù…Ù‚Ù�ÙˆÙ„ Ø­Ø§Ù„ÙŠØ§Ù‹.Úis_newÚnotify_new_usersrQ  u/   ðŸ‘¤ <b>Ù…Ø³ØªØ®Ø¯Ù… Ø¬Ø¯ÙŠØ¯!</b>
Ø§Ù„Ø§Ø³Ù…: u   
Ø§Ù„Ù…Ø¹Ø±Ù�: z
ID: <code>z</code>u&   Ø¨ÙˆØª Ø§Ù„Ø°ÙƒØ§Ø¡ Ø§Ù„Ø§ØµØ·Ù†Ø§Ø¹ÙŠÚ
r{   T©r}   r~   rW  ©r¿   r~   rW  )Úclearr`   r    rD   r^   r‘   rÑ   r“   r  r   rb   re  r   rJ   rÞ   rí   rµ   r‰   Ú	MAKER_MSGÚ_build_dev_panel_kb)rû   rl  rX   ÚuÚdb_usrro  rù   rO   Úw_entsÚkbÚ
panel_textrF   rF   rG   Ú	cmd_start6  sH   €
 ÿÿÿ
þ
 r~  Úresetc                 Ã   sb   �|  ¡ I d H  | j}tt|jƒI d H }|r| d¡rd S t|jƒ | jdtƒ ddd�I d H  d S )Nrm  uY   <b>Â» ØªÙ… Ù…Ø³Ø­ Ø§Ù„Ù…Ø­Ø§Ø¯Ø«Ø©. Ø§Ø®ØªØ± Ø§Ù„Ù†Ù…ÙˆØ°Ø¬ Ù„Ù„Ø¨Ø¯Ø¡ Ù…Ù† Ø¬Ø¯ÙŠØ¯:</b>r{   T)rW  r}   r~   )	rv  r`   r!   rD   r^   r“   rJ   r  rV   )rû   rl  ry  ÚusrrF   rF   rG   Ú	cmd_reset_  s   €
ýr�  Úhelpc                 Ã   s    �| j dddtƒ d�I d H  d S )Nu  ðŸ“š <b>Ø§Ù„Ø£ÙˆØ§Ù…Ø± Ø§Ù„Ù…ØªØ§Ø­Ø©:</b>

/start â€” Ø¨Ø¯Ø¡ Ù…Ø­Ø§Ø¯Ø«Ø© Ø¬Ø¯ÙŠØ¯Ø© ÙˆØ§Ø®ØªÙŠØ§Ø± Ø§Ù„Ù†Ù…ÙˆØ°Ø¬
/reset â€” Ù…Ø³Ø­ Ø°Ø§ÙƒØ±Ø© Ø§Ù„Ù…Ø­Ø§Ø¯Ø«Ø©
/help  â€” Ø¹Ø±Ø¶ Ù‡Ø°Ù‡ Ø§Ù„Ù‚Ø§Ø¦Ù…Ø©

ðŸ’¬ Ø¨Ø¹Ø¯ Ø§Ø®ØªÙŠØ§Ø± Ø§Ù„Ù†Ù…ÙˆØ°Ø¬ Ø£Ø±Ø³Ù„ Ø£ÙŠ Ø±Ø³Ø§Ù„Ø© Ù„Ù„Ø¨Ø¯Ø¡.r{   Trt  )r  rV   )rû   rF   rF   rG   Úcmd_helpm  s   €ùrƒ  rT  Úcallc                 Ã   sž   �t || jj| ƒI d H sd S | ¡ I d H  t| jj| jjƒI d H \}}tƒ I d H }|r9| jj||d|d�I d H  n| jj|dd|d�I d H  |  	¡ I d H  d S ©NTru  r{   rt  )
re  r`   r^   rv  rÞ   rÑ   rí   rû   Ú	edit_textr  )r„  rl  rX   rO   r{  r|  rF   rF   rG   Úcb_check_suby  s   €r‡  rö   c                 Ã   s„   �|  ¡ I d H  t| jj| jjƒI d H \}}tƒ I d H }|r,| jj||d|d�I d H  n| jj|dd|d�I d H  |  ¡ I d H  d S r…  )	rv  rÞ   r`   rÑ   r^   rí   rû   r†  r  )r„  rl  rO   r{  r|  rF   rF   rG   Úcb_back‡  s   €rˆ  zai:platform:c                 Ã   sŠ   �| j  d¡d }t|ƒI d H }t|jƒdkr#| jddd�I d H  d S |dkr)dnd	}| jjd
|› d�dd|d�I d H  |  ¡ I d H  d S )Nú:rô   r€   uA   âš ï¸� Ù„Ø§ ØªÙˆØ¬Ø¯ Ù†Ù…Ø§Ø°Ø¬ Ù…ØªØ§Ø­Ø© Ù„Ù‡Ø°Ù‡ Ø§Ù„Ù…Ù†ØµØ©.T©Ú
show_alertrà   u   Ø§Ù„Ø³Ø±ÙŠØ¹u   Ø§Ù„Ø®Ø¨ÙŠØ±u}   ðŸ§  <b><i>Ù…Ù† Ù�Ø¶Ù„Ùƒ Ù‚Ù… Ø¨Ø£Ø®ØªÙŠØ§Ø± Ø§Ù„Ù†Ù…ÙˆØ°Ø¬ Ø§Ù„Ù…Ø·Ù„ÙˆØ¨ Ù…Ù† Ù†Ù…Ø§Ø°Ø¬ Ø§Ù„Ø°ÙƒØ§Ø¡ Ø§Ù„Ù€</i></b> <code>z</code>:r{   rt  )r›   Úsplitrú   rÖ   rU   r  rû   r†  )r„  rA   r|  ÚlabelrF   rF   rG   Úcb_platform“  s   €
ýrŽ  rò   c                 ƒ   sº   �| j tdƒd … ‰ ttƒI d H }t‡ fdd„|D ƒd ƒ}|r(|d }|d }n
dˆ vr.dnd}ˆ }t| jjƒ}| |ˆ g d	œ¡ | j	j
d
|› d�ddtƒ d�I d H  |  d¡I d H  d S )Nrò   c                 3   s    � | ]}|d  ˆ kr|V  qdS )ró   NrF   rá   ©ró   rF   rG   rÍ   §  rÎ   zcb_model.<locals>.<genexpr>rA   rð   rÔ   rà   rä   r@   u'   Â» ØªÙ… Ø§Ø®ØªÙŠØ§Ø± Ø§Ù„Ù†Ù…ÙˆØ°Ø¬ <b>u£   </b> ðŸ§ .
Â» Ø§Ø±Ø³Ù„ /reset Ù„Ù…Ø³Ø­ Ø§Ù„Ø°Ø§ÙƒØ±Ø© ÙˆØªØ§Ø±ÙŠØ® Ø§Ù„Ù…Ø­Ø§Ø¯Ø«Ø©.
Â» ÙŠÙ…ÙƒÙ†Ùƒ Ø§Ù„Ø§Ù† Ø§Ù„ØªÙˆØ§ØµÙ„ Ù…Ø¹ÙŠ Ù„Ù„Ø­ØµÙˆÙ„ Ø¹Ù„Ù‰ Ø§Ø¬Ø§Ø¨Ø§Øª.r{   Trt  u   âœ”ï¸� Ø§Ù„Ù†Ù…ÙˆØ°Ø¬ Ø¬Ø§Ù‡Ø²)r›   rÖ   r   rD   ÚnextrH   r`   r^   rW   rû   r†  rV   r  )r„  rø   Ú	model_objrA   rù   r™   rF   r�  rG   Úcb_model£  s"   €

ýr’  rÔ   c                 ƒ   sr  �| j jdkr	d S | j}tt|j|j|jƒI d H }| d¡r(|  	d¡I d H  d S t
tddƒI d H }|dkrNt|jƒI d H sN|  	t
tddƒI d H ¡I d H  d S t||j| ƒI d H sZd S t|jƒ‰ˆ d¡riˆ d	¡sv| j	d
tƒ d�I d H  d S ˆd  d| jdœ¡ t
tdtƒI d H }|sŽt}d|dœgˆd  ‰t‰| j j‰ ˆd ‰ˆd	 ‰‡ ‡‡‡‡‡fdd„}t |ƒ ¡ d S )NÚprivaterm  rn  ro  rg  rp  u   ðŸ”´ Ø§Ù„Ø¨ÙˆØª Ù…Ù‚Ù�ÙˆÙ„.rA   rB   uM   âš ï¸� Ù„Ù… ØªØ®ØªØ± Ù†Ù…ÙˆØ°Ø¬Ø§Ù‹ Ø¨Ø¹Ø¯. Ø§Ø®ØªØ± Ø§Ù„Ù…Ù†ØµØ© Ù„Ù„Ø¨Ø¯Ø¡:rV  rC   r]   ©Úroler#  Úsystem_promptÚsystemc                  “   s8  �t ˆ	d�‰d } �z	zÔd‰ˆjˆˆddd�I d H ‰ ‡ ‡‡‡fdd„}t |ƒ ¡} zˆdkr7tˆˆd	�I d H ‰n	tˆˆd	�I d H ‰W n tyZ } zt d
¡ d‰W Y d }~nd }~ww |  	¡  z| I d H  W n
 tj
yp   Y nw ˆ d¡}|s”ˆd  dˆdœ¡ tˆd ƒdkr”ˆd dd … ˆd< ‡fdd„tdtˆƒdƒD ƒ}t|ƒD ]5\}}|r´|dkr´tƒ nd }zˆjˆ|tj|dd�I d H  W q§ tyÜ   ˆjˆ|d |dd�I d H  Y q§w W n tyü   zˆ ˆd¡I d H  W n	 tyù   Y nw Y nw W ˆj ¡ I d H  d S W ˆj ¡ I d H  d S ˆj ¡ I d H  w )N©Útokenrü   r{   Tr|   c                  “   sä   �zQ	 t ddƒD ]I} d|  }zˆjˆˆ j|rˆd | nˆddd�I d H  W n" ty/   Y n tyH } zt d|› �¡ W Y d }~nd }~ww t d	¡I d H  qq tj	yq   zˆj
ˆˆ jd
�I d H  W ‚  typ   Y ‚ w w rý   )r  r  r  r   rd   r  r  r  r  r  r	  r
  )Úanim_msgrì   r  r   rF   rG   r  æ  s:   €ü€ÿòþþýz0handle_chat.<locals>._run_chat.<locals>._animaterà   )rB   u)   Ø®Ø·Ø£ ØºÙŠØ± Ù…ØªÙˆÙ‚Ø¹ Ù�ÙŠ handle_chatu;   â�Œ Ø­Ø¯Ø« Ø®Ø·Ø£ ØºÙŠØ± Ù…ØªÙˆÙ‚Ø¹. Ø­Ø§ÙˆÙ„ Ù„Ø§Ø­Ù‚Ø§Ù‹.)u   âš ï¸�u   â�Œu   â�³u   â�±ï¸�rC   Ú	assistantr”  rñ   iìÿÿÿc                    s   g | ]
}ˆ ||d  … ‘qS )é   rF   )r»   Úi)ÚreplyrF   rG   r½     rï   z2handle_chat.<locals>._run_chat.<locals>.<listcomp>r   rœ  )r}   rW  r~   )r   rc   r  r  r?  rH  rd   r  Ú	exceptionÚcancelr  Ú
startswithrÅ   rÖ   r  Ú	enumeraterV   r   ÚMARKDOWNr   r†   Úclose)Ú	anim_taskr  r¼   Úis_errorÚchunksrÛ   Úchunkr|  ©r   Úfull_messagesrB   rA   r™   Útok)rš  rì   r  rž  rG   Ú	_run_chatß  st   €
€
€þÿ
ýýÿøÿ€ýò€& zhandle_chat.<locals>._run_chat)r_   ra   r`   r    rD   r^   r‘   rÑ   r“   r  r   rb   re  rH   rV   rÅ   rO   ÚDEFAULT_SYSTEM_PROMPTÚ	BOT_TOKENr  r  )rû   rX   ry  rz  ro  r–  r¬  rF   r©  rG   Úhandle_chat¸  s@   €

þMr¯  c                  Ã   s@  �t tƒI d H } |  dd¡dkrdnd}|  dd¡dkrdnd}|  dd¡dkr*dnd}|  d	d¡dkr6dnd}ttd
|› �ddd�gtd|› �ddd�td|› �ddd�gtd|› �ddd�gtdddd�tdddd�gtdddd�tdddd�gtdddd�gtd d!dd�gtd"d#dd�gtd$d%dd�td&d'dd�gg	d(�S ))Nro  rg  u   ðŸŸ¢ Ù…Ù�ØªÙˆØ­u   ðŸ”´ Ù…Ù‚Ù�ÙˆÙ„Únotify_blockedõ   âœ…õ   âœ–ï¸�rr  rf  u   Ø­Ø§Ù„Ø© Ø§Ù„Ø¨ÙˆØª údev:toggle_openrM   rN   u   Ø§Ø´Ø¹Ø§Ø± Ø§Ù„Ø­Ø¸Ø± údev:toggle_notify_blku   Ø§Ø´Ø¹Ø§Ø± Ø§Ù„Ø¯Ø®ÙˆÙ„ údev:toggle_notify_newu   Ø§Ø´Ø¹Ø§Ø± Ø§Ù„Ù…Ù…ÙˆÙ„Ø© údev:toggle_notify_fundu   Ù‚Ø³Ù… Ø§Ù„Ø§Ø°Ø§Ø¹Ø©údev:broadcastr÷   u   Ù‚Ø³Ù… Ø§Ù„Ø§Ø­ØµØ§Ø¦ÙŠØ§Øªú	dev:statsu!   Ø§Ù„Ø§Ø´ØªØ±Ø§Ùƒ Ø§Ù„Ø§Ø¬Ø¨Ø§Ø±ÙŠúdev:mandõ   Ù‚Ø³Ù… Ø§Ù„Ø§Ø¯Ù…Ù†ÙŠØ©ú
dev:adminsõ   Ø§Ù„Ù‚Ù†ÙˆØ§Øª Ø§Ù„Ù…Ù…ÙˆÙ„Ø©ú
dev:fundedÚdangeru$   ØªØ¹Ø¯ÙŠÙ„ Ø±Ø³Ø§Ù„Ø© Ø§Ù„ØªØ±Ø­ÙŠØ¨údev:welcomeu   Ø§Ù„Ù†Ù…Ø§Ø°Ø¬ Ø§Ù„Ø­Ø§Ù„ÙŠØ©ú
dev:modelsu   Ø§Ø¶Ø§Ù�Ø© Ø²Ø±úcbtn:addõ   Ø§Ø¯Ø§Ø±Ø© Ø§Ù„Ø§Ø²Ø±Ø§Ø±úcbtn:managerT   )r   rD   r“   r	   r
   )rÆ   Úis_opÚn_blkÚn_newÚn_fundrF   rF   rG   rx  .  s2   €þþþþîrx  ú	dev:panelc                 Ã   sn   �|  ¡ I d H  t| jjƒI d H s| jddd�I d H  d S | jjdddtƒ I d H d�I d H  |  ¡ I d H  d S )Nõ   â›” ØºÙŠØ± Ù…ØµØ±Ø­!TrŠ  u°  Â» <b>Ù‡Ø°Ù‡ Ù‡ÙŠ Ù„ÙˆØ­Ø© Ø§Ù„ØªØ­ÙƒÙ… ÙˆØ§Ù„Ø¥Ø¯Ø§Ø±Ø© Ø¨ÙˆØª Ø§Ù„Ø°ÙƒØ§Ø¡ Ø§Ù„Ø§ØµØ·Ù†Ø§Ø¹ÙŠ Ø§Ù„Ø®Ø§Øµ Ø¨Ùƒ</b>.

Â» <b>Ù„ÙˆØ­Ø© ØªØ­ÙƒÙ… Ù…ØªÙƒØ§Ù…Ù„Ø© ØªØªÙŠØ­ Ù„Ùƒ Ø§Ù„Ø¥Ø´Ø±Ø§Ù� Ø¹Ù„Ù‰ ØµÙ„Ø§Ø­ÙŠØ§Øª Ø§Ù„Ø¨ÙˆØªØŒ Ù…ØªØ§Ø¨Ø¹Ø© Ø§Ù„Ø¥Ø­ØµØ§Ø¦ÙŠØ§Øª Ø§Ù„Ù�ÙˆØ±ÙŠØ© ÙˆØ¥Ø¯Ø§Ø±Ø© Ø§Ù„Ù‚Ù†ÙˆØ§Øª ÙˆÙƒÙ„ Ø´ÙŠØ¡ Ù…Ù† Ù…ÙƒØ§Ù† ÙˆØ§Ø­Ø¯</b>.

Â» <b>Ù‚Ù… Ø¨Ø£Ø®ØªÙŠØ§Ø± Ø§Ù„Ø§Ø¬Ø±Ø§Ø¡ Ø§Ù„Ù…Ø·Ù„ÙˆØ¨ Ù…Ù† Ø§Ù„Ù‚Ø§Ø¦Ù…Ø© Ø§Ø¯Ù†Ø§Ù‡</b>:r{   rt  )rv  rb   r`   r^   r  rû   r†  rx  ©r„  rl  rF   rF   rG   Úcb_dev_panelM  s   €ÿrË  r³  c                 Ã   óŠ   �t | jjƒI d H s| jddd�I d H  d S ttddƒI d H }ttd|dkr(dndƒI d H  | jjt	ƒ I d H d�I d H  |  ¡ I d H  d S )NrÉ  TrŠ  ro  rg  Ú0rV  ©
rb   r`   r^   r  r   rD   r   rû   Úedit_reply_markuprx  ©r„  ÚcurrF   rF   rG   Úcb_toggle_openX  ó   €rÒ  r´  c                 Ã   rÌ  )NrÉ  TrŠ  r°  rg  rÍ  rV  rÎ  rÐ  rF   rF   rG   Úcb_toggle_notify_blkb  rÓ  rÔ  rµ  c                 Ã   rÌ  )NrÉ  TrŠ  rr  rg  rÍ  rV  rÎ  rÐ  rF   rF   rG   Úcb_toggle_notify_newl  rÓ  rÕ  r¶  c                 Ã   rÌ  )NrÉ  TrŠ  rf  rg  rÍ  rV  rÎ  rÐ  rF   rF   rG   Úcb_toggle_notify_fundv  rÓ  rÖ  c                  Ã   sÈ   �t tƒI d H } g g }}| D ]=}|d rdnd}|d }t|ƒdkr+|d d… d }| t|› d|› �d	|d
 › �dd�¡ t|ƒdkrL| |¡ g }q|rT| |¡ | tdddd�g¡ t|d�S )NÚ
is_enabledr±  r²  rð   é   rŠ   z..rÿ   ú	devmodel:ró   rM   rN   rô   rõ   rÈ  r÷   rT   )r   rD   rÖ   rÅ   r
   r	   )Ú
all_modelsrê   rë   râ   Úiconrù   rF   rF   rG   Ú_build_models_kb€  s&   €
þ€

rÜ  rÀ  c                 Ã   s`   �t | jjƒI d H s| jddd�I d H  d S | jjdddtƒ I d H d�I d H  |  ¡ I d H  d S )NrÉ  TrŠ  uß   Â» <b>Ø¹Ø²ÙŠØ²ÙŠ Ø§Ù„Ù…Ø·ÙˆØ± Ù‡Ø°Ù‡ Ù‡ÙŠ Ù‚Ø§Ø¦Ù…Ø© Ø¨Ø¬Ù…ÙŠØ¹ Ø§Ù„Ù†Ù…Ø§Ø°Ø¬ Ø§Ù„Ø­Ø§Ù„ÙŠØ©</b>.
Â» <b>Ù…Ø¹Ø±ÙˆØ¶ Ù�ÙŠ Ù„ÙˆØ­Ø© Ø§Ù„Ù…Ø³ØªØ®Ø¯Ù…ÙŠÙ†</b> = âœ…
Â» <b>Ù…Ø®Ù�ÙŠ Ù…Ù† Ù„ÙˆØ­Ø© Ø§Ù„Ù…Ø³ØªØ®Ø¯Ù…ÙŠÙ†</b> = âœ–ï¸�r{   rt  )rb   r`   r^   r  rû   r†  rÜ  ©r„  rF   rF   rG   Úcb_dev_models“  s   €
ýrÞ  rÙ  c                 Ã   s|   �t | jjƒI d H s| jddd�I d H  d S | jtdƒd … }tt|ƒI d H  | jj	t
ƒ I d H d�I d H  |  ¡ I d H  d S )NrÉ  TrŠ  rÙ  rV  )rb   r`   r^   r  r›   rÖ   r   rD   rû   rÏ  rÜ  )r„  ró   rF   rF   rG   Úcb_toggle_modelŸ  s   €rß  r¸  c              
   Ã   s¤   �t | jjƒI d H s| jddd�I d H  d S ttƒI d H }| jjd|d › d|d › d|d	 › d
|d › d�	ddtt	dddd�ggd�d�I d H  |  ¡ I d H  d S )NrÉ  TrŠ  uq   Â» <b>Ø¹Ø²ÙŠØ²ÙŠ Ø§Ù„Ù…Ø·ÙˆØ± Ù‡Ø°Ø§ Ù‚Ø³Ù… Ø§Ø­ØµØ§Ø¦ÙŠØ§Øª Ø§Ù„Ø¨ÙˆØª</b>:

Â» <b>Ø¹Ø¯Ø¯ Ø§Ù„Ù…Ø³ØªØ®Ø¯Ù…ÙŠÙ†: rŒ   u5    Ù…Ø³ØªØ®Ø¯Ù…</b>
Â» <b>Ø§Ù„Ù†Ø´Ø·ÙˆÙ† Ø­Ø§Ù„ÙŠØ§Ù‹: Úactiveu-    Ù…Ø³ØªØ®Ø¯Ù…</b>

Â» <b>Ø§Ù„Ù…Ø­Ø¶ÙˆØ±ÙŠÙ†: rL  u-    Ù…Ø³ØªØ®Ø¯Ù…</b>
Â» <b>Ø­Ø¸Ø±Ùˆ Ø§Ù„Ø¨ÙˆØª: Úblockedõ    Ù…Ø³ØªØ®Ø¯Ù…</b>r{   rõ   rÈ  r÷   rN   rT   rt  )
rb   r`   r^   r  r#   rD   rû   r†  r	   r
   )r„  rÆ   rF   rF   rG   Úcb_stats©  s   €,ÿýrã  r¿  c              
   Ã   sš   �t | jjƒI d H s| jddd�I d H  d S ttddƒI d H }| tj¡I d H  | j	j
d|p/d› �ddttd	d
dd�ggd�d�I d H  |  ¡ I d H  d S )NrÉ  TrŠ  rÒ   r8   uš   âœ�ï¸� Ø£Ø±Ø³Ù„ Ø±Ø³Ø§Ù„Ø© Ø§Ù„ØªØ±Ø­ÙŠØ¨ Ø§Ù„Ø¬Ø¯ÙŠØ¯Ø©.
ÙŠÙ…ÙƒÙ†Ùƒ Ø§Ø³ØªØ®Ø¯Ø§Ù… <code>{first_name}</code> Ù„Ø§Ø³Ù… Ø§Ù„Ù…Ø³ØªØ®Ø¯Ù….

Ø§Ù„Ø­Ø§Ù„ÙŠØ©:
u   <i>Ø§Ù�ØªØ±Ø§Ø¶ÙŠØ©</i>r{   u   â—€ï¸� Ø±Ø¬ÙˆØ¹rÈ  r÷   rN   rT   rt  )rb   r`   r^   r  r   rD   Ú	set_staterg   rp   rû   r†  r	   r
   )r„  rl  rÑ  rF   rF   rG   Ú
cb_welcome¸  s   €þÿû	rå  c                 Ã   sŒ   �t | jjƒI d H sd S ttd| jp| jpdƒI d H  ttdt| jƒp$dƒI d H  | 	¡ I d H  | j
dttdddd�ggd	�d
�I d H  d S )NrÒ   r8   rÓ   u.   âœ… ØªÙ… ØªØ­Ø¯ÙŠØ« Ø±Ø³Ø§Ù„Ø© Ø§Ù„ØªØ±Ø­ÙŠØ¨.õ    Ù„ÙˆØ­Ø© Ø§Ù„ØªØ­ÙƒÙ…rÈ  r÷   rN   rT   rV  )rb   r`   r^   r   rD   rO   Ú	html_textrÁ   r¿   rv  r  r	   r
   )rû   rl  rF   rF   rG   Úprocess_welcomeÊ  s   €ÿþrè  r·  c                 Ã   sŒ   �t | jjƒI d H s| jddd�I d H  d S | tj¡I d H  | jjdddt	t
dddd	�gt
d
ddd	�ggd�d�I d H  |  ¡ I d H  d S )NrÉ  TrŠ  u  Â» <b>Ø¹Ø²ÙŠØ²ÙŠ Ø§Ù„Ù…Ø·ÙˆØ± Ù‡Ø°Ø§ Ù‡Ùˆ Ù‚Ø³Ù… Ø§Ù„Ø§Ø°Ø§Ø¹Ø© Ø¨Ø§Ù„Ø¨ÙˆØª</b>.

Â» <b>Ø§Ø±Ø³Ù„ Ø±Ø³Ø§Ù„ØªÙƒ Ø§Ù„Ø§Ù† Ù„Ø¹Ù…Ù„ Ø§Ø°Ø§Ø¹Ø© Ù„Ù„Ù…Ø³ØªØ®Ø¯Ù…ÙŠÙ† Ø£Ùˆ Ù‚Ù… Ø¨Ø§Ù„Ø¶ØºØ· Ø¹Ù„Ù‰ Ø²Ø± Ø§Ø°Ø§Ø¹Ø© Ø¨Ø§Ù„ØªÙˆØ¬ÙŠÙ‡ Ø«Ù… Ø§Ø±Ø³Ù„ Ø±Ø³Ø§Ù„Ø© Ù…ÙˆØ¬Ù‡Ø© Ù„Ø§Ø±Ø³Ø§Ù„Ù‡Ø§</b>:r{   u   Ø¥Ø°Ø§Ø¹Ø© Ø¨Ø§Ù„ØªÙˆØ¬ÙŠÙ‡údev:bcast_fwdr÷   rN   rõ   rÈ  rT   rt  )rb   r`   r^   r  rä  rg   rk   rû   r†  r	   r
   rÊ  rF   rF   rG   Úcb_broadcastØ  s   €þýrê  c                 Ã   óN   �t | jjƒI d H sd S | ¡ I d H  |  d¡I d H }t t| |dd�¡ d S )Nõ   â�³ Ø¬Ø§Ø±ÙŠ Ø§Ù„Ø¥Ø°Ø§Ø¹Ø©...F©Úforward©rb   r`   r^   rv  r  r  r  Ú_do_broadcast©rû   rl  r>  rF   rF   rG   Úprocess_broadcastè  ó
   €rò  ré  c              
   Ã   ó~   �t | jjƒI d H s| jddd�I d H  d S | tj¡I d H  | jjdddt	t
dddd	�ggd
�d�I d H  |  ¡ I d H  d S )NrÉ  TrŠ  u[   Â» <b>Ù‚Ù… Ø¨ØªÙˆØ¬ÙŠØ© Ø§Ù„Ø±Ø³Ø§Ù„Ø© Ø§Ù„ØªÙŠ ØªØ±ÙŠØ¯ Ø§Ø°Ø§Ø¹ØªÙ‡Ø§ Ø§Ù„Ø§Ù†</b> ðŸ“¨ :r{   rõ   r·  r÷   rN   rT   rt  )rb   r`   r^   r  rä  rg   rl   rû   r†  r	   r
   rÊ  rF   rF   rG   Úcb_bcast_fwdð  ó   €ÿýrõ  c                 Ã   rë  )Nrì  Trí  rï  rñ  rF   rF   rG   Úprocess_broadcast_fwdÿ  ró  r÷  Fr>  rî  c                 Ã   sf  �t }t}| jj}t|ƒI d H }d }}t|d�}	z�zpt|ƒD ]G\}
}z%|r5|	j|d || jd�I d H  n|	j	|d || jd�I d H  |d7 }W n t
yU   |d7 }Y nw |
d t dkrft t¡I d H  q|r‰|	j||jd|› d|› d�d	d
ttdddd�ggd�d�I d H  W n	 t
y“   Y nw W |	j ¡ I d H  d S W |	j ¡ I d H  d S |	j ¡ I d H  w )Nr   r˜  r^   )Úfrom_chat_idr  r€   u}   Â» <b>ØªÙ… Ø§Ø±Ø³Ø§Ù„ Ø§Ù„Ø§Ø°Ø§Ø¹Ø© Ø§Ù„Ù‰ ÙƒØ§Ù�Ø© Ù…Ø³ØªØ®Ø¯Ù…ÙŠÙ† Ø§Ù„Ø¨ÙˆØª</b>.

Â» <b>Ù†Ø¬Ù€Ø­ Ø§Ù„Ø§Ø±Ø³Ø§Ù„ Ø¥Ù„Ù‰: u6    Ù…Ø³ØªØ®Ø¯Ù…</b>
Â» <b>Ù�Ø´Ù„ Ø§Ù„Ø§Ø±Ø³Ø§Ù„ Ø¥Ù„Ù‰: râ  r{   Tu   Ù„ÙˆØ­Ø© Ø§Ù„ØªØ­ÙƒÙ…rÈ  r÷   rN   rT   )r   r  rO   r}   r~   rW  )rD   r®  r_   r^   r"   r   r¢  Úforward_messager  Úcopy_messagerd   ÚBROADCAST_BATCHr  r  ÚBROADCAST_DELAYr  r	   r
   r†   r¤  )rû   r>  rî  Úunamer«  r   ÚusersÚsentÚfailedrì   r�  ry  rF   rF   rG   rð    sR   €
ÿ€ÿþÿú€
ÿ€þ&rð  c                 Ã   sð   �t tƒI d H }d}g }|D ]2}| d¡rd|d › �n|d }|d|› d|d › d�7 }| td	|› �d
|d › �dd�g¡ q|sG|d7 }|tdddd�gtdddd�tdddd�gtdddd�gg7 }| jj|ddt|d�d�I d H  d S )Nu¬   Â» <b>Ø¹Ø²ÙŠØ²ÙŠ Ø§Ù„Ù…Ø·ÙˆØ± Ù‡Ø°Ø§ Ù‡Ùˆ Ù‚Ø³Ù… Ø§Ù„ØªØ­ÙƒÙ… Ø¨Ø§Ù„Ø§Ø¯Ù…Ù†ÙŠØ©</b>.
Â» <b>ÙŠÙ…ÙƒÙ† Ø§Ø¶Ø§Ù�Ø© ÙˆØ­Ø°Ù� ÙˆØ¹Ø±Ø¶ Ø§Ù„Ø§Ø¯Ù…Ù†ÙŠØ© Ù…Ù† Ø§Ù„Ø§Ø²Ø±Ø§Ø±</b>:
r‘   rQ  rÑ   u   Â» z (<code>r^   z	</code>)
u   ðŸ—‘ údev:del_admin:r¾  rN   u   Ù„Ø§ ÙŠÙˆØ¬Ø¯ Ø£Ø¯Ù…Ù†ÙŠØ©.u   Ø¥Ø¶Ø§Ù�Ø© Ø£Ø¯Ù…Ù†údev:add_adminrM   u   Ø­Ø¸Ø± Ù…Ø³ØªØ®Ø¯Ù…údev:banu   Ø±Ù�Ø¹ Ø§Ù„Ø­Ø¸Ø±ú	dev:unbanrõ   rÈ  r÷   r{   TrT   rt  )r&   rD   r“   rÅ   r
   rû   r†  r	   )r„  ÚadminsrO   rê   Úarù   rF   rF   rG   Ú_render_admins+  s*   € ÿýþr  r»  c                 Ã   óZ   �|  ¡ I d H  t| jjƒI d H s| jddd�I d H  d S t| ƒI d H  |  ¡ I d H  d S ©NrÉ  TrŠ  )rv  rb   r`   r^   r  r  rÊ  rF   rF   rG   Ú	cb_adminsB  ó
   € r
  r  c              
   Ã   rô  )NrÉ  TrŠ  ue   Â» <b>Ø£Ø±Ø³Ù„ Ø£ÙŠØ¯ÙŠ Ø§Ù„Ù…Ø³ØªØ®Ø¯Ù… Ø§Ù„Ø°ÙŠ ØªØ±ÙŠØ¯ Ø§Ø¶Ø§Ù�ØªÙ‡ Ø§Ø¯Ù…Ù† Ù�ÙŠ Ø§Ù„Ø¨ÙˆØª</b>:r{   rõ   r»  r÷   rN   rT   rt  )rb   r`   r^   r  rä  rg   ro   rû   r†  r	   r
   rÊ  rF   rF   rG   Úcb_add_adminJ  rö  r  c              
   Ã   sú   �t | jjƒI d H sd S z	t| j ¡ ƒ}W n ttfy)   |  d¡I d H  Y d S w z| 	|¡I d H }|j
p9t|ƒ|j}}W n tyO   t|ƒd }}Y nw tt|||ƒI d H  | ¡ I d H  | jd|› d�ddttdddd	�ggd
�d�I d H  d S )Nõ%   âš ï¸� Ø£Ø±Ø³Ù„ ID Ø±Ù‚Ù…ÙŠ ØµØ­ÙŠØ­!u-   Â» <b>ØªÙ… Ø§Ø¶Ø§Ù�Ø© Ø§Ù„Ù…Ø³ØªØ®Ø¯Ù… <code>u'   </code> ÙƒØ£Ø¯Ù…Ù† Ù�ÙŠ Ø§Ù„Ø¨ÙˆØª</b>.r{   Trº  r»  r÷   rN   rT   rt  )rb   r`   r^   r6  rO   ÚstripÚ
ValueErrorÚAttributeErrorr  Úget_chatrÑ   rh  r‘   rd   r(   rD   rv  r	   r
   )rû   rl  rX   Úadmin_idÚinfoÚfnÚunrF   rF   rG   Úprocess_add_adminY  s*   €ÿÿÿþr  r  c                 Ã   ór   �t | jjƒI d H s| jddd�I d H  d S ttt| j d¡d ƒƒI d H  | jddd�I d H  t	| ƒI d H  d S )NrÉ  TrŠ  r‰  rô   u   âœ… ØªÙ… Ø­Ø°Ù� Ø§Ù„Ø£Ø¯Ù…Ù†.)
rb   r`   r^   r  r)   rD   r6  r›   rŒ  r  rÝ  rF   rF   rG   Úcb_del_admino  ó   € r  r  c              
   Ã   rô  )NrÉ  TrŠ  ug   Â» <b>Ø£Ø±Ø³Ù„ Ø£ÙŠØ¯ÙŠ Ø§Ù„Ù…Ø³ØªØ®Ø¯Ù… Ø§Ù„Ø°ÙŠ ØªØ±ÙŠØ¯ Ø­Ø¸Ø±Ù‡ Ù…Ù† Ø§Ø³ØªØ®Ø¯Ø§Ù… Ø§Ù„Ø¨ÙˆØª</b>:r{   rõ   r»  r÷   rN   rT   rt  )rb   r`   r^   r  rä  rg   rm   rû   r†  r	   r
   rÊ  rF   rF   rG   Úcb_banx  rö  r  c              
   Ã   sð   �t | jjƒI d H sd S z	t| j ¡ ƒ}W n ttfy)   |  d¡I d H  Y d S w t	t
|ƒI d H }| ¡ I d H  |sE|  d¡I d H  d S tt
ddƒI d H dkr\t|d|› d�ƒI d H  | jd|› d�dd	ttd
ddd�ggd�d�I d H  d S )Nr  uK   âš ï¸� Ø§Ù„Ù…Ø³ØªØ®Ø¯Ù… ØºÙŠØ± Ù…ÙˆØ¬ÙˆØ¯ Ù�ÙŠ Ù‚Ø§Ø¹Ø¯Ø© Ø§Ù„Ø¨ÙŠØ§Ù†Ø§Øª.r°  rg  u(   ðŸš« ØªÙ… Ø­Ø¸Ø± Ø§Ù„Ù…Ø³ØªØ®Ø¯Ù… <code>ú</code>.u   âœ… ØªÙ… Ø­Ø¸Ø± <code>r{   Trõ   r»  r÷   rN   rT   rt  )rb   r`   r^   r6  rO   r  r  r  r  r$   rD   rv  r   r   r	   r
   )rû   rl  rX   Úban_idr‡   rF   rF   rG   Úprocess_ban‡  s&   €ÿÿþr  r  c              
   Ã   rô  )NrÉ  TrŠ  uh   Â» <b>Ø£Ø±Ø³Ù„ Ø£ÙŠØ¯ÙŠ Ø§Ù„Ù…Ø³ØªØ®Ø¯Ù… Ø§Ù„Ø°ÙŠ ØªØ±ÙŠØ¯ Ø±Ù�Ø¹ Ø§Ù„Ø­Ø¸Ø± Ø¹Ù†Ù‡ Ù�ÙŠ Ø§Ù„Ø¨ÙˆØª</b>:r{   rõ   r»  r÷   rN   rT   rt  )rb   r`   r^   r  rä  rg   rn   rû   r†  r	   r
   rÊ  rF   rF   rG   Úcb_unbanœ  rö  r  c              
   Ã   sª   �t | jjƒI d H sd S z	t| j ¡ ƒ}W n ttfy)   |  d¡I d H  Y d S w t	t
|ƒI d H  | ¡ I d H  | jd|› d�ddttdddd	�ggd
�d�I d H  d S )Nr  u&   âœ… ØªÙ… Ø±Ù�Ø¹ Ø§Ù„Ø­Ø¸Ø± Ø¹Ù† <code>r  r{   Trõ   r»  r÷   rN   rT   rt  )rb   r`   r^   r6  rO   r  r  r  r  r%   rD   rv  r	   r
   )rû   rl  ÚuidrF   rF   rG   Úprocess_unban«  s   €ÿÿþr   c              	   Ã   s"  �t tƒI d H }d}g }|D ]X}| d¡rd|d › �n|d }| d¡}|s3| d¡r3d|d › �}|sDt|d ƒ dd	¡}d
|› �}|d|› d|› d�7 }| t|› |dd�tdd|d › �dd�g¡ q|sm|d7 }|tdddd�gtdddd�gg7 }| jj|ddt	|d�d�I d H  d S )Nu­   Â» <b>Ø¹Ø²ÙŠØ²ÙŠ Ø§Ù„Ù…Ø·ÙˆØ± Ù‡Ø°Ø§ Ù‡Ùˆ Ù‚Ø³Ù… Ø§Ù„Ø§Ø´ØªØ±Ø§Ùƒ Ø§Ù„Ø§Ø¬Ø¨Ø§Ø±ÙŠ</b>.
Â» <b>ÙŠÙ…ÙƒÙ† Ø§Ø¶Ø§Ù�Ø© ÙˆØ­Ø°Ù� ÙˆØ¹Ø±Ø¶ Ø§Ù„Ù‚Ù†ÙˆØ§Øª Ù…Ù† Ø§Ù„Ø§Ø²Ø±Ø§Ø±</b>:

rN  rQ  rR  rM  r�   rI  ú-100r8   úhttps://t.me/c/õ   â€¢ <a href='rX  z</a>
rM   ©rO   rœ   rQ   õ   ðŸ—‘údev:del_mand:r^   r¾  rN   õ   Ù„Ø§ ØªÙˆØ¬Ø¯ Ù‚Ù†ÙˆØ§Øª.u   Ø¥Ø¶Ø§Ù�Ø© Ù‚Ù†Ø§Ø©údev:add_mandrõ   rÈ  r÷   r{   TrT   rt  )
r*   rD   r“   rh  r¤   rÅ   r
   rû   r†  r	   ©r„  r`  rO   rê   ra  rù   rÙ   ÚcidrF   rF   rG   Ú_render_mand»  s6   € 

þþþr+  r¹  c                 Ã   r  r	  )rv  rb   r`   r^   r  r+  rÊ  rF   rF   rG   Úcb_mandÛ  r  r,  r(  c                 Ã   ó†   �t | jjƒI d H s| jddd�I d H  d S | jjdddttdddd	�td
ddd	�gtdddd	�ggd�d�I d H  |  ¡ I d H  d S )NrÉ  TrŠ  õr   Â» <b>Ø§Ø®ØªØ± Ø§Ù„Ø·Ø±ÙŠÙ‚Ø© Ø§Ù„ØªÙŠ ØªØ±ÙŠØ¯ Ø¹Ø±Ø¶ Ø·Ù„Ø¨ Ø§Ù„Ø§Ø´ØªØ±Ø§Ùƒ Ù�ÙŠÙ‡Ø§ Ù…Ù† Ø§Ù„Ù…Ø³ØªØ®Ø¯Ù…</b>:r{   õ
   Ø§Ø²Ø±Ø§Ø±zmand_type:buttonsrM   rN   õ   Ø±Ø³Ø§Ù„Ø© Ù†ØµÙŠØ©zmand_type:textrõ   r¹  r÷   rT   rt  ©rb   r`   r^   r  rû   r†  r	   r
   rÊ  rF   rF   rG   Úcb_add_mandã  ó   €þûýr2  z
mand_type:c              
   Ã   ór   �|j | j d¡d d�I d H  | tj¡I d H  | jjdddtt	ddd	d
�ggd�d�I d H  |  
¡ I d H  d S )Nr‰  r€   )Úmand_display_typeõÐ   Â» <b>Ù…Ù…ØªØ§Ø²ØŒ Ø§Ù„Ø§Ù† Ù‚Ù… Ø¨ØªÙˆØ¬ÙŠÙ‡ Ø±Ø³Ø§Ù„Ø© Ù…Ù† Ø§Ù„Ù‚Ù†Ø§Ø©/Ø§Ù„Ù…Ø¬Ù…ÙˆØ¹Ø© Ù„Ø§Ø¶Ø§Ù�ØªÙ‡Ø§</b>.
âš ï¸� <b>ÙŠØ¬Ø¨ Ø§Ù† ÙŠÙƒÙˆÙ† Ø§Ù„Ø¨ÙˆØª Ù…Ø´Ø±Ù�Ø§Ù‹ Ù�ÙŠ Ø§Ù„Ù‚Ù†Ø§Ø©/Ø§Ù„Ù…Ø¬Ù…ÙˆØ¹Ø©</b>.r{   Trõ   r¹  r÷   rN   rT   rt  )Úupdate_datar›   rŒ  rä  rg   rq   rû   r†  r	   r
   r  rÊ  rF   rF   rG   Úcb_mand_typeõ  ó   €ÿýr8  c              
   Ã   s’  �t | jjƒI d H sd S | js|  d¡I d H  d S | j}z+| ¡ I d H }| |j|j¡I d H }|jdvrF|  d¡I d H  | ¡ I d H  W d S W n t	y`   |  d¡I d H  | ¡ I d H  Y d S w |j
rjd|j
› �nd }|s„z| |j¡I d H j}W n	 t	yƒ   Y nw | ¡ I d H }ttt|jƒ|jp˜t|jƒ|j
|| dd¡ƒI d H  | ¡ I d H  | jd|j› d	�d
dttdddd�ggd�d�I d H  d S )Nõ?   âš ï¸� ÙŠØ±Ø¬Ù‰ ØªÙˆØ¬ÙŠÙ‡ Ø±Ø³Ø§Ù„Ø© Ù…Ù† Ø§Ù„Ù‚Ù†Ø§Ø© Ù�Ù‚Ø·!©ÚadministratorÚcreatorõL   âš ï¸� ÙŠØ¬Ø¨ Ø¥Ø¶Ø§Ù�Ø© Ø§Ù„Ø¨ÙˆØª ÙƒÙ…Ø´Ø±Ù� Ù�ÙŠ Ø§Ù„Ù‚Ù†Ø§Ø© Ø£ÙˆÙ„Ø§Ù‹!õ/   âš ï¸� Ù„Ø§ ÙŠÙ…ÙƒÙ† Ø§Ù„ÙˆØµÙˆÙ„ Ù„Ù„Ù‚Ù†Ø§Ø©.r�   r5  rP  u&   âœ… ØªÙ…Øª Ø¥Ø¶Ø§Ù�Ø© Ø§Ù„Ù‚Ù†Ø§Ø© <b>z</b>.r{   Tu!   Ø§Ù„Ø§Ø´ØªØ±Ø§Ùƒ Ø§Ù„Ø¥Ø¬Ø¨Ø§Ø±ÙŠr¹  r÷   rN   rT   rt  )rb   r`   r^   Úforward_from_chatr  Úget_mer[  r5  rv  rd   r‘   Úcreate_chat_invite_linkrM  Úget_datar+   rD   rh  Útitler“   r	   r
   )rû   rl  rX   r_   ÚmeÚmbrÙ   rÉ   rF   rF   rG   Úprocess_mand_fwd  s@   €
þ$ÿ
þÿþrG  r&  c                 Ã   r  ©NrÉ  TrŠ  r‰  rô   u   âœ… ØªÙ… Ø­Ø°Ù� Ø§Ù„Ù‚Ù†Ø§Ø©.)
rb   r`   r^   r  r,   rD   r6  r›   rŒ  r+  rÝ  rF   rF   rG   Úcb_del_mand$  r  rI  c                 Ã   s6  �t tƒI d H }d}g }|D ]b}| d¡rd|d › �n|d }| d¡}|s3| d¡r3d|d › �}|sDt|d ƒ dd	¡}d
|› �}|d|› d|› d|d › d|d › d�	7 }| t|› |dd�tdd|d › �dd�g¡ q|sw|d7 }|tdddd�gtdddd�gg7 }| jj|dd t	|d!�d"�I d H  d S )#Nu§  Â» <b>Ø¹Ø²ÙŠØ²ÙŠ Ø§Ù„Ù…Ø·ÙˆØ± Ù‡Ø°Ø§ Ù‡Ùˆ Ù‚Ø³Ù… ØªÙ…ÙˆÙŠÙ„ Ø§Ù„Ù‚Ù†ÙˆØ§Øª</b>.

Â» <b>Ù‡Ø°Ø§ Ø§Ù„Ù‚Ø³Ù… Ù…Ø®ØªØµ Ù�ÙŠ Ø§Ø¬Ø±Ø§Ø¡ ØªÙ…ÙˆÙŠÙ„ Ù„Ù‚Ù†Ø§Ø© Ø§Ù†Øª Ù…Ù† ÙŠØ­Ø¯Ø¯Ù‡Ø§ Ø­ÙŠØ« Ø³ÙŠØ·Ù„Ø¨ Ø§Ù„Ø¨ÙˆØª Ù…Ù† Ø§Ù„Ù…Ø³ØªØ®Ø¯Ù…ÙŠÙ† Ø§Ù„Ø§Ø´ØªØ±Ø§Ùƒ Ù�ÙŠ Ù‡Ø°Ù‡ Ø§Ù„Ù‚Ù†Ø§Ø©ØŒ Ø¹Ù†Ø¯ Ø§ÙƒØªÙ…Ø§Ù„ Ø§Ù„Ø¹Ø¯Ø¯ Ø§Ù„Ù…Ø·Ù„ÙˆØ¨ Ø§Ù„Ø°ÙŠ ØªØ­Ø¯Ø¯Ù‡ Ø§Ù†Øª Ø³ÙŠØªÙ… Ø§Ø²Ø§Ù„Ø© Ø§Ù„Ù‚Ù†Ø§Ø© Ù…Ù† Ø§Ù„Ù‚Ù†ÙˆØ§Øª Ø§Ù„Ù…Ù…ÙˆÙ„Ø©</b>.

rN  rQ  rR  rM  r�   rI  r!  r8   r"  r#  rX  z</a> (Úcurrent_countrÔ   Útarget_countz)
rM   r$  r%  údev:del_funded:r^   r¾  rN   r'  u   Ø§Ø¶Ø§Ù�Ø© Ù‚Ù†Ø§Ø©údev:add_fundedrõ   rÈ  r÷   r{   TrT   rt  )
r-   rD   r“   rh  r¤   rÅ   r
   rû   r†  r	   r)  rF   rF   rG   Ú_render_funded-  s6   € 

*þþþrN  r½  c                 Ã   r  r	  )rv  rb   r`   r^   r  rN  rÊ  rF   rF   rG   Ú	cb_fundedL  r  rO  rM  c                 Ã   r-  )NrÉ  TrŠ  r.  r{   r/  zfunded_type:buttonsrM   rN   r0  zfunded_type:textrõ   r½  r÷   rT   rt  r1  rÊ  rF   rF   rG   Úcb_add_fundedT  r3  rP  zfunded_type:c              
   Ã   r4  )Nr‰  r€   )Úfunded_display_typer6  r{   Trõ   r½  r÷   rN   rT   rt  )r7  r›   rŒ  rä  rg   rr   rû   r†  r	   r
   r  rÊ  rF   rF   rG   Úcb_funded_typef  r9  rR  c              
   Ã   s€  �t | jjƒI d H sd S | js|  d¡I d H  d S | j}z+| ¡ I d H }| |j|j¡I d H }|jdvrF|  d¡I d H  | ¡ I d H  W d S W n t	y`   |  d¡I d H  | ¡ I d H  Y d S w |j
rjd|j
› �nd }|s„z| |j¡I d H j}W n	 t	yƒ   Y nw |jt|jƒ|jp‘t|jƒ|j
|d�I d H  | tj¡I d H  | jd|j› d�d	d
ttdddd�ggd�d�I d H  d S )Nr:  r;  r>  r?  r�   )Úfunded_chat_idÚfunded_titleÚfunded_usernameÚfunded_inviteu   Â» <b>Ø§Ù„Ù‚Ù†Ø§Ø©</b>: uQ   
Â» <b>Ù‚Ù… Ø¨Ø¥Ø±Ø³Ø§Ù„ Ø¹Ø¯Ø¯ Ø§Ù„Ù…Ø´ØªØ±ÙƒÙŠÙ† Ø§Ù„Ù…Ø³ØªÙ‡Ø¯Ù� Ø§Ù„Ø§Ù†</b>:r{   Trõ   r½  r÷   rN   rT   rt  )rb   r`   r^   r@  r  rA  r[  r5  rv  rd   r‘   rB  rM  r7  rh  rD  rä  rg   rs   r	   r
   )rû   rl  rX   r_   rE  rF  rÙ   rF   rF   rG   Úprocess_funded_fwdt  s@   €
þ$ÿþÿýrW  c              
   Ã   sô   �t | jjƒI d H sd S zt| j ¡ ƒ}|dkrt‚W n ttfy/   |  d¡I d H  Y d S w | 	¡ I d H }t
t|d |d | d¡| d¡| dd¡|ƒI d H  | ¡ I d H  | jd	|d › d
|› d�ddttdddd�ggd�d�I d H  d S )Nr   u=   âš ï¸� Ø£Ø±Ø³Ù„ Ø±Ù‚Ù…Ø§Ù‹ ØµØ­ÙŠØ­Ø§Ù‹ Ø£ÙƒØ¨Ø± Ù…Ù† ØµÙ�Ø±!rS  rT  rU  rV  rQ  rP  u$   Â» <b>ØªÙ… Ø§Ø¶Ø§Ù�Ø© Ø§Ù„Ù‚Ù†Ø§Ø©: u#    Ø¨Ù†Ø¬Ø§Ø­</b>.
Â» <b>Ø§Ù„Ù‡Ø¯Ù�: u    Ø¹Ø¶Ùˆ</b>r{   Tr¼  r½  r÷   rN   rT   rt  )rb   r`   r^   r6  rO   r  r  r  r  rC  r.   rD   r“   rv  r	   r
   )rû   rl  rk  rÉ   rF   rF   rG   Úprocess_funded_count•  s,   €ÿ
ýÿýrX  rL  c                 Ã   r  rH  )
rb   r`   r^   r  r/   rD   r6  r›   rŒ  rN  rÝ  rF   rF   rG   Úcb_del_funded­  r  rY  rì   c                 C   sº   |   d¡pd}|   d¡}|r|› d|› �}d|i}| d dkr&| d |d< n	d	| d
 › �|d< |   d¡}|rK|dkrKddddœ}|  |¡}|rK||d< |   d¡rV| d |d< tdi |¤ŽS )Nr�  r8   Úemojirÿ   rO   Úbtn_typerœ   r#  úcbtn:press:r^   rP   ÚcolorÚdefaultrM   r÷   r¾  )ÚgreenÚblueÚredrQ   r¶   Úicon_custom_emoji_idrF   )r“   r
   )rì   r�  rZ  rÊ   r]  Ú	style_mapÚtgrF   rF   rG   ræ   ¶  s"   



ræ   rÁ  Úcallbackc                 Ã   s–   �t | jjƒI d H s| jddd�I d H  d S | ¡ I d H  | jjdddttdddd	�gtd
ddd	�gtdddd	�ggd�d�I d H  |  ¡ I d H  d S )NrÉ  TrŠ  u¡   Â» Ù‚Ù… Ø¨Ø£Ø®ØªÙŠØ§Ø± Ù†ÙˆØ¹ Ø§Ù„Ø²Ø± Ø§Ù„Ø°ÙŠ Ø³ÙŠØ¸Ù‡Ø± Ù„Ù„Ù…Ø³ØªØ®Ø¯Ù…ØŒ ÙŠÙ�Ù…ÙƒÙ† Ø§Ù† ÙŠÙƒÙˆÙ† Ø±Ø§Ø¨Ø· Ø£Ùˆ ÙƒØ§Ù„Ø¨Ø§ÙƒØŒ Ø§Ø®ØªØ± Ù…Ù† Ø§Ù„Ø§Ø²Ø±Ø§Ø±:r{   u   url - Ø±Ø§Ø¨Ø·zcbtn:type:urlrM   rN   u   callback - ÙƒØ§Ù„Ø¨Ø§Ùƒzcbtn:type:callbackrõ   rÈ  r÷   rT   rt  )	rb   r`   r^   r  rv  rû   r†  r	   r
   )re  rl  rF   rF   rG   Úcbtn_addË  s   €ýý	rf  z
cbtn:type:c              
   Ã   s    �t | jjƒI d H s| jddd�I d H  d S | j d¡d }|j|d�I d H  | tj	¡I d H  | j
jdddttd	d
dd�ggd�d�I d H  |  ¡ I d H  d S )NrÉ  TrŠ  r‰  rô   )Ú	cbtn_typeuA   Â» Ø£Ø±Ø³Ù„ Ø§Ø³Ù… Ø§Ù„Ø²Ø± Ø§Ù„Ø°ÙŠ Ø³ÙŠØ¸Ù‡Ø± Ù„Ù„Ù…Ø³ØªØ®Ø¯Ù…:r{   rõ   rÁ  r÷   rN   rT   rt  )rb   r`   r^   r  r›   rŒ  r7  rä  rg   rt   rû   r†  r	   r
   )re  rl  r[  rF   rF   rG   rg  Ü  s   €ÿýrg  c              
   Ã   sÞ   �t | jjƒI d H sd S | jr| j d¡r| ¡ I d H  d S | jp"d ¡ }|s1|  d¡I d H  d S | ¡ I d H }| 	d¡}|j
|d�I d H  | tj¡I d H  |dkrUdnd}| j|d	d
ttdddd�ggd�d�I d H  d S )NrÔ   r8   u1   âš ï¸� Ø£Ø±Ø³Ù„ Ø§Ø³Ù…Ø§Ù‹ ØµØ­ÙŠØ­Ø§Ù‹ Ù„Ù„Ø²Ø±!rg  )Ú
cbtn_labelrœ   u"   Â» Ø£Ø±Ø³Ù„ Ø§Ù„Ø±Ø§Ø¨Ø· Ø§Ù„Ø¢Ù†:u^   Â» Ø£Ø±Ø³Ù„ Ø§Ù„Ø±Ø³Ø§Ù„Ø© Ø§Ù„Ù†ØµÙŠØ© Ø§Ù„ØªÙŠ Ø³ØªØ¸Ù‡Ø± Ø¹Ù†Ø¯ Ø§Ù„Ø¶ØºØ· Ø¹Ù„Ù‰ Ø§Ù„Ø²Ø±:r{   Trõ   rÁ  r÷   rN   rT   rt  )rb   r`   r^   rO   r¡  rv  r  r  rC  r“   r7  rä  rg   ru   r	   r
   )rû   rl  r�  r›   r[  ÚpromptrF   rF   rG   Úcbtn_process_labelí  s$   €
ÿþrj  c              
   Ã   s  �t | jjƒI d H sd S | jr| j d¡r| ¡ I d H  d S | jp"d ¡ }| ¡ I d H }| d¡}| d¡}|dkrS| d¡sS| d¡sS| d¡sS|  	d	¡I d H  d S |s_|  	d
¡I d H  d S t
t|||ƒI d H  | ¡ I d H  | j	dddttdddd�ggd�d�I d H  d S )NrÔ   r8   rg  rh  rœ   úhttp://úhttps://útg://uM   âš ï¸� Ø£Ø±Ø³Ù„ Ø±Ø§Ø¨Ø·Ø§Ù‹ ØµØ­ÙŠØ­Ø§Ù‹ ÙŠØ¨Ø¯Ø£ Ø¨Ù€ https:// Ø£Ùˆ http://õ   âš ï¸� Ø§Ù„Ù…Ø­ØªÙˆÙ‰ Ù�Ø§Ø±Øº!uW   âœ… ØªÙ…Øª Ø¥Ø¶Ø§Ù�Ø© Ø§Ù„Ø²Ø± Ø¨Ù†Ø¬Ø§Ø­ØŒ ÙˆØ³ÙŠØ¸Ù‡Ø± Ù„Ù„Ù…Ø³ØªØ®Ø¯Ù…ÙŠÙ† Ø§Ù„Ø¢Ù†.r{   Træ  rÈ  r÷   rN   rT   rt  )rb   r`   r^   rO   r¡  rv  r  rC  r“   r  r3   rD   r	   r
   )rû   rl  r#  r›   r[  r�  rF   rF   rG   Úcbtn_process_content  s.   €

ÿýro  rÃ  c                 Ã   sº   �t | jjƒI d H s| jddd�I d H  d S | ¡ I d H  ttƒI d H }|s2| jddd�I d H  d S dd„ |D ƒ}| tddd	d
�g¡ | j	j
dddt|d�d�I d H  |  ¡ I d H  d S )NrÉ  TrŠ  u$   Ù„Ø§ ØªÙˆØ¬Ø¯ Ø£Ø²Ø±Ø§Ø± Ù…Ø¶Ø§Ù�Ø©.c                 S   s*   g | ]}t |d  d|d › �dd�g‘qS )r�  ú
cbtn:view:r^   rM   rN   )r
   )r»   rì   rF   rF   rG   r½   $  s   * zcbtn_manage.<locals>.<listcomp>rõ   rÈ  r÷   rN   uD   Ø¹Ø²ÙŠØ²ÙŠ Ø§Ù„Ù…Ø·ÙˆØ± Ø§Ø®ØªØ± Ø§Ù„Ø²Ø± Ø§Ù„Ù…Ø±Ø§Ø¯ Ø§Ø¯Ø§Ø±ØªÙ‡:r{   rT   rt  )rb   r`   r^   r  rv  r4   rD   rÅ   r
   rû   r†  r	   )re  rl  rP  rê   rF   rF   rG   Úcbtn_manage  s   €ýrq  Úbtn_idc                 Ã   s  �t t|ƒI d H }|s| jddd�I d H  d S | dd¡rdnd}| jjd|d	 › d
|› d�ddttdd|› �dd�gtdd|› �dd�gtdd|› �dd�gtdd|› �dd�gtdd|› �dd�gtdd|› �dd�gtdddd�ggd�d �I d H  |  ¡ I d H  d S )!Nõ   Ø§Ù„Ø²Ø± ØºÙŠØ± Ù…ÙˆØ¬ÙˆØ¯.TrŠ  rå   r€   u   Ø¸Ø§Ù‡Ø± âœ…u   Ù…Ø®Ù�ÙŠ ðŸš«u   Ø§Ø³Ù… Ø§Ù„Ø²Ø±: <b>r�  u   </b>
Ø§Ù„Ø­Ø§Ù„Ø©: uF   

Ø¹Ø²ÙŠØ²ÙŠ Ø§Ù„Ù…Ø·ÙˆØ± ÙŠÙ…ÙƒÙ†Ùƒ Ø§Ø¯Ø§Ø±Ø© Ø§Ù„Ø²Ø± Ø§Ù„Ù…Ø¶Ø§Ù�:r{   u   ðŸ—‘ Ø­Ø°Ù� Ø§Ù„Ø²Ø±ú	cbtn:del:r¾  rN   u%   âœ�ï¸� ØªØ¹Ø¯ÙŠÙ„ Ù…Ø­ØªÙˆÙ‰ Ø§Ù„Ø²Ø±ú
cbtn:edit:rM   u   ðŸ“� ØªØ¹Ø¯ÙŠÙ„ Ø§Ø³Ù… Ø§Ù„Ø²Ø±úcbtn:ename:u   ðŸŽ¨ ØªØ¹Ø¯ÙŠÙ„ Ù„ÙˆÙ† Ø§Ù„Ø²Ø±úcbtn:ecolor:u%   ðŸ˜€ ØªØ¹Ø¯ÙŠÙ„ Ø§ÙŠÙ…ÙˆØ¬ÙŠ Ø§Ù„Ø²Ø±úcbtn:eemoji:u#   ðŸ‘� Ø§Ø®Ù�Ø§Ø¡/Ø§Ø¸Ù‡Ø§Ø± Ø§Ù„Ø²Ø±úcbtn:toggle:r÷   rõ   rÃ  rT   rt  )r5   rD   r  r“   rû   r†  r	   r
   )re  rr  rì   ÚvisrF   rF   rG   Ú_cbtn_view_render.  s&   €ùür{  rp  c                 Ã   sP   �t | jjƒI d H s| jddd�I d H  d S t| t| j d¡d ƒƒI d H  d S )NrÉ  TrŠ  r‰  rô   )rb   r`   r^   r  r{  r6  r›   rŒ  )re  rF   rF   rG   Ú	cbtn_viewD  s   €$r|  rt  c                 Ã   sx   �t | jjƒI d H s| jddd�I d H  d S t| j d¡d ƒ}tt|ƒI d H  | jddd�I d H  t	| |ƒI d H  d S )NrÉ  TrŠ  r‰  rô   u   âœ… ØªÙ… Ø­Ø°Ù� Ø§Ù„Ø²Ø±.)
rb   r`   r^   r  r6  r›   rŒ  r7   rD   rq  ©re  rl  rr  rF   rF   rG   Úcbtn_delK  s   €r~  ry  c                 Ã   s¼   �t | jjƒI d H s| jddd�I d H  d S t| j d¡d ƒ}tt|ƒI d H }|s6| jddd�I d H  d S | 	dd¡r>d	nd}t
t||d
�I d H  | jddd�I d H  t| |ƒI d H  d S )NrÉ  TrŠ  r‰  rô   rs  rå   r€   r   )rå   u	   âœ… ØªÙ….F)rb   r`   r^   r  r6  r›   rŒ  r5   rD   r“   r6   r{  )re  rr  rì   Únew_visrF   rF   rG   Úcbtn_toggleU  s   €r€  rw  c                 Ã   sØ   �t | jjƒI d H s| jddd�I d H  d S t| j d¡d ƒ}| jjdddt	t
dd	|› d
�dd�t
dd	|› d�dd�gt
dd	|› d�dd�t
dd	|› d�d�gt
dd|› �dd�ggd�d�I d H  |  ¡ I d H  d S )NrÉ  TrŠ  r‰  rô   u   ðŸŽ¨ Ø§Ø®ØªØ± Ù„ÙˆÙ† Ø§Ù„Ø²Ø±:r{   u   ðŸŸ¢ Ø£Ø®Ø¶Ø±úcbtn:setcolor:z:greenrM   rN   u   ðŸ”µ Ø£Ø²Ø±Ù‚z:bluer÷   u   ðŸ”´ Ø£Ø­Ù…Ø±z:redr¾  u   âšª Ø§Ù�ØªØ±Ø§Ø¶ÙŠz:defaultrU  rõ   rp  rT   rt  )rb   r`   r^   r  r6  r›   rŒ  rû   r†  r	   r
   )re  rr  rF   rF   rG   Úcbtn_ecolorc  s$   €ÿÿûýr‚  r�  c                 Ã   sˆ   �t | jjƒI d H s| jddd�I d H  d S | j d¡}t|d ƒ}|d }tt||d�I d H  | jdd	d�I d H  t	| |ƒI d H  d S )
NrÉ  TrŠ  r‰  rô   r  )r]  u   âœ… ØªÙ… ØªØºÙŠÙŠØ± Ø§Ù„Ù„ÙˆÙ†.F)
rb   r`   r^   r  r›   rŒ  r6  r6   rD   r{  )re  Úpartsrr  r]  rF   rF   rG   Úcbtn_setcolorv  s   €r„  rx  c              
   Ã   óª   �t | jjƒI d H s| jddd�I d H  d S t| j d¡d ƒ}|j|d�I d H  | t	j
¡I d H  | jjdddttd	d
|› �dd�ggd�d�I d H  |  ¡ I d H  d S )NrÉ  TrŠ  r‰  rô   )Úcbtn_emoji_idu‰   ðŸ˜€ Ø£Ø±Ø³Ù„ Ø§Ù„Ø¥ÙŠÙ…ÙˆØ¬ÙŠ Ø§Ù„Ø¬Ø¯ÙŠØ¯ (Ø¹Ø§Ø¯ÙŠ Ø£Ùˆ Ù…ØªØ­Ø±Ùƒ Ù…Ù…ÙŠØ²)ØŒ Ø£Ùˆ Ø£Ø±Ø³Ù„ <code>-</code> Ù„Ø­Ø°Ù� Ø§Ù„Ø¥ÙŠÙ…ÙˆØ¬ÙŠ:r{   rõ   rp  r÷   rN   rT   rt  )rb   r`   r^   r  r6  r›   rŒ  r7  rä  rg   rx   rû   r†  r	   r
   r}  rF   rF   rG   Úcbtn_eemoji�  ó   €ÿýr‡  c              	   Ã   sb  �t | jjƒI d H sd S | jr| j d¡r| ¡ I d H  d S | ¡ I d H }| d¡}| jp.d ¡ }|dkr^t	t
|d d d�I d H  | ¡ I d H  | jddttdd	d
d�ggd�d�I d H  d S d }| jrs| jD ]}|jdkrr|j} nqf|rƒt	t
||d d�I d H  d}nt	t
||d d�I d H  d|› �}| ¡ I d H  | j|dttdd	d
d�ggd�d�I d H  d S )NrÔ   r†  r8   ú-)rZ  r¶   u!   âœ… ØªÙ… Ø­Ø°Ù� Ø§Ù„Ø¥ÙŠÙ…ÙˆØ¬ÙŠ.r{   rÂ  rÃ  r÷   rN   rT   ©r}   rW  rÌ   )r¶   rZ  u?   âœ… ØªÙ… ØªØ¹ÙŠÙŠÙ† Ø§Ù„Ø¥ÙŠÙ…ÙˆØ¬ÙŠ Ø§Ù„Ù…ØªØ­Ø±Ùƒ Ø¨Ù†Ø¬Ø§Ø­!u&   âœ… ØªÙ… ØªØ¹ÙŠÙŠÙ† Ø§Ù„Ø¥ÙŠÙ…ÙˆØ¬ÙŠ: )rb   r`   r^   rO   r¡  rv  rC  r“   r  r6   rD   r  r	   r
   r¿   ra   r¶   )rû   rl  r›   rr  rO   r¶   r¼   r  rF   rF   rG   Úcbtn_process_emoji’  s<   €
ÿ

þ
ÿr‹  rv  c              
   Ã   r…  )NrÉ  TrŠ  r‰  rô   )Úcbtn_ename_idu/   ðŸ“� Ø£Ø±Ø³Ù„ Ø§Ù„Ø§Ø³Ù… Ø§Ù„Ø¬Ø¯ÙŠØ¯ Ù„Ù„Ø²Ø±:r{   rõ   rp  r÷   rN   rT   rt  )rb   r`   r^   r  r6  r›   rŒ  r7  rä  rg   ry   rû   r†  r	   r
   r}  rF   rF   rG   Ú
cbtn_ename±  rˆ  r�  c              	   Ã   sÊ   �t | jjƒI d H sd S | jr| j d¡r| ¡ I d H  d S | jp"d ¡ }|s1|  d¡I d H  d S | ¡ I d H }| 	d¡}t
t||d�I d H  | ¡ I d H  | jddttdd	d
d�ggd�d�I d H  d S )NrÔ   r8   u(   âš ï¸� Ø£Ø±Ø³Ù„ Ø§Ø³Ù…Ø§Ù‹ ØµØ­ÙŠØ­Ø§Ù‹!rŒ  )r�  u$   âœ… ØªÙ… ØªØ¹Ø¯ÙŠÙ„ Ø§Ø³Ù… Ø§Ù„Ø²Ø±.r{   rÂ  rÃ  r÷   rN   rT   rŠ  )rb   r`   r^   rO   r¡  rv  r  r  rC  r“   r6   rD   r	   r
   )rû   rl  r�  r›   rr  rF   rF   rG   Úcbtn_process_nameÂ  s   €
ÿrŽ  ru  c              
   Ã   sð   �t | jjƒI d H s| jddd�I d H  d S t| j d¡d ƒ}tt|ƒI d H }|s6| jddd�I d H  d S |j	||d d�I d H  | 
tj¡I d H  |d d	krSd
nd}| jj|ddttdd|› �dd�ggd�d�I d H  |  ¡ I d H  d S )NrÉ  TrŠ  r‰  rô   rs  r[  )Úcbtn_edit_idÚcbtn_edit_typerœ   u&   Â» Ø£Ø±Ø³Ù„ Ø§Ù„Ø±Ø§Ø¨Ø· Ø§Ù„Ø¬Ø¯ÙŠØ¯:u7   Â» Ø£Ø±Ø³Ù„ Ø§Ù„Ø±Ø³Ø§Ù„Ø© Ø§Ù„Ù†ØµÙŠØ© Ø§Ù„Ø¬Ø¯ÙŠØ¯Ø©:r{   rõ   rp  r÷   rN   rT   rt  )rb   r`   r^   r  r6  r›   rŒ  r5   rD   r7  rä  rg   rw   rû   r†  r	   r
   )re  rl  rr  rì   ri  rF   rF   rG   Ú	cbtn_editÒ  s"   €ÿþr‘  c              	   Ã   s  �t | jjƒI d H sd S | jr| j d¡r| ¡ I d H  d S | jp"d ¡ }| ¡ I d H }| d¡}| d¡}|dkrS| d¡sS| d¡sS| d¡sS|  	d	¡I d H  d S |s_|  	d
¡I d H  d S t
t||d�I d H  | ¡ I d H  | j	ddttdddd�ggd�d�I d H  d S )NrÔ   r8   r�  r�  rœ   rk  rl  rm  u*   âš ï¸� Ø£Ø±Ø³Ù„ Ø±Ø§Ø¨Ø·Ø§Ù‹ ØµØ­ÙŠØ­Ø§Ù‹!rn  )r#  u3   âœ… ØªÙ… ØªØ¹Ø¯ÙŠÙ„ Ù…Ø­ØªÙˆÙ‰ Ø§Ù„Ø²Ø± Ø¨Ù†Ø¬Ø§Ø­.r{   rÂ  rÃ  r÷   rN   rT   rŠ  )rb   r`   r^   rO   r¡  rv  r  rC  r“   r  r6   rD   r	   r
   )rû   rl  r#  r›   r[  rr  rF   rF   rG   Úcbtn_process_edit_contentæ  s"   €

&ÿr’  r\  c              
   Ã   s†   �t | j d¡d ƒ}tt|ƒI d H }|s!| jddd�I d H  d S | jj|d ddtt	dd	d
d�ggd�d�I d H  |  ¡ I d H  d S )Nr‰  rô   u)   Ù‡Ø°Ø§ Ø§Ù„Ø²Ø± Ù„Ù… ÙŠØ¹Ø¯ Ù…ØªØ§Ø­Ø§Ù‹.TrŠ  r#  r{   rõ   rö   r÷   rN   rT   rt  )
r6  r›   rŒ  r5   rD   r  rû   r†  r	   r
   )re  rr  rì   rF   rF   rG   Ú
cbtn_pressù  s   €ÿýr“  Ú_ai_dispatcherc                  C   s0   t d u rtƒ } t| d�a t  t¡ t  t¡ t S )N©Ústorage)r”  r   r   Úinclude_routerÚ
dev_routerÚrouterr•  rF   rF   rG   Úget_ai_dispatcher  s   


rš  )r  )NF)Õr  Úloggingr”   Úaiogramr   r   r   r   r   rÃ   r   r   r	   r
   Úaiogram.filtersr   r   Úaiogram.fsm.contextr   Úaiogram.fsm.stater   r   Úaiogram.fsm.storage.memoryr   Úaiogram.enumsr   r   Úaiogram.exceptionsr   r£   r   ÚsysÚosÚpathÚinsertÚdirnameÚabspathÚ__file__r¡   r   r   r�   r¢   r   Úcobots.ai.dbr   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   Ú	getLoggerrh   r  r®  rD   rw  rz   r’   r9   ÚdictÚ__annotations__r2  rD  r4  rE  r­  rû  rü  r<   Útupler6  rH   rJ   rV   r™  r˜  Úmy_chat_memberÚChatMemberUpdatedrf   rg   Úboolrb   rh  r   r‰   r�   rµ   rÁ   rË   rÐ   rÞ   rí   rú   ÚTaskr  Úlistr?  rH  re  r\  rû   r~  r�  rƒ  Úcallback_queryr›   r‡  rˆ  r¡  rŽ  r’  rO   r¯  rx  rË  rÒ  rÔ  rÕ  rÖ  rÜ  rÞ  rß  rã  rå  rp   rè  rê  rk   rò  rõ  rl   r÷  rð  r  r
  r  ro   r  r  r  rm   r  r  rn   r   r+  r,  r2  r8  rq   rG  rI  rN  rO  rP  rR  rr   rW  rs   rX  rY  ræ   rf  rg  rt   rj  ru   ro  rq  r{  r|  r~  r€  r‚  r„  r‡  rx   r‹  r�  ry   rŽ  r‘  rw   r’  r“  r”  rš  rF   rF   rF   rG   Ú<module>   sp  
.„
ÿ)& /D+
(u
					


$


 
 

 

	



