Best Python code snippet using Kiwi_python
g_promote_demote.py
Source:g_promote_demote.py  
1# Copyright (C) 2021 By Team UltraX 2# ~ LegendX3# ~ ProBoyX4# ~ MadBoy5# ~ Alain6# Global Promote and Demote Plugin by Team UltraX for UltraX UserBot7# credit bahut ho gya, yaar as bahut mehnat se bna hai, kang mat krna....8# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA9# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA10# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA11# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA12# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA13# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA14# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA15# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA16# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA17# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA18# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA19# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA20# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA21# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA22# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA23# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA24# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA25# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA26# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA27# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA28# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA29# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA30# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA31# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA32# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA33# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA34# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA35# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA36# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA37# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA38# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA39# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA40# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA41# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA42# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA43# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA44# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA45# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA46# Kang with Credits, else gey47# I knew u will kang and remove credits, duffer!!48# back click kar madharchod 49# Last Warn - Undo the removed part else be ready for DMCA by LegendX50# Mobile me back option he uspe click karde madhachod kang kiya to dekh51# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA52# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA53# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA54# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA55# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA56# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA57# credit bahut ho gya, yaar as bahut mehnat se bna hai, kang mat krna....58# Pls kang mat krna pyar se bol rha hu, nhi to DMCA hai hi59# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA60# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA61# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA62# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA63# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA64# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA65# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA66# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA67# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA68# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA69# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA70# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA71# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA72# credit bahut ho gya, yaar as bahut mehnat se bna hai, kang mat krna....73# Pls kang mat krna pyar se bol rha hu, nhi to DMCA hai hi74# code starting...75from ULTRA import CMD_HELP76marculs=977from telethon.errors.rpcerrorlist import (UserIdInvalidError,78                                            MessageTooLongError)79from telethon.tl.functions.channels import (EditAdminRequest,80                                              EditBannedRequest,81                                                EditPhotoRequest)82# credit bahut ho gya, yaar as bahut mehnat se bna hai, kang mat krna....83# Pls kang mat krna pyar se bol rha hu, nhi to DMCA hai hi84# back click kar madharchod 85# back click kar madharchod # back click kar madharchod 86from telethon.tl.functions.messages import UpdatePinnedMessageRequest87from telethon.tl.types import (ChannelParticipantsAdmins,88                                 ChatAdminRights,89                                   ChatBannedRights,90# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA91# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA92# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA93# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA94# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA95# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA96# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA97# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA98# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA99# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA100# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA101# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA102# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA103# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA104# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA105# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA106# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA107# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA108# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA109# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA110# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA111# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA112# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA113# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA114                                     MessageEntityMentionName,115                                       MessageMediaPhoto)116# back click kar madharchod # back click kar madharchod # back click kar madharchod 117from ULTRA.utils import register, errors_handler118from ULTRA.utils import admin_cmd119from ULTRA import bot as borg120# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA121# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA122# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA123# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA124# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA125# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA126# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA127# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA128# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA129# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA130# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA131# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA132# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA133# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA134# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA135# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA136# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA137# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA138# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA139# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA140# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA141# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA142# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA143async def get_full_user(event):  144    args = event.pattern_match.group(1).split(':', 1)145    extra = None146    if event.reply_to_msg_id and not len(args) == 2:147        previous_message = await event.get_reply_message()148        user_obj = await event.client.get_entity(previous_message.sender_id)149        extra = event.pattern_match.group(1)150    elif len(args[0]) > 0:151        user = args[0]152        if len(args) == 2:153            extra = args[1]154# credit bahut ho gya, yaar as bahut mehnat se bna hai, kang mat krna....155# Pls kang mat krna pyar se bol rha hu, nhi to DMCA hai hi156        if user.isnumeric():157            user = int(user)158        if not user:159            await event.edit("`Iᴠɪs É´á´á´ á´á´ssɪÊÊᴠᴡɪá´Êá´á´á´ á´É´Ê á´sá´Ê ɪá´
`")160# credit bahut ho gya, yaar as bahut mehnat se bna hai, kang mat krna....161# Pls kang mat krna pyar se bol rha hu, nhi to DMCA hai hi162            return163        if event.message.entities is not None:164            probable_user_mention_entity = event.message.entities[0]165# credit bahut ho gya, yaar as bahut mehnat se bna hai, kang mat krna....166# Pls kang mat krna pyar se bol rha hu, nhi to DMCA hai hi167            if isinstance(probable_user_mention_entity,168                          # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA169                          # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA170                          # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA171                          # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA172                          # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA173                          # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA174                          # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA175                          # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA176                          # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA177                          # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA178                          # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA179                          # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA180                          # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA181                          # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA182                          # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA183                          # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA184                          # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA185                          # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA186                          # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA187                          # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA188                          MessageEntityMentionName):189# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA190# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA191# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA192# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA193# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA194# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA195# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA196# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA197# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA198# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA199# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA200# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA201# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA202# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA203# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA204# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA205# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA206# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA207# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA208# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA209# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA210# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA211# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA212                user_id = probable_user_mention_entity.user_id213                user_obj = await event.client.get_entity(user_id)214                return user_obj215        try:216            user_obj = await event.client.get_entity(user)217        except Exception as err:218            return await event.edit("`EÊÊá´Ê PÊá´á´sá´ Rá´á´á´Êá´ IÉ´` **@UltraXChat**`.`", str(err))   219# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA220# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA221# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA222# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA223# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA224# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA225# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA226# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA227# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA228# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA229# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA230# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA231# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA232# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA233# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA234# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA235# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA236# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA237# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA238# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA239# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA240# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA241# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA242    return user_obj, extra243# back click kar madharchod # back click kar madharchod # back click kar madharchod 244# back click kar madharchod # back click kar madharchod # back click kar madharchod 245# back click kar madharchod # back click kar madharchod # back click kar madharchod 246global hawk,moth247hawk="admin"248moth="owner"249async def get_user_from_id(user, event):250    if isinstance(user, str):251        user = int(user)252    try:253        user_obj = await event.client.get_entity(user)254    except (TypeError, ValueError) as err:255      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA256      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA257      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA258      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA259      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA260      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA261      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA262      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA263      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA264      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA265      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA266      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA267      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA268      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA269      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA270      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA271      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA272        await event.edit(str(err))273        return None274    return user_obj275# back click kar madharchod # back click kar madharchod # back click kar madharchod 276# back click kar madharchod # back click kar madharchod # back click kar madharchod 277# back click kar madharchod # back click kar madharchod # back click kar madharchod 278@borg.on(admin_cmd(pattern="gpromote ?(.*)"))279async def gben(userbot):280    ultrax = legend = userbot281    i = 0282    sender = await legend.get_sender()283    me = await userbot.client.get_me()284    await ultrax.edit("`PÊá´á´á´á´ÉªÉ´É¢...`")285    my_mention = "[{}](tg://user?id={})".format(me.first_name, me.id)286# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA287# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA288# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA289# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA290# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA291# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA292# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA293# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA294# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA295# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA296# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA297# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA298# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA299# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA300# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA301# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA302# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA303# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA304# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA305# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA306# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA307# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA308# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA309# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA310    f"@{me.username}" if me.username else my_mention311    await userbot.get_chat()312    if userbot.is_private:313        user = userbot.chat314        rank = userbot.pattern_match.group(1)315    else:316        userbot.chat.title317    try:318        user, rank = await get_full_user(userbot)319    except:320        pass321    if me == user:322# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA323# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA324# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA325# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA326# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA327# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA328# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA329# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA330# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA331# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA332# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA333# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA334# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA335# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA336# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA337# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA338# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA339# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA340# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA341# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA342# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA343# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA344# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA345# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA346       k = await ultrax.edit("`AÊá´ Êá´á´ á´ É´á´á´Ê á´¡Êá´ á´¡á´É´á´ á´á´ á´Êá´á´á´á´á´ Êá´á´Êsá´ÊÒ ã !!`")347       return348    try:349        if not rank:350            rank = "ã
¤ã
¤"351            # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA352            # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA353            # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA354            # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA355            # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA356            # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA357            # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA358            # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA359            # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA360            # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA361            # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA362            # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA363            # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA364            # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA365            # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA366            # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA367            # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA368            # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA369            # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA370    except:371        return await legend.edit(f"**Sá´á´á´á´Êɪɴɢ W3É´á´ WÊá´É´É¢ ð§ !!**")372    if user:373        telchanel = [d.entity.id374                     for d in await userbot.client.get_dialogs()375                     if (d.is_group or d.is_channel)376                     ]377        rgt = ChatAdminRights(add_admins=True,378                               invite_users=True,379                                change_info=True,380                                 ban_users=True,381# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA382# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA383# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA384# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA385# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA386# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA387# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA388# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA389# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA390# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA391# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA392# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA393# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA394# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA395# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA396# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA397# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA398# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA399# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA400# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA401# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA402# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA403# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA404# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA405                                  delete_messages=True,406                                   pin_messages=True)407        for x in telchanel:408          try:409             await userbot.client(EditAdminRequest(x, user, rgt, rank))410             i += 1411             await legend.edit(f"**Ná´á´¡ Gá´Êá´á´á´á´Éªá´É´ !!**\n\n**Usá´Ê** :- __[{user.first_name}](tg://user?id={user.id})__\n**AÒÒá´á´á´á´á´
 CÊá´á´s** :- `{i}`")412          except:413             pass414    else:415        await ultrax.edit(f"`Rá´á´ÊÊ á´á´ á´ á´sá´Ê á´á´ Gá´Êá´á´á´á´á´ á´Êá´á´...`")416    return await ultrax.edit(417        f"**Ná´á´¡ Gá´Êá´á´á´á´Éªá´É´ !!**\n\n**Usá´Ê** :- __[{user.first_name}](tg://user?id={user.id})__\n**AÒÒá´á´á´á´á´
 CÊá´á´s** :- `{i}`"418      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA419      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA420      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA421      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA422      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA423      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA424      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA425      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA426      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA427      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA428      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA429      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA430      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA431      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA432      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA433      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA434      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA435      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA436      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA437      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA438      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA439      # Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA440    )441# back click kar madharchod # back click kar madharchod 442# credit bahut ho gya, yaar as bahut mehnat se bna hai, kang mat krna....443# Pls kang mat krna pyar se bol rha hu, nhi to DMCA hai hi444# jana lavde back click kar445# Copyright (C) 2021 By Team UltraX 446# ~ LegendX447# ~ ProBoyX448# ~ Alain449# ~ MadBoy450# ~ RoseLoverX451# Global Promote and Demote Plugin by Team UltraX for UltraX UserBot452# Mobile me back option he uspe click karde madhachod kang kiya to dekh453# Mobile me back option he uspe click karde madhachod kang kiya to dekh454# Mobile me back option he uspe click karde madhachod kang kiya to dekh455# Kang with Credits, else gey456# I knew u will kang and remove credits, duffer!!457# Last Warn - Undo the removed part else be ready for DMCA by LegendX458@borg.on(admin_cmd(pattern="gdemote ?(.*)"))459async def gben(userbot):460    ultrax = legend = userbot461    i = 0462    sender = await ultrax.get_sender()463    me = await userbot.client.get_me()464    await legend.edit("`Dá´á´á´á´ÉªÉ´É¢...`")465# credit bahut ho gya, yaar as bahut mehnat se bna hai, kang mat krna....466# Pls kang mat krna pyar se bol rha hu, nhi to DMCA hai hi467    my_mention = "[{}](tg://user?id={})".format(me.first_name, me.id)468    f"@{me.username}" if me.username else my_mention469    await userbot.get_chat()470    if userbot.is_private:471        user = userbot.chat472# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA473# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA474# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA475# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA476# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA477# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA478# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA479# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA480# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA481# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA482# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA483# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA484# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA485# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA486# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA487# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA488# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA489# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA490# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA491# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA492# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA493# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA494# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA495# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA496        rank = userbot.pattern_match.group(1)497    else:498        userbot.chat.title499    try:500        user, rank = await get_full_user(userbot)501    except:502        pass503    if me == user:504       k = await ultrax.edit("`AÊá´ Êá´á´ á´ É´á´á´Ê á´¡Êá´ á´¡á´É´á´ á´á´ á´
á´á´á´á´á´ Êá´á´Êsá´ÊÒ ã !!`")505# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA506# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA507# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA508# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA509# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA510# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA511# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA512# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA513# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA514# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA515# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA516# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA517# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA518# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA519# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA520# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA521# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA522# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA523# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA524# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA525# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA526# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA527# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA528# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA529       return530    try:531        if not rank:532            rank = "ã
¤ã
¤"533    except:534# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA535# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA536# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA537# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA538# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA539# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA540# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA541# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA542# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA543# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA544# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA545# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA546# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA547# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA548# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA549# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA550# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA551# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA552# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA553# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA554# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA555# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA556# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA557# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA558        return await legend.edit(f"**Sá´á´á´á´Êɪɴɢ W3É´á´ WÊá´É´É¢ ð§ !!**")559    if user:560        telchanel = [d.entity.id561                     for d in await userbot.client.get_dialogs()562                     if (d.is_group or d.is_channel)563                     ]564        rgt = ChatAdminRights(add_admins=None,565                               invite_users=None,566                                change_info=None,567                                 ban_users=None,568                                  delete_messages=None,569                                   pin_messages=None)570        for x in telchanel:571          try:572             await userbot.client(EditAdminRequest(x, user, rgt, rank))573             i += 1574             await legend.edit(f"`GÊá´ÊÊá´ÊÊ Dá´á´á´á´á´á´
` **[{user.first_name}](tg://user?id={user.id})** `IÉ´` **{i}** `CÊá´á´s.`")575          except:576             pass577    else:578        await ultrax.edit(f"`Rá´á´ÊÊ á´á´ á´ á´sá´Ê á´á´ Gá´Êá´á´á´á´á´ á´Êá´á´...`")579# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA580# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA581# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA582# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA583# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA584# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA585# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA586# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA587# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA588# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA589# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA590# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA591# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA592# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA593# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA594# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA595# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA596# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA597# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA598# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA599# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA600# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA601# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA602# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA603    return await ultrax.edit(604        f"`GÊá´ÊÊá´ÊÊ Dá´á´á´á´á´á´
` **[{user.first_name}](tg://user?id={user.id})** `IÉ´` **{i}** `CÊá´á´s.`"605    )606# Copyright (C) 2021 By Team UltraX 607# ~ LegendX608# ~ ProBoyX609# ~ Alain610# ~ MadBoy611# ~ RoseLoverX612# back click kar madharchod 613# Global Promote and Demote Plugin by Team UltraX for UltraX UserBot614# ~ LegendX615# ~ ProBoyX616# ~ Alain617# ~ MadBoy618# ~ RoseLoverX619# Kang with Credits, else gey620# I knew u will kang and remove credits, duffer!!621# back click kar madharchod 622# Last Warn - Undo the removed part else be ready for DMCA by LegendX623# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA624# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA625# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA626# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA627# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA628# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA629# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA630# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA631# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA632# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA633# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA634# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA635# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA636# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA637# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA638# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA639# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA640# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA641# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA642# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA643# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA644# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA645# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA646# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA647# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA648# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA649# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA650# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA651# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA652# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA653# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA654# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA655# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA656# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA657# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA658# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA659# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA660# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA661# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA662# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA663# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA664# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA665# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA666# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA667# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA668# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA669# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA670# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA671# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA672# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA673# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA674# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA675# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA676# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA677# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA678# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA679# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA680# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA681# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA682# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA683# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA684# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA685# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA686# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA687# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA688# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA689# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA690# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA691# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA692# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA693# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA694# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA695# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA696# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA697# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA698# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA699# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA700# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA701# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA702# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA703# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA704# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA705# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA706# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA707# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA708# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA709# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA710# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA711# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA712# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA713# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA714# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA715# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA716# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA717# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA718# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA719# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA720# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA721# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA722# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA723# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA724# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA725# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA726# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA727# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA728# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA729# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA730# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA731# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA732# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA733# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA734# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA735# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA736# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA737# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA738# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA739# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA740# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA741# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA742# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA743# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA744# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA745# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA746# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA747# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA748# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA749# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA750# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA751# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA752# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA753# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA754# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA755# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA756# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA757# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA758# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA759# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA760# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA761# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA762# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA763# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA764# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA765# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA766# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA767# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA768# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA769# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA770# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA771# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA772# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA773# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA774# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA775# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA776# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA777# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA778# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA779# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA780# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA781# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA782# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA783# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA784# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA785# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA786# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA787# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA788# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA789# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA790# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA791# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA792# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA793# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA794# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA795# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA796# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA797# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA798# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA799# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA800# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA801# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA802# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA803# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA804# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA805# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA806# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA807# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA808# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA809# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA810# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA811# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA812# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA813# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA814# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA815# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA816# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA817# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA818# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA819# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA820# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA821# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA822# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA823# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA824# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA825# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA826# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA827# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA828# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA829# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA830# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA831# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA832# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA833# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA834# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA835# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA836# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA837# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA838# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA839# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA840# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA841# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA842# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA843# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA844# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA845# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA846# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA847# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA848# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA849# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA850# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA851# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA852# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA853# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA854# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA855# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA856# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA857# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA858# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA859# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA860# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA861# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA862# credit bahut ho gya, yaar as bahut mehnat se bna hai, kang mat krna....863# Pls kang mat krna pyar se bol rha hu, nhi to DMCA hai hi864# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA865# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA866# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA867# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA868# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA869# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA870# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA871# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA872# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA873# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA874# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA875# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA876# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA877# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA878# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA879# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA880# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA881# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA882# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA883# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA884# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA885# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA886# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA887# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA888# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA889# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA890# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA891# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA892# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA893# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA894# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA895# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA896# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA897# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA898# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA899# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA900# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA901# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA902# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA903# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA904# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA905# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA906# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA907# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA908# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA909# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA910# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA911# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA912# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA913# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA914# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA915# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA916# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA917# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA918# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA919# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA920# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA921# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA922# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA923# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA924# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA925# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA926# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA927# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA928# credit bahut ho gya, yaar as bahut mehnat se bna hai, kang mat krna....929# Pls kang mat krna pyar se bol rha hu, nhi to DMCA hai hi930# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA931# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA932# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA933# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA934# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA935# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA936# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA937# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA938# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA939# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA940# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA941# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA942# credit bahut ho gya, yaar as bahut mehnat se bna hai, kang mat krna....943# Pls kang mat krna pyar se bol rha hu, nhi to DMCA hai hi944# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA945# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA946# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA947# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA948# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA949# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA950# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA951# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA952# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA953# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA954# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA955# Reserved, Copyrighted by ULTRA-X, only for ULTRA-X UserBot, If found in any other repo, be ready for DMCA956# credit bahut ho gya, yaar as bahut mehnat se bna hai, kang mat krna....957# Pls kang mat krna pyar se bol rha hu, nhi to DMCA hai hi958# credit bahut ho gya, yaar as bahut mehnat se bna hai, kang mat krna....959# Pls kang mat krna pyar se bol rha hu, nhi to DMCA hai hi...session_manager.py
Source:session_manager.py  
...243          "Init operations did not make model ready for local_init.  "244          "Init op: %s, init fn: %s, error: %s" % (_maybe_name(init_op),245                                                   init_fn,246                                                   msg))247    is_ready, msg = self._model_ready(sess)248    if not is_ready:249      raise RuntimeError(250          "Init operations did not make model ready.  "251          "Init op: %s, init fn: %s, local_init_op: %s, error: %s" %252          (_maybe_name(init_op), init_fn, self._local_init_op, msg))253    return sess254  def recover_session(self,255                      master,256                      saver=None,257                      checkpoint_dir=None,258                      checkpoint_filename_with_path=None,259                      wait_for_checkpoint=False,260                      max_wait_secs=7200,261                      config=None):262    """Creates a `Session`, recovering if possible.263    Creates a new session on 'master'.  If the session is not initialized264    and can be recovered from a checkpoint, recover it.265    Args:266      master: `String` representation of the TensorFlow master to use.267      saver: A `Saver` object used to restore a model.268      checkpoint_dir: Path to the checkpoint files. The latest checkpoint in the269        dir will be used to restore.270      checkpoint_filename_with_path: Full file name path to the checkpoint file.271      wait_for_checkpoint: Whether to wait for checkpoint to become available.272      max_wait_secs: Maximum time to wait for checkpoints to become available.273      config: Optional `ConfigProto` proto used to configure the session.274    Returns:275      A pair (sess, initialized) where 'initialized' is `True` if276      the session could be recovered and initialized, `False` otherwise.277    Raises:278      ValueError: If both checkpoint_dir and checkpoint_filename_with_path are279        set.280    """281    sess, is_loaded_from_checkpoint = self._restore_checkpoint(282        master,283        saver,284        checkpoint_dir=checkpoint_dir,285        checkpoint_filename_with_path=checkpoint_filename_with_path,286        wait_for_checkpoint=wait_for_checkpoint,287        max_wait_secs=max_wait_secs,288        config=config)289    # Always try to run local_init_op290    local_init_success, msg = self._try_run_local_init_op(sess)291    if not is_loaded_from_checkpoint:292      # Do not need to run checks for readiness293      return sess, False294    restoring_file = checkpoint_dir or checkpoint_filename_with_path295    if not local_init_success:296      logging.info(297          "Restoring model from %s did not make model ready for local init:"298          " %s", restoring_file, msg)299      return sess, False300    is_ready, msg = self._model_ready(sess)301    if not is_ready:302      logging.info("Restoring model from %s did not make model ready: %s",303                   restoring_file, msg)304      return sess, False305    logging.info("Restored model from %s", restoring_file)306    return sess, is_loaded_from_checkpoint307  def wait_for_session(self, master, config=None, max_wait_secs=float("Inf")):308    """Creates a new `Session` and waits for model to be ready.309    Creates a new `Session` on 'master'.  Waits for the model to be310    initialized or recovered from a checkpoint.  It's expected that311    another thread or process will make the model ready, and that this312    is intended to be used by threads/processes that participate in a313    distributed training configuration where a different thread/process314    is responsible for initializing or recovering the model being trained.315    NB: The amount of time this method waits for the session is bounded316    by max_wait_secs. By default, this function will wait indefinitely.317    Args:318      master: `String` representation of the TensorFlow master to use.319      config: Optional ConfigProto proto used to configure the session.320      max_wait_secs: Maximum time to wait for the session to become available.321    Returns:322      A `Session`. May be None if the operation exceeds the timeout323      specified by config.operation_timeout_in_ms.324    Raises:325      tf.DeadlineExceededError: if the session is not available after326        max_wait_secs.327    """328    self._target = master329    if max_wait_secs is None:330      max_wait_secs = float("Inf")331    timer = _CountDownTimer(max_wait_secs)332    while True:333      sess = session.Session(self._target, graph=self._graph, config=config)334      not_ready_msg = None335      not_ready_local_msg = None336      local_init_success, not_ready_local_msg = self._try_run_local_init_op(337          sess)338      if local_init_success:339        # Successful if local_init_op is None, or ready_for_local_init_op passes340        is_ready, not_ready_msg = self._model_ready(sess)341        if is_ready:342          return sess343      self._safe_close(sess)344      # Do we have enough time left to try again?345      remaining_ms_after_wait = (346          timer.secs_remaining() - self._recovery_wait_secs)347      if remaining_ms_after_wait < 0:348        raise errors.DeadlineExceededError(349            None, None,350            "Session was not ready after waiting %d secs." % (max_wait_secs,))351      logging.info("Waiting for model to be ready.  "352                   "Ready_for_local_init_op:  %s, ready: %s",353                   not_ready_local_msg, not_ready_msg)354      time.sleep(self._recovery_wait_secs)355  def _safe_close(self, sess):356    """Closes a session without raising an exception.357    Just like sess.close() but ignores exceptions.358    Args:359      sess: A `Session`.360    """361    # pylint: disable=broad-except362    try:363      sess.close()364    except Exception:365      # Intentionally not logging to avoid user complaints that366      # they get cryptic errors.  We really do not care that Close367      # fails.368      pass369    # pylint: enable=broad-except370  def _model_ready(self, sess):371    """Checks if the model is ready or not.372    Args:373      sess: A `Session`.374    Returns:375      A tuple (is_ready, msg), where is_ready is True if ready and False376      otherwise, and msg is `None` if the model is ready, a `String` with the377      reason why it is not ready otherwise.378    """379    return _ready(self._ready_op, sess, "Model not ready")380  def _model_ready_for_local_init(self, sess):381    """Checks if the model is ready to run local_init_op.382    Args:383      sess: A `Session`.384    Returns:385      A tuple (is_ready, msg), where is_ready is True if ready to run386      local_init_op and False otherwise, and msg is `None` if the model is387      ready to run local_init_op, a `String` with the reason why it is not ready388      otherwise.389    """390    return _ready(self._ready_for_local_init_op, sess,391                  "Model not ready for local init")392  def _try_run_local_init_op(self, sess):393    """Tries to run _local_init_op, if not None, and is ready for local init.394    Args:395      sess: A `Session`.396    Returns:397      A tuple (is_successful, msg), where is_successful is True if398      _local_init_op is None, or we ran _local_init_op, and False otherwise;399      and msg is a `String` with the reason why the model was not ready to run400      local init.401    """402    if self._local_init_op is not None:403      is_ready_for_local_init, msg = self._model_ready_for_local_init(sess)404      if is_ready_for_local_init:405        sess.run(self._local_init_op)406        return True, None407      else:408        return False, msg409    return True, None410def _ready(op, sess, msg):411  """Checks if the model is ready or not, as determined by op.412  Args:413    op: An op, either _ready_op or _ready_for_local_init_op, which defines the414      readiness of the model.415    sess: A `Session`.416    msg: A message to log to warning if not ready417  Returns:418    A tuple (is_ready, msg), where is_ready is True if ready and False419    otherwise, and msg is `None` if the model is ready, a `String` with the420    reason why it is not ready otherwise.421  """422  if op is None:423    return True, None424  else:...__main__.py
Source:__main__.py  
1#!/usr/bin/env python32import sys3import connexion4import logging5import traceback6import os7import json8from multiprocessing import Process, Queue9import rospy10import actionlib11import threading12import subprocess13from std_msgs.msg import Float6414from move_base_msgs.msg import MoveBaseAction15from swagger_client.rest import ApiException16from swagger_client import DefaultApi17from swagger_client.models.inline_response_200 import InlineResponse20018from swagger_client.models.errorparams import Errorparams19from swagger_client.models.statusparams import Statusparams20import swagger_server.config as config21import swagger_server.comms as comms22from swagger_server.util import *23from swagger_server.encoder import JSONEncoder24from learner.learn import Learn25from robotcontrol.bot_controller import BotController26from rainbow_interface import RainbowInterface27from robotcontrol.launch_utils import launch_cp1_base, init28import swagger_server.resources as resources29config_list_file = os.path.expanduser('~/cp1/config_list.json')30config_list_file_true = os.path.expanduser('~/cp1/config_list_true.json')31if __name__ == '__main__':32    # Parameter parsing, to set up TH33    if len(sys.argv) != 2:34        print("No URI TH passed in!")35        sys.exit(1)36    th_uri = sys.argv[1]37    # Set up TA server and logging38    app = connexion.App(__name__, specification_dir='./swagger/')39    app.app.json_encoder = JSONEncoder40    app.add_api('swagger.yaml', arguments={'title': 'CP1'}, strict_validation=True)41    # capture the logger42    logger = logging.getLogger('werkzeug')43    logger.setLevel(logging.DEBUG)44    handler = logging.FileHandler(os.path.expanduser('~/logs/TA_access.log'))45    logger.addHandler(handler)46    # share logger with endpoints47    config.logger = logger48    def log_request_info():49        logger.debug('Headers: %s', connexion.request.headers)50        logger.debug('Body: %s', connexion.request.get_data())51    app.app.before_request(log_request_info)52    # build the TH API object53    thApi = DefaultApi()54    thApi.api_client.configuration.host = th_uri55    config.thApi = thApi56    def fail_hard(s):57        logger.debug(s)58        comms.save_ps("error-failhard")59        # if we at least have the UUID, then try to sequester.60        if config.uuid and config.th_connected:61            comms.sequester()62        if config.th_connected:63            err = Errorparams(error="other-error", message=s)64            result = thApi.error_post(err)65        raise Exception(s)66    # record the resources to log67    resources.report_system_resources(logger)68    resources.report_resource_limits(logger)69    # start the sequence diagram: post to ready to get configuration data70    try:71        logger.debug("posting to /ready")72        ready_resp = thApi.ready_post()73        config.th_connected = True74        logger.debug("received response from /ready: %s" % ready_resp)75    except Exception as e:76        # this isn't a call to fail_hard because the TH isn't77        # responding at all; we have to hope that LL notices the log78        # output and that this happens only very rarely if at all79        logger.debug("failed to connect with th")80        logger.debug(traceback.format_exc())81        config.th_connected = False82        ready_file_name = sys.argv[1]83        # Adding test ready info84        with open(os.path.expanduser(ready_file_name)) as ready:85            data = json.load(ready)86            ready_resp = InlineResponse200(87                level=data["level"], start_loc=data["start-loc"],88                target_locs=data["target-locs"],89                power_model=data["power-model"],90                discharge_budget=data["discharge-budget"])91            logger.info("started TA in disconnected mode")92        # raise e93    # if we get a message from ready, that means we're in the LL94    # environment and should set up log sequestration95    if config.th_connected:96        ecs_meta = os.environ.get('ECS_CONTAINER_METADATA_FILE')97        if not ecs_meta:98            fail_hard('ECS_CONTAINER_METADATA_FILE not defined; cannot sequester logs')99        config.uuid = (subprocess.check_output("~/aws_uuid.sh", shell=True)).strip().decode()100        print("Got the UUID for log sequenstration as %s" %config.uuid)101        if (not config.uuid) or len(config.uuid) == 0:102            fail_hard("uuid undefined; cannot sequester logs")103    config.ready_response = ready_resp104    # dynamic checks on ready response105    if not ready_resp.target_locs:106        fail_hard("malformed response from ready: target_locs must not be the empty list")107    if ready_resp.start_loc == ready_resp.target_locs[0]:108        fail_hard("malformed response from ready: start-loc must not be the same as the first item of target-locs")109    if not check_adj(ready_resp.target_locs):110        fail_hard("malformed response from ready: target-locs contains adjacent equal elements")111    # once the response is checked, write it to ~/ready112    logger.debug("writing checked /ready message to ~/ready")113    with open(os.path.expanduser('~/ready'), 'w') as ready_file:114        json.dump(dict((k.replace("_", "-"), v) for k, v in ready_resp.to_dict().items()), ready_file)115    config.level = ready_resp.level116    if ready_resp.level == "c":117        with open(os.path.expanduser('~/ready'), 'r') as ready_content:118            ready_json = json.load(ready_content)119        print(ready_json)120        model_learner = Learn()121        try:122            model_learner.get_true_model()123        except Exception as e:124            logger.debug("parsing raised an exception; notifying the TH and then crashing")125            comms.save_ps("parsing_error")126            if config.th_connected:127                # copy out logs before posting error128                if config.uuid and config.th_connected:129                    comms.sequester()130                thApi.error_post(Errorparams(error="parsing-error", message="exception raised: %s" % e))131            else:132                rospy.logerr("parsing-error")133            raise e134        logger.debug("learning-started")135        if config.th_connected:136            comms.send_status("__main__", "learning-started", sendxy=False, sendtime=False)137        try:138            result = model_learner.start_learning()139        except Exception as e:140            logger.debug("learning raised an exception; notifying the TH and then crashing")141            comms.save_ps("learning_error")142            if config.th_connected:143                # copy out logs before posting error144                if config.uuid and config.th_connected:145                    comms.sequester()146                thApi.error_post(Errorparams(error="learning-error", message="exception raised: %s" % e))147            else:148                rospy.logerr("learning-error")149            raise e150        logger.debug("learning-done")151        if config.th_connected:152            comms.send_status("__main__", "learning-done", sendxy=False, sendtime=False)153        model_learner.dump_learned_model()154        # let's print the list of configurations the learner founds for debugging155        with open(config_list_file, 'r') as confg_file:156            print("**Predicted**")157            config_data = json.load(confg_file)158            print(config_data)159        with open(config_list_file_true, 'r') as confg_file:160            print("**True**")161            config_data = json.load(confg_file)162            print(config_data)163    # roslaunch164    # Init me as a node165    logger.debug("initializing cp1_ta ros node")166    # rospy.init_node("cp1_ta")167    p = Process(target=launch_cp1_base, args=('default',))168    p.start()169    init("cp1_ta")170    logger.debug("waiting for move_base (emulates watching for odom_received)")171    move_base = actionlib.SimpleActionClient("move_base", MoveBaseAction)172    move_base_started = False173    ind = 0174    while not move_base_started and ind < 12:175        ind += 1176        move_base_started = move_base.wait_for_server(rospy.Duration.from_sec(10))177        rospy.loginfo("waiting for the action server")178    if not move_base_started:179        fail_hard("fatal error: navigation stack has failed to start")180    # build controller object181    bot_cont = BotController()182    # start tracking battery charge183    bot_cont.gazebo.track_battery_charge()184    bot_cont.level = ready_resp.level185    config.ran_out_of_energy_handled = False186    # subscribe to rostopics187    def energy_cb(msg):188        """call back to update the global battery state from the ros topic"""189        config.battery = int(msg.data)190        if msg.data <= 0:191            if config.th_connected and not config.ran_out_of_energy_handled:192                config.ran_out_of_energy_handled = True  # Only send the done message once193                comms.send_done("energy call back", "out of juice", "out-of-battery")194            else:195                rospy.logerr("out-of-battery")196    sub_mwh = rospy.Subscriber("/mobile_base/commands/charge_level_mwh", Float64, energy_cb)197    config.bot_cont = bot_cont198    # check that things are actually waypoint names199    if not bot_cont.map_server.is_waypoint(ready_resp.start_loc):200        fail_hard("name of start location is not a waypoint: %s" % ready_resp.start_loc)201    for name in ready_resp.target_locs:202        if not bot_cont.map_server.is_waypoint(name):203            fail_hard("name of target location is not a waypoint: %s" % name)204    # put the robot in the right place205    start_coords = bot_cont.map_server.waypoint_to_coords(ready_resp.start_loc)206    bot_cont.gazebo.set_bot_position(start_coords['x'], start_coords['y'], 0)207    # start up rainbow if we're adapting, otherwise send the live message directly208    if ready_resp.level == "c":209        try:210            logger.debug("Starting Rainbow")211            rainbow_log = open(os.path.expanduser("~/rainbow.log"), 'w')212            rainbow = RainbowInterface()213            rainbow.launchRainbow("cp1", rainbow_log)214            ok = rainbow.startRainbow()215            if not ok:216                fail_hard("did not connect to rainbow in a timely fashion")217        except Exception as e:218            fail_hard("failed to connection to rainbow: %s" % e)219    elif config.th_connected:220        def worker():221            rospy.sleep(5)222            comms.send_status("__main__ in level %s" % ready_resp.level, "live", sendtime=False)223        t = threading.Thread(target=worker)224        t.start()225    logger.debug("Starting TA REST interface")226    print("Starting TA REST interface")227    # app.debug = True...IndicatorExtensionsTests.py
Source:IndicatorExtensionsTests.py  
1#2# QUANTCONNECT.COM - Democratizing Finance, Empowering Individuals.3# Lean Algorithmic Trading Engine v2.0. Copyright 2014 QuantConnect Corporation.4#5# Licensed under the Apache License, Version 2.0 (the "License");6# you may not use this file except in compliance with the License.7# You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.08#9# Unless required by applicable law or agreed to in writing, software10# distributed under the License is distributed on an "AS IS" BASIS,11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.12# See the License for the specific language governing permissions and13# limitations under the License.14#15from clr import AddReference16AddReference("QuantConnect.Indicators")17from QuantConnect.Indicators import *18from datetime import datetime19import decimal as d20import unittest21class IndicatorExtensionsTests(unittest.TestCase):22    def test_PipesDataUsingOfFromFirstToSecond(self):23        first = SimpleMovingAverage(2)24        second = Delay(1)25        # this is a configuration step, but returns the reference to the second for method chaining26        third = IndicatorExtensions.Of(second, first)27        data1 = IndicatorDataPoint(datetime.now(), 1)28        data2 = IndicatorDataPoint(datetime.now(), 2)29        data3 = IndicatorDataPoint(datetime.now(), 3)30        data4 = IndicatorDataPoint(datetime.now(), 4)31        # sma has one item32        first.Update(data1)33        self.assertFalse(first.IsReady)34        self.assertEqual(0, second.Current.Value)35        # sma is ready, delay will repeat this value36        first.Update(data2)37        self.assertTrue(first.IsReady)38        self.assertFalse(second.IsReady)39        self.assertEqual(1.5, second.Current.Value)40        # delay is ready, and repeats its first input41        first.Update(data3)42        self.assertTrue(second.IsReady)43        self.assertEqual(1.5, second.Current.Value)44        # now getting the delayed data45        first.Update(data4)46        self.assertEqual(2.5, second.Current.Value)47    def test_PipesDataFirstWeightedBySecond(self):48        period = 449        value = Identity("Value")50        weight = Identity("Weight")51        third = IndicatorExtensions.WeightedBy(value, weight, period)52        data = range(1, 11)53        window = list(reversed(data))[:period]54        current = sum([ 2 * x * x for x in window ]) / float(sum(window))55        for item in data:56            value.Update(datetime.now(), 2 * item)57            weight.Update(datetime.now(), item)58        self.assertEqual(current, float(third.Current.Value))59    def test_NewDataPushesToDerivedIndicators(self):60        identity = Identity("identity")61        self.sma = SimpleMovingAverage(3)62        identity.Updated += self.identity_updated63        identity.Update(datetime.now(), 1)64        identity.Update(datetime.now(), 2)65        self.assertFalse(self.sma.IsReady)66        identity.Update(datetime.now(), 3)67        self.assertTrue(self.sma.IsReady)68        self.assertEqual(2, self.sma.Current.Value)69    def identity_updated(self, sender, consolidated):70        self.sma.Update(consolidated)71    def test_MultiChainSMA(self):72        identity = Identity("identity")73        delay = Delay(2)74        # create the SMA of the delay of the identity75        sma = IndicatorExtensions.SMA(IndicatorExtensions.Of(delay, identity), 2)76        identity.Update(datetime.now(), 1)77        self.assertTrue(identity.IsReady)78        self.assertFalse(delay.IsReady)79        self.assertFalse(sma.IsReady)80        identity.Update(datetime.now(), 2)81        self.assertTrue(identity.IsReady)82        self.assertFalse(delay.IsReady)83        self.assertFalse(sma.IsReady)84        identity.Update(datetime.now(), 3)85        self.assertTrue(identity.IsReady)86        self.assertTrue(delay.IsReady)87        self.assertFalse(sma.IsReady)88        identity.Update(datetime.now(), 4)89        self.assertTrue(identity.IsReady)90        self.assertTrue(delay.IsReady)91        self.assertTrue(sma.IsReady)92        self.assertEqual(1.5, sma.Current.Value)93    def test_MultiChainEMA(self):94        identity = Identity("identity")95        delay = Delay(2)96        # create the EMA of chained methods97        ema = IndicatorExtensions.EMA(IndicatorExtensions.Of(delay, identity), 2, d.Decimal(1))98            99        identity.Update(datetime.now(), 1)100        self.assertTrue(identity.IsReady)101        self.assertFalse(delay.IsReady)102        self.assertFalse(ema.IsReady)103        identity.Update(datetime.now(), 2)104        self.assertTrue(identity.IsReady)105        self.assertFalse(delay.IsReady)106        self.assertFalse(ema.IsReady)107        identity.Update(datetime.now(), 3)108        self.assertTrue(identity.IsReady)109        self.assertTrue(delay.IsReady)110        self.assertFalse(ema.IsReady)111        identity.Update(datetime.now(), 4)112        self.assertTrue(identity.IsReady)113        self.assertTrue(delay.IsReady)114        self.assertTrue(ema.IsReady)115        self.assertEqual(2, ema.Current.Value)116    def test_MultiChainMAX(self):117        identity = Identity("identity")118        delay = Delay(2)119        # create the MAX of the delay of the identity120        max = IndicatorExtensions.MAX(IndicatorExtensions.Of(delay, identity), 2)121        identity.Update(datetime.now(), 1)122        self.assertTrue(identity.IsReady)123        self.assertFalse(delay.IsReady)124        self.assertFalse(max.IsReady)125        identity.Update(datetime.now(), 2)126        self.assertTrue(identity.IsReady)127        self.assertFalse(delay.IsReady)128        self.assertFalse(max.IsReady)129        identity.Update(datetime.now(), 3)130        self.assertTrue(identity.IsReady)131        self.assertTrue(delay.IsReady)132        self.assertFalse(max.IsReady)133        identity.Update(datetime.now(), 4)134        self.assertTrue(identity.IsReady)135        self.assertTrue(delay.IsReady)136        self.assertTrue(max.IsReady)137        self.assertEqual(2, max.Current.Value)138    def test_MultiChainMIN(self):139        identity = Identity("identity")140        delay = Delay(2)141        # create the MAX of the delay of the identity142        min = IndicatorExtensions.MIN(IndicatorExtensions.Of(delay, identity), 2)143        identity.Update(datetime.now(), 1)144        self.assertTrue(identity.IsReady)145        self.assertFalse(delay.IsReady)146        self.assertFalse(min.IsReady)147        identity.Update(datetime.now(), 2)148        self.assertTrue(identity.IsReady)149        self.assertFalse(delay.IsReady)150        self.assertFalse(min.IsReady)151        identity.Update(datetime.now(), 3)152        self.assertTrue(identity.IsReady)153        self.assertTrue(delay.IsReady)154        self.assertFalse(min.IsReady)155        identity.Update(datetime.now(), 4)156        self.assertTrue(identity.IsReady)157        self.assertTrue(delay.IsReady)158        self.assertTrue(min.IsReady)159        self.assertEqual(1, min.Current.Value)160    def test_PlusAddsLeftAndRightAfterBothUpdated(self):161        left = Identity("left")162        right = Identity("right")163        composite = IndicatorExtensions.Plus(left, right)164        left.Update(datetime.now(), 1)165        right.Update(datetime.now(), 1)166        self.assertEqual(2, composite.Current.Value)167        left.Update(datetime.today(), 2)168        self.assertEqual(2, composite.Current.Value)169        left.Update(datetime.today(), 3)170        self.assertEqual(2, composite.Current.Value)171        right.Update(datetime.today(), 4)172        self.assertEqual(7, composite.Current.Value)173    def test_MinusSubtractsLeftAndRightAfterBothUpdated(self):174        left = Identity("left")175        right = Identity("right")176        composite = IndicatorExtensions.Minus(left, right)177        left.Update(datetime.today(), 1)178        right.Update(datetime.today(), 1)179        self.assertEqual(0, composite.Current.Value)180        left.Update(datetime.today(), 2)181        self.assertEqual(0, composite.Current.Value)182        left.Update(datetime.today(), 3)183        self.assertEqual(0, composite.Current.Value)184        right.Update(datetime.today(), 4)185        self.assertEqual(-1, composite.Current.Value)186    def test_OverDivdesLeftAndRightAfterBothUpdated(self):187        left = Identity("left")188        right = Identity("right")189        composite = IndicatorExtensions.Over(left, right)190        left.Update(datetime.today(), 1)191        right.Update(datetime.today(), 1)192        self.assertEqual(1, composite.Current.Value)193        left.Update(datetime.today(), 2)194        self.assertEqual(1, composite.Current.Value)195        left.Update(datetime.today(), 3)196        self.assertEqual(1, composite.Current.Value)197        right.Update(datetime.today(), 4)198        self.assertEqual(3.0 / 4.0, composite.Current.Value)199    def test_OverHandlesDivideByZero(self):200        left = Identity("left")201        right = Identity("right")202        composite = IndicatorExtensions.Over(left, right)203        self.updatedEventFired = False204        composite.Updated += self.composite_updated205        left.Update(datetime.today(), 1)206        self.assertFalse(self.updatedEventFired)207        right.Update(datetime.today(), 0)208        self.assertFalse(self.updatedEventFired)209        # submitting another update to right won't cause an update without corresponding update to left210        right.Update(datetime.today(), 1)211        self.assertFalse(self.updatedEventFired)212        left.Update(datetime.today(), 1)213        self.assertTrue(self.updatedEventFired)214    def composite_updated(self, sender, consolidated):215        self.updatedEventFired = True216    def test_TimesMultipliesLeftAndRightAfterBothUpdated(self):217        left = Identity("left")218        right = Identity("right")219        composite = IndicatorExtensions.Times(left, right)220        left.Update(datetime.today(), 1)221        right.Update(datetime.today(), 1)222        self.assertEqual(1, composite.Current.Value)223        left.Update(datetime.today(), 2)224        self.assertEqual(1, composite.Current.Value)225        left.Update(datetime.today(), 3)226        self.assertEqual(1, composite.Current.Value)227        right.Update(datetime.today(), 4)228        self.assertEqual(12, composite.Current.Value)229if __name__ == '__main__':...Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!
