diff --git a/.dockerignore b/.dockerignore
new file mode 100644
index 0000000000000000000000000000000000000000..096343999f8d34d83bac806896b6aa711ce5a9c6
--- /dev/null
+++ b/.dockerignore
@@ -0,0 +1,10 @@
+.env
+.cache
+Yukkilogs.txt
+.DS_Store
+*.session
+raw_files/
+cache/
+downloads/
+__pycache__/
+*.session-journal
diff --git a/.gitattributes b/.gitattributes
new file mode 100644
index 0000000000000000000000000000000000000000..a6344aac8c09253b3b630fb776ae94478aa0275b
--- /dev/null
+++ b/.gitattributes
@@ -0,0 +1,35 @@
+*.7z filter=lfs diff=lfs merge=lfs -text
+*.arrow filter=lfs diff=lfs merge=lfs -text
+*.bin filter=lfs diff=lfs merge=lfs -text
+*.bz2 filter=lfs diff=lfs merge=lfs -text
+*.ckpt filter=lfs diff=lfs merge=lfs -text
+*.ftz filter=lfs diff=lfs merge=lfs -text
+*.gz filter=lfs diff=lfs merge=lfs -text
+*.h5 filter=lfs diff=lfs merge=lfs -text
+*.joblib filter=lfs diff=lfs merge=lfs -text
+*.lfs.* filter=lfs diff=lfs merge=lfs -text
+*.mlmodel filter=lfs diff=lfs merge=lfs -text
+*.model filter=lfs diff=lfs merge=lfs -text
+*.msgpack filter=lfs diff=lfs merge=lfs -text
+*.npy filter=lfs diff=lfs merge=lfs -text
+*.npz filter=lfs diff=lfs merge=lfs -text
+*.onnx filter=lfs diff=lfs merge=lfs -text
+*.ot filter=lfs diff=lfs merge=lfs -text
+*.parquet filter=lfs diff=lfs merge=lfs -text
+*.pb filter=lfs diff=lfs merge=lfs -text
+*.pickle filter=lfs diff=lfs merge=lfs -text
+*.pkl filter=lfs diff=lfs merge=lfs -text
+*.pt filter=lfs diff=lfs merge=lfs -text
+*.pth filter=lfs diff=lfs merge=lfs -text
+*.rar filter=lfs diff=lfs merge=lfs -text
+*.safetensors filter=lfs diff=lfs merge=lfs -text
+saved_model/**/* filter=lfs diff=lfs merge=lfs -text
+*.tar.* filter=lfs diff=lfs merge=lfs -text
+*.tar filter=lfs diff=lfs merge=lfs -text
+*.tflite filter=lfs diff=lfs merge=lfs -text
+*.tgz filter=lfs diff=lfs merge=lfs -text
+*.wasm filter=lfs diff=lfs merge=lfs -text
+*.xz filter=lfs diff=lfs merge=lfs -text
+*.zip filter=lfs diff=lfs merge=lfs -text
+*.zst filter=lfs diff=lfs merge=lfs -text
+*tfevents* filter=lfs diff=lfs merge=lfs -text
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..096343999f8d34d83bac806896b6aa711ce5a9c6
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,10 @@
+.env
+.cache
+Yukkilogs.txt
+.DS_Store
+*.session
+raw_files/
+cache/
+downloads/
+__pycache__/
+*.session-journal
diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 0000000000000000000000000000000000000000..b113c0edbb447ac0fb064072abe96a3d953bae02
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,12 @@
+FROM nikolaik/python-nodejs:python3.9-nodejs18
+RUN apt-get update -y && apt-get upgrade -y \
+ && apt-get install -y --no-install-recommends ffmpeg \
+ && apt-get clean \
+ && rm -rf /var/lib/apt/lists/*
+COPY . /app
+
+RUN chmod 777 /app
+WORKDIR /app
+RUN pip3 install --no-cache-dir --upgrade --requirement requirements.txt
+
+CMD ["python", "-u","-m", "YukkiMusic"]
\ No newline at end of file
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000000000000000000000000000000000000..62b404219b17338d48d9726aadeac0208f559777
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2022 Team Yukki
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/README.md b/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..823facbfc9d95d9122a5968b3559491edda58947
--- /dev/null
+++ b/README.md
@@ -0,0 +1,11 @@
+---
+title: One Stream
+emoji: đ
+colorFrom: indigo
+colorTo: gray
+sdk: docker
+pinned: false
+license: gpl-2.0
+---
+
+Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
diff --git a/YukkiMusic/__init__.py b/YukkiMusic/__init__.py
new file mode 100644
index 0000000000000000000000000000000000000000..a3a86c60477deefc5fe6c9edcef7cdc22ebed366
--- /dev/null
+++ b/YukkiMusic/__init__.py
@@ -0,0 +1,48 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from YukkiMusic.core.bot import YukkiBot
+from YukkiMusic.core.dir import dirr
+from YukkiMusic.core.git import git
+from YukkiMusic.core.userbot import Userbot
+from YukkiMusic.misc import dbb, heroku, sudo
+
+from .logging import LOGGER
+
+
+# Directories
+dirr()
+
+# Check Git Updates
+git()
+
+# Initialize Memory DB
+dbb()
+
+# Heroku APP
+heroku()
+
+# Load Sudo Users from DB
+sudo()
+
+# Bot Client
+app = YukkiBot()
+
+# Assistant Client
+userbot = Userbot()
+
+from .platforms import *
+
+YouTube = YouTubeAPI()
+Carbon = CarbonAPI()
+Spotify = SpotifyAPI()
+Apple = AppleAPI()
+Resso = RessoAPI()
+SoundCloud = SoundAPI()
+Telegram = TeleAPI()
diff --git a/YukkiMusic/__main__.py b/YukkiMusic/__main__.py
new file mode 100644
index 0000000000000000000000000000000000000000..38730b1e303fd4e13d6430490518801d96984334
--- /dev/null
+++ b/YukkiMusic/__main__.py
@@ -0,0 +1,86 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import asyncio
+import importlib
+import sys
+from aiohttp import web
+from pyrogram import idle
+from pytgcalls.exceptions import NoActiveGroupCall
+
+import config
+from config import BANNED_USERS
+from YukkiMusic import LOGGER, app, userbot
+from .alive import web_server
+from YukkiMusic.core.call import Yukki
+from YukkiMusic.plugins import ALL_MODULES
+from YukkiMusic.utils.database import get_banned_users, get_gbanned
+
+loop = asyncio.get_event_loop()
+server = web.AppRunner(web_server())
+
+async def init():
+ await server.setup()
+ await web.TCPSite(server,'0.0.0.0', 7860).start()
+ print("------------------------------Web Server Started ------------------------------")
+
+ if (
+ not config.STRING1
+ and not config.STRING2
+ and not config.STRING3
+ and not config.STRING4
+ and not config.STRING5
+ ):
+ LOGGER("YukkiMusic").error(
+ "No Assistant Clients Vars Defined!.. Exiting Process."
+ )
+ return
+ if (
+ not config.SPOTIFY_CLIENT_ID
+ and not config.SPOTIFY_CLIENT_SECRET
+ ):
+ LOGGER("YukkiMusic").warning(
+ "No Spotify Vars defined. Your bot won't be able to play spotify queries."
+ )
+ try:
+ users = await get_gbanned()
+ for user_id in users:
+ BANNED_USERS.add(user_id)
+ users = await get_banned_users()
+ for user_id in users:
+ BANNED_USERS.add(user_id)
+ except:
+ pass
+ await app.start()
+ for all_module in ALL_MODULES:
+ importlib.import_module("YukkiMusic.plugins" + all_module)
+ LOGGER("Yukkimusic.plugins").info("Successfully Imported Modules ")
+
+ await userbot.start()
+ await Yukki.start()
+ try:
+ await Yukki.stream_call(
+ "http://docs.evostream.com/sample_content/assets/sintel1m720p.mp4"
+ )
+ except NoActiveGroupCall:
+ LOGGER("YukkiMusic").error(
+ "[ERROR] - \n\nPlease turn on your Logger Group's Voice Call. Make sure you never close/end voice call in your log group"
+ )
+ sys.exit()
+ except:
+ pass
+ await Yukki.decorators()
+ LOGGER("YukkiMusic").info("Yukki Music Bot Started Successfully")
+ await idle()
+
+
+if __name__ == "__main__":
+ #keep_alive()
+ loop.run_until_complete(init())
+ LOGGER("YukkiMusic").info("Stopping Yukki Music Bot! GoodBye")
diff --git a/YukkiMusic/core/bot.py b/YukkiMusic/core/bot.py
new file mode 100644
index 0000000000000000000000000000000000000000..877f785e8d33ae4f74cddff2e2a3ee5741c46b7a
--- /dev/null
+++ b/YukkiMusic/core/bot.py
@@ -0,0 +1,73 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import sys
+
+from pyrogram import Client
+from pyrogram.types import BotCommand
+
+import config
+
+from ..logging import LOGGER
+
+
+class YukkiBot(Client):
+
+ def __init__(self):
+ LOGGER(__name__).info(f"Starting Bot")
+ super().__init__(
+ "YukkiMusicBot",
+ api_id=config.API_ID,
+ api_hash=config.API_HASH,
+ bot_token=config.BOT_TOKEN,
+ )
+
+ async def start(self):
+ await super().start()
+ get_me = await self.get_me()
+ self.username = get_me.username
+ self.id = get_me.id
+ try:
+ await self.send_message(config.LOG_GROUP_ID, "Bot Started")
+ except:
+ LOGGER(__name__).error(
+ "Bot has failed to access the log Group. Make sure that you have added your bot to your log channel and promoted as admin!"
+ )
+ sys.exit()
+ if config.SET_CMDS :
+ try:
+ await self.set_bot_commands([
+ BotCommand("ping", "Check that bot is alive or dead"),
+ BotCommand("play", "Starts playing the requested song"),
+ BotCommand("webapp","Open webapp of the music bot for your chat."),
+ BotCommand("skip", "Moves to the next track in queue"),
+ BotCommand("pause", "Pause the current playing song"),
+ BotCommand("resume", "Resume the paused song"),
+ BotCommand("end", "Clear the queue and leave voice chat"),
+ BotCommand("shuffle", "Randomly shuffles the queued playlist."),
+ BotCommand("playmode","Allows you to change the default playmode for your chat"),
+ BotCommand("settings","Open the settings of the music bot for your chat.")
+ ])
+ except:
+ pass
+ else:
+ pass
+ a = await self.get_chat_member(config.LOG_GROUP_ID, self.id)
+ #print(a)
+ '''if a.status != "ChatMemberStatus.ADMINISTRATOR":
+ LOGGER(__name__).error(
+ "Please promote Bot as Admin in Logger Group"
+ )
+ sys.exit()'''
+ if get_me.last_name:
+ self.name = get_me.first_name + " " + get_me.last_name
+ else:
+ self.name = get_me.first_name
+ LOGGER(__name__).info(f"MusicBot Started as {self.name}")
+
diff --git a/YukkiMusic/core/call.py b/YukkiMusic/core/call.py
new file mode 100644
index 0000000000000000000000000000000000000000..aadc8f20aca20ee611baceabde151fbe99033a6c
--- /dev/null
+++ b/YukkiMusic/core/call.py
@@ -0,0 +1,750 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import asyncio
+from datetime import datetime, timedelta
+from typing import Union
+
+from pyrogram import Client
+from pyrogram.errors import (ChatAdminRequired, UserAlreadyParticipant,
+ UserNotParticipant)
+from pyrogram.types import InlineKeyboardMarkup
+from pytgcalls import PyTgCalls, StreamType
+from pytgcalls.exceptions import (AlreadyJoinedError, NoActiveGroupCall)
+from pytgcalls.types import (JoinedGroupCallParticipant,
+ LeftGroupCallParticipant, Update)
+from pytgcalls.types.stream.legacy import AudioPiped, AudioVideoPiped
+from pytgcalls.types.stream import MediaStream
+from pytgcalls.types.stream import StreamAudioEnded
+
+import config
+from strings import get_string
+from YukkiMusic import LOGGER, YouTube, app
+from YukkiMusic.misc import db
+from YukkiMusic.utils.database import (add_active_chat, add_active_video_chat,
+ get_assistant, get_audio_bitrate,
+ get_lang, get_loop, get_video_bitrate,
+ group_assistant, is_autoend, music_on,
+ mute_off, remove_active_chat,
+ remove_active_video_chat, set_loop)
+from YukkiMusic.utils.exceptions import AssistantErr
+from YukkiMusic.utils.inline.play import (stream_markup, telegram_markup)
+from YukkiMusic.utils.stream.autoclear import auto_clean
+from YukkiMusic.utils.thumbnails import gen_thumb
+
+autoend = {}
+counter = {}
+AUTO_END_TIME = 3
+
+
+async def _clear_(chat_id):
+ db[chat_id] = []
+ await remove_active_video_chat(chat_id)
+ await remove_active_chat(chat_id)
+
+
+class Call(PyTgCalls):
+
+ def __init__(self):
+ self.userbot1 = Client(
+ name="1",
+ api_id=config.API_ID,
+ api_hash=config.API_HASH,
+ session_string=str(config.STRING1),
+ )
+ self.one = PyTgCalls(
+ self.userbot1,
+ cache_duration=100,
+ )
+ self.userbot2 = Client(
+ name="2",
+ api_id=config.API_ID,
+ api_hash=config.API_HASH,
+ session_string=str(config.STRING2),
+ )
+ self.two = PyTgCalls(
+ self.userbot2,
+ cache_duration=100,
+ )
+ self.userbot3 = Client(
+ name="3",
+ api_id=config.API_ID,
+ api_hash=config.API_HASH,
+ session_string=str(config.STRING3),
+ )
+ self.three = PyTgCalls(
+ self.userbot3,
+ cache_duration=100,
+ )
+ self.userbot4 = Client(
+ name="4",
+ api_id=config.API_ID,
+ api_hash=config.API_HASH,
+ session_string=str(config.STRING4),
+ )
+ self.four = PyTgCalls(
+ self.userbot4,
+ cache_duration=100,
+ )
+ self.userbot5 = Client(
+ name="5",
+ api_id=config.API_ID,
+ api_hash=config.API_HASH,
+ session_string=str(config.STRING5),
+
+ )
+ self.five = PyTgCalls(
+ self.userbot5,
+ cache_duration=100,
+ )
+
+ async def pause_stream(self, chat_id: int):
+ assistant = await group_assistant(self, chat_id)
+ await assistant.pause_stream(chat_id)
+
+ async def resume_stream(self, chat_id: int):
+ assistant = await group_assistant(self, chat_id)
+ await assistant.resume_stream(chat_id)
+
+ async def mute_stream(self, chat_id: int):
+ assistant = await group_assistant(self, chat_id)
+ await assistant.mute_stream(chat_id)
+
+ async def unmute_stream(self, chat_id: int):
+ assistant = await group_assistant(self, chat_id)
+ await assistant.unmute_stream(chat_id)
+
+ async def stop_stream(self, chat_id: int):
+ assistant = await group_assistant(self, chat_id)
+ try:
+ await _clear_(chat_id)
+ await assistant.leave_group_call(chat_id)
+ except:
+ pass
+
+ async def force_stop_stream(self, chat_id: int):
+ assistant = await group_assistant(self, chat_id)
+ try:
+ check = db.get(chat_id)
+ check.pop(0)
+ except:
+ pass
+ await remove_active_video_chat(chat_id)
+ await remove_active_chat(chat_id)
+ try:
+ await assistant.leave_group_call(chat_id)
+ except:
+ pass
+
+ async def skip_stream(self,
+ chat_id: int,
+ link: str,
+ video: Union[bool, str] = None):
+ assistant = await group_assistant(self, chat_id)
+ audio_stream_quality = await get_audio_bitrate(chat_id)
+ video_stream_quality = await get_video_bitrate(chat_id)
+ stream = (AudioVideoPiped(
+ link,
+ audio_parameters=audio_stream_quality,
+ video_parameters=video_stream_quality,
+ ) if video else AudioPiped(link, audio_parameters=audio_stream_quality))
+ await assistant.change_stream(
+ chat_id,
+ stream,
+ )
+
+ async def seek_stream(self, chat_id, file_path, to_seek, duration, mode):
+ assistant = await group_assistant(self, chat_id)
+ audio_stream_quality = await get_audio_bitrate(chat_id)
+ video_stream_quality = await get_video_bitrate(chat_id)
+ stream = (AudioVideoPiped(
+ file_path,
+ audio_parameters=audio_stream_quality,
+ video_parameters=video_stream_quality,
+ additional_ffmpeg_parameters=f"-ss {to_seek} -to {duration}",
+ ) if mode == "video" else AudioPiped(
+ file_path,
+ audio_parameters=audio_stream_quality,
+ additional_ffmpeg_parameters=f"-ss {to_seek} -to {duration}",
+ ))
+ await assistant.change_stream(chat_id, stream)
+
+ async def stream_call(self, link):
+ assistant = await group_assistant(self, config.LOG_GROUP_ID)
+ await assistant.join_group_call(
+ config.LOG_GROUP_ID,
+ AudioVideoPiped(link),
+ #stream_type=StreamType().pulse_stream,
+ )
+ await asyncio.sleep(0.5)
+ await assistant.leave_group_call(config.LOG_GROUP_ID)
+ #####################################################################################################
+ '''async def live_call(self):
+ assistant = await group_assistant(self, config.LOG_GROUP_ID)
+ video_url="https://rr3---sn-gwpa-jj0k.googlevideo.com/videoplayback?expire=1720992868&ei=BPCTZo2hIcms9fwPxuiMoAQ&ip=34.93.83.202&id=o-AMlVXbysivqlwX1nPegSYVckA8UO6qOI1HNjA_C3ILVm&itag=137&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&bui=AXc671JgbdicNDMCvD64suPqy3V2hQF-GNxvsTkZ4Qpvo2dmu4bM_1b8SqzJ_I9_xQETqJurEz1vxgA2&vprv=1&mime=video%2Fmp4&rqh=1&gir=yes&clen=73860085&dur=221.916&lmt=1720511440920986&keepalive=yes&lmw=1&c=ANDROID_TV&txp=5532434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Cbui%2Cvprv%2Cmime%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRgIhAOjSd5GnA0fj9-jgOyQmW1sXSKx8WClSlO75pIYEZmjlAiEAkhn6qXR6My5_e1z4RBR6C6uGmYKrgaGnhWPYJ9S9ljc%3D&redirect_counter=1&rm=sn-cvh6l7e&fexp=24350516,24350518&req_id=f179ac02cc1ba3ee&cms_redirect=yes&cmsv=e&ipbypass=yes&mh=_i&mip=2409:40e1:1f:e1b6:6820:58cf:6a51:f4ca&mm=31&mn=sn-gwpa-jj0k&ms=au&mt=1720970964&mv=m&mvi=3&pl=48&lsparams=ipbypass,mh,mip,mm,mn,ms,mv,mvi,pl&lsig=AHlkHjAwRQIhAOJXJOUSYjnXhP8mIhp7BXilkWg27LhQwSgFo7h7Sqr9AiBFk9gtmm9mYJoANtxtJDYO92RdMgOq_AXd9D-mcxHuyw%3D%3D"
+ audio_url="https://rr3---sn-gwpa-jj0k.googlevideo.com/videoplayback?expire=1720992868&ei=BPCTZo2hIcms9fwPxuiMoAQ&ip=34.93.83.202&id=o-AMlVXbysivqlwX1nPegSYVckA8UO6qOI1HNjA_C3ILVm&itag=251&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&bui=AXc671JgbdicNDMCvD64suPqy3V2hQF-GNxvsTkZ4Qpvo2dmu4bM_1b8SqzJ_I9_xQETqJurEz1vxgA2&vprv=1&mime=audio%2Fwebm&rqh=1&gir=yes&clen=3994328&dur=221.941&lmt=1720508953333763&keepalive=yes&lmw=1&c=ANDROID_TV&txp=5532434&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Cbui%2Cvprv%2Cmime%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRQIgDKbPBz-4y2_EOaOVAA99AggLmKgrfnV21tW1KGXdPPICIQD3ZGqgy9ewLeEK2-WHYpE7P1-Lqm48qYyWOOwZzuvHCA%3D%3D&redirect_counter=1&rm=sn-cvh6l7e&fexp=24350516,24350518&req_id=877fdd961f2a3ee&cms_redirect=yes&cmsv=e&ipbypass=yes&mh=_i&mip=2409:40e1:1f:e1b6:6820:58cf:6a51:f4ca&mm=31&mn=sn-gwpa-jj0k&ms=au&mt=1720970964&mv=m&mvi=3&pl=48&lsparams=ipbypass,mh,mip,mm,mn,ms,mv,mvi,pl&lsig=AHlkHjAwRAIgJmYgFL-esOsvjZ0cLdtkGojJf2RAvyY3BghjEGHqxI4CIDMb2rdPML37UNGuGCZbrkwsKjgfI5FAZ3fOGO-3VO7X"
+
+ await assistant.join_group_call(
+ config.LOG_GROUP_ID,
+ MediaStream(
+ media_path=video_url,
+ audio_path=audio_url,
+ ),
+ #stream_type=StreamType().pulse_stream,
+ )
+
+'''
+ async def join_assistant(self, original_chat_id, chat_id):
+ language = await get_lang(original_chat_id)
+ _ = get_string(language)
+ userbot = await get_assistant(chat_id)
+ try:
+ try:
+ get = await app.get_chat_member(chat_id, userbot.id)
+ except ChatAdminRequired:
+ raise AssistantErr(_["call_1"])
+ if get.status == "banned" or get.status == "kicked":
+ raise AssistantErr(_["call_2"].format(userbot.username, userbot.id))
+ except UserNotParticipant:
+ chat = await app.get_chat(chat_id)
+ if chat.username:
+ try:
+ await userbot.join_chat(chat.username)
+ except UserAlreadyParticipant:
+ pass
+ except Exception as e:
+ raise AssistantErr(_["call_3"].format(e))
+ else:
+ try:
+ try:
+ try:
+ invitelink = chat.invite_link
+ if invitelink is None:
+ invitelink = (await app.export_chat_invite_link(chat_id))
+ except:
+ invitelink = (await app.export_chat_invite_link(chat_id))
+ except ChatAdminRequired:
+ raise AssistantErr(_["call_4"])
+ except Exception as e:
+ raise AssistantErr(e)
+ m = await app.send_message(original_chat_id, _["call_5"])
+ if invitelink.startswith("https://t.me/+"):
+ invitelink = invitelink.replace("https://t.me/+",
+ "https://t.me/joinchat/")
+ await asyncio.sleep(3)
+ await userbot.join_chat(invitelink)
+ await asyncio.sleep(4)
+ await m.edit(_["call_6"].format(userbot.name))
+ except UserAlreadyParticipant:
+ pass
+ except Exception as e:
+ raise AssistantErr(_["call_3"].format(e))
+
+ async def join_call(
+ self,
+ chat_id: int,
+ original_chat_id: int,
+ link,
+ video: Union[bool, str] = None,
+ ):
+ assistant = await group_assistant(self, chat_id)
+ audio_stream_quality = await get_audio_bitrate(chat_id)
+ video_stream_quality = await get_video_bitrate(chat_id)
+ stream = (AudioVideoPiped(
+ link,
+ audio_parameters=audio_stream_quality,
+ video_parameters=video_stream_quality,
+ ) if video else AudioPiped(link, audio_parameters=audio_stream_quality))
+ try:
+ print("join call")
+ await assistant.join_group_call(
+ chat_id,
+ stream,
+ #stream_type=StreamType().pulse_stream,
+ )
+ except NoActiveGroupCall:
+ try:
+ await self.join_assistant(original_chat_id, chat_id)
+ except Exception as e:
+ raise e
+ try:
+ await assistant.join_group_call(
+ chat_id,
+ stream,
+ #stream_type=StreamType().pulse_stream,
+ )
+ except Exception as e:
+ raise AssistantErr(
+ "**No Active Voice Chat Found**\n\nPlease make sure group's voice chat is enabled. If already enabled, please end it and start fresh voice chat again and if the problem continues, try /restart"
+ )
+ except AlreadyJoinedError:
+ raise AssistantErr(
+ "**Assistant Already in Voice Chat**\n\nSystems have detected that assistant is already there in the voice chat, this issue generally comes when you play 2 queries together.\n\nIf assistant is not present in voice chat, please end voice chat and start fresh voice chat again and if the problem continues, try /restart"
+ )
+ '''except TelegramServerError:
+ raise AssistantErr(
+ "**Telegram Server Error**\n\nTelegram is having some internal server problems, Please try playing again.\n\n If this problem keeps coming everytime, please end your voice chat and start fresh voice chat again."
+ )'''
+ await add_active_chat(chat_id)
+ await mute_off(chat_id)
+ await music_on(chat_id)
+ if video:
+ await add_active_video_chat(chat_id)
+ if await is_autoend():
+ counter[chat_id] = {}
+ users = len(await assistant.get_participants(chat_id))
+ if users == 1:
+ autoend[chat_id] = datetime.now() + timedelta(minutes=AUTO_END_TIME)
+
+ async def join_live_call(
+ self,
+ chat_id: int,
+ original_chat_id: int,
+ link,
+ video: Union[bool, str] = None,
+ ):
+ assistant = await group_assistant(self, chat_id)
+ audio_stream_quality = await get_audio_bitrate(chat_id)
+ video_stream_quality = await get_video_bitrate(chat_id)
+ '''stream = (AudioVideoPiped(
+ link,
+ audio_parameters=audio_stream_quality,
+ video_parameters=video_stream_quality,
+ ) if video else AudioPiped(link, audio_parameters=audio_stream_quality))'''
+ try:
+ print("join live call")
+ if video:
+ await assistant.join_group_call(
+ chat_id,
+ MediaStream(
+ media_path=link,
+ video_parameters=video_stream_quality,
+ ),
+ #stream_type=StreamType().pulse_stream,
+ )
+ else:
+ await assistant.join_group_call(
+ chat_id,
+ MediaStream(
+ media_path=link,
+ audio_parameters=audio_stream_quality,
+ ),
+ #stream_type=StreamType().pulse_stream,
+ )
+ except NoActiveGroupCall:
+ try:
+ await self.join_assistant(original_chat_id, chat_id)
+ except Exception as e:
+ raise e
+ try:
+ if video:
+ await assistant.join_group_call(
+ chat_id,
+ MediaStream(
+ media_path=link,
+ video_parameters=video_stream_quality,
+ ),
+ #stream_type=StreamType().pulse_stream,
+ )
+ else:
+ await assistant.join_group_call(
+ chat_id,
+ MediaStream(
+ media_path=link,
+ audio_parameters=audio_stream_quality,
+ ),
+ #stream_type=StreamType().pulse_stream,
+ )
+ except Exception as e:
+ raise AssistantErr(
+ "**No Active Voice Chat Found**\n\nPlease make sure group's voice chat is enabled. If already enabled, please end it and start fresh voice chat again and if the problem continues, try /restart"
+ )
+ except AlreadyJoinedError:
+ raise AssistantErr(
+ "**Assistant Already in Voice Chat**\n\nSystems have detected that assistant is already there in the voice chat, this issue generally comes when you play 2 queries together.\n\nIf assistant is not present in voice chat, please end voice chat and start fresh voice chat again and if the problem continues, try /restart"
+ )
+ '''except TelegramServerError:
+ raise AssistantErr(
+ "**Telegram Server Error**\n\nTelegram is having some internal server problems, Please try playing again.\n\n If this problem keeps coming everytime, please end your voice chat and start fresh voice chat again."
+ )'''
+ await add_active_chat(chat_id)
+ await mute_off(chat_id)
+ await music_on(chat_id)
+ if video:
+ await add_active_video_chat(chat_id)
+ if await is_autoend():
+ counter[chat_id] = {}
+ users = len(await assistant.get_participants(chat_id))
+ if users == 1:
+ autoend[chat_id] = datetime.now() + timedelta(minutes=AUTO_END_TIME)
+
+
+
+
+ async def live_call(
+ self,
+ chat_id: int,
+ original_chat_id: int,
+ video_url,
+ audio_url,
+ video: Union[bool, str] = None,
+ ):
+
+ assistant = await group_assistant(self, chat_id)
+ audio_stream_quality = await get_audio_bitrate(chat_id)
+ video_stream_quality = await get_video_bitrate(chat_id)
+ '''stream = (AudioVideoPiped(
+ link,
+ audio_parameters=audio_stream_quality,
+ video_parameters=video_stream_quality,
+ ) if video else AudioPiped(link, audio_parameters=audio_stream_quality))'''
+ try:
+ print("live call")
+ if video:
+ await assistant.join_group_call(
+ chat_id,
+ MediaStream(
+ media_path=video_url,
+ audio_path=audio_url,
+ audio_parameters=audio_stream_quality,
+ video_parameters=video_stream_quality,
+ ),
+ #stream_type=StreamType().pulse_stream,
+ )
+ else:
+ await assistant.join_group_call(
+ chat_id,
+ MediaStream(
+ media_path=audio_url,
+ audio_parameters=audio_stream_quality,
+ ),
+ #stream_type=StreamType().pulse_stream,
+ )
+ except NoActiveGroupCall:
+ try:
+ await self.join_assistant(original_chat_id, chat_id)
+ except Exception as e:
+ raise e
+ try:
+ print("live call")
+ if video:
+ await assistant.join_group_call(
+ chat_id,
+ MediaStream(
+ media_path=video_url,
+ audio_path=audio_url,
+ audio_parameters=audio_stream_quality,
+ video_parameters=video_stream_quality,
+ ),
+ #stream_type=StreamType().pulse_stream,
+ )
+ else:
+ await assistant.join_group_call(
+ chat_id,
+ MediaStream(
+ media_path=audio_url,
+ audio_parameters=audio_stream_quality,
+ ),
+ #stream_type=StreamType().pulse_stream,
+ )
+ except Exception as e:
+ raise AssistantErr(
+ "**No Active Voice Chat Found**\n\nPlease make sure group's voice chat is enabled. If already enabled, please end it and start fresh voice chat again and if the problem continues, try /restart"
+ )
+ except AlreadyJoinedError:
+ raise AssistantErr(
+ "**Assistant Already in Voice Chat**\n\nSystems have detected that assistant is already there in the voice chat, this issue generally comes when you play 2 queries together.\n\nIf assistant is not present in voice chat, please end voice chat and start fresh voice chat again and if the problem continues, try /restart"
+ )
+ '''except TelegramServerError:
+ raise AssistantErr(
+ "**Telegram Server Error**\n\nTelegram is having some internal server problems, Please try playing again.\n\n If this problem keeps coming everytime, please end your voice chat and start fresh voice chat again."
+ )'''
+ await add_active_chat(chat_id)
+ await mute_off(chat_id)
+ await music_on(chat_id)
+ if video:
+ await add_active_video_chat(chat_id)
+ if await is_autoend():
+ counter[chat_id] = {}
+ users = len(await assistant.get_participants(chat_id))
+ if users == 1:
+ autoend[chat_id] = datetime.now() + timedelta(minutes=AUTO_END_TIME)
+
+ async def change_stream(self, client, chat_id):
+ check = db.get(chat_id)
+ popped = None
+ loop = await get_loop(chat_id)
+ try:
+ if loop == 0:
+ popped = check.pop(0)
+ else:
+ loop = loop - 1
+ await set_loop(chat_id, loop)
+ if popped:
+ if config.AUTO_DOWNLOADS_CLEAR == str(True):
+ await auto_clean(popped)
+ if not check:
+ await _clear_(chat_id)
+ return await client.leave_group_call(chat_id)
+ except:
+ try:
+ await _clear_(chat_id)
+ return await client.leave_group_call(chat_id)
+ except:
+ return
+ else:
+ queued = check[0]["file"]
+ language = await get_lang(chat_id)
+ _ = get_string(language)
+ title = (check[0]["title"]).title()
+ user = check[0]["by"]
+ original_chat_id = check[0]["chat_id"]
+ streamtype = check[0]["streamtype"]
+ audio_stream_quality = await get_audio_bitrate(chat_id)
+ video_stream_quality = await get_video_bitrate(chat_id)
+ videoid = check[0]["vidid"]
+ check[0]["played"] = 0
+ if "live_" in queued:
+ n, link = await YouTube.video(videoid, True)
+ if n == 0:
+ return await app.send_message(
+ original_chat_id,
+ text=_["call_9"],
+ )
+ stream = (AudioVideoPiped(
+ link,
+ audio_parameters=audio_stream_quality,
+ video_parameters=video_stream_quality,
+ ) if str(streamtype) == "video" else AudioPiped(
+ link, audio_parameters=audio_stream_quality))
+ try:
+ await client.change_stream(chat_id, stream)
+ except Exception:
+ return await app.send_message(
+ original_chat_id,
+ text=_["call_9"],
+ )
+ img = await gen_thumb(videoid)
+ button = telegram_markup(_, chat_id)
+ run = await app.send_photo(
+ original_chat_id,
+ photo=img,
+ caption=_["stream_1"].format(
+ user,
+ f"https://t.me/{app.username}?start=info_{videoid}",
+ ),
+ reply_markup=InlineKeyboardMarkup(button),
+ )
+ db[chat_id][0]["mystic"] = run
+ db[chat_id][0]["markup"] = "tg"
+ elif "vid_" in queued:
+ mystic = await app.send_message(original_chat_id, _["call_10"])
+ try:
+ file_path, direct = await YouTube.download(
+ videoid,
+ mystic,
+ videoid=True,
+ video=True if str(streamtype) == "video" else False,
+ )
+ except:
+ return await mystic.edit_text(_["call_9"],
+ disable_web_page_preview=True)
+ stream = (AudioVideoPiped(
+ file_path,
+ audio_parameters=audio_stream_quality,
+ video_parameters=video_stream_quality,
+ ) if str(streamtype) == "video" else AudioPiped(
+ file_path,
+ audio_parameters=audio_stream_quality,
+ ))
+ try:
+ await client.change_stream(chat_id, stream)
+ except Exception:
+ return await app.send_message(
+ original_chat_id,
+ text=_["call_9"],
+ )
+ img = await gen_thumb(videoid)
+ button = stream_markup(_, videoid, chat_id)
+ await mystic.delete()
+ run = await app.send_photo(
+ original_chat_id,
+ photo=img,
+ caption=_["stream_1"].format(
+ user,
+ f"https://t.me/{app.username}?start=info_{videoid}",
+ ),
+ reply_markup=InlineKeyboardMarkup(button),
+ )
+ db[chat_id][0]["mystic"] = run
+ db[chat_id][0]["markup"] = "stream"
+ elif "index_" in queued:
+ stream = (AudioVideoPiped(
+ videoid,
+ audio_parameters=audio_stream_quality,
+ video_parameters=video_stream_quality,
+ ) if str(streamtype) == "video" else AudioPiped(
+ videoid, audio_parameters=audio_stream_quality))
+ try:
+ await client.change_stream(chat_id, stream)
+ except Exception:
+ return await app.send_message(
+ original_chat_id,
+ text=_["call_9"],
+ )
+ button = telegram_markup(_, chat_id)
+ run = await app.send_photo(
+ original_chat_id,
+ photo=config.STREAM_IMG_URL,
+ caption=_["stream_2"].format(user),
+ reply_markup=InlineKeyboardMarkup(button),
+ )
+ db[chat_id][0]["mystic"] = run
+ db[chat_id][0]["markup"] = "tg"
+ else:
+ stream = (AudioVideoPiped(
+ queued,
+ audio_parameters=audio_stream_quality,
+ video_parameters=video_stream_quality,
+ ) if str(streamtype) == "video" else AudioPiped(
+ queued, audio_parameters=audio_stream_quality))
+ try:
+ await client.change_stream(chat_id, stream)
+ except Exception:
+ return await app.send_message(
+ original_chat_id,
+ text=_["call_9"],
+ )
+ if videoid == "telegram":
+ button = telegram_markup(_, chat_id)
+ run = await app.send_photo(
+ original_chat_id,
+ photo=config.TELEGRAM_AUDIO_URL
+ if str(streamtype) == "audio" else config.TELEGRAM_VIDEO_URL,
+ caption=_["stream_3"].format(title, check[0]["dur"], user),
+ reply_markup=InlineKeyboardMarkup(button),
+ )
+ db[chat_id][0]["mystic"] = run
+ db[chat_id][0]["markup"] = "tg"
+ elif videoid == "soundcloud":
+ button = telegram_markup(_, chat_id)
+ run = await app.send_photo(
+ original_chat_id,
+ photo=config.SOUNCLOUD_IMG_URL,
+ caption=_["stream_3"].format(title, check[0]["dur"], user),
+ reply_markup=InlineKeyboardMarkup(button),
+ )
+ db[chat_id][0]["mystic"] = run
+ db[chat_id][0]["markup"] = "tg"
+ else:
+ img = await gen_thumb(videoid)
+ button = stream_markup(_, videoid, chat_id)
+ run = await app.send_photo(
+ original_chat_id,
+ photo=img,
+ caption=_["stream_1"].format(
+ user,
+ f"https://t.me/{app.username}?start=info_{videoid}",
+ ),
+ reply_markup=InlineKeyboardMarkup(button),
+ )
+ db[chat_id][0]["mystic"] = run
+ db[chat_id][0]["markup"] = "stream"
+
+ async def ping(self):
+ pings = []
+ if config.STRING1:
+ pings.append(await self.one.ping)
+ if config.STRING2:
+ pings.append(await self.two.ping)
+ if config.STRING3:
+ pings.append(await self.three.ping)
+ if config.STRING4:
+ pings.append(await self.four.ping)
+ if config.STRING5:
+ pings.append(await self.five.ping)
+ return str(round(sum(pings) / len(pings), 3))
+
+
+ async def start(self):
+ LOGGER(__name__).info("Starting PyTgCalls Client\n")
+ if config.STRING1:
+ await self.one.start()
+ if config.STRING2:
+ await self.two.start()
+ if config.STRING3:
+ await self.three.start()
+ if config.STRING4:
+ await self.four.start()
+ if config.STRING5:
+ await self.five.start()
+
+ async def decorators(self):
+
+ @self.one.on_kicked()
+ @self.two.on_kicked()
+ @self.three.on_kicked()
+ @self.four.on_kicked()
+ @self.five.on_kicked()
+ @self.one.on_closed_voice_chat()
+ @self.two.on_closed_voice_chat()
+ @self.three.on_closed_voice_chat()
+ @self.four.on_closed_voice_chat()
+ @self.five.on_closed_voice_chat()
+ @self.one.on_left()
+ @self.two.on_left()
+ @self.three.on_left()
+ @self.four.on_left()
+ @self.five.on_left()
+ async def stream_services_handler(_, chat_id: int):
+ await self.stop_stream(chat_id)
+
+ @self.one.on_stream_end()
+ @self.two.on_stream_end()
+ @self.three.on_stream_end()
+ @self.four.on_stream_end()
+ @self.five.on_stream_end()
+ async def stream_end_handler1(client, update: Update):
+ if not isinstance(update, StreamAudioEnded):
+ return
+ await self.change_stream(client, update.chat_id)
+
+ @self.one.on_participants_change()
+ @self.two.on_participants_change()
+ @self.three.on_participants_change()
+ @self.four.on_participants_change()
+ @self.five.on_participants_change()
+ async def participants_change_handler(client, update: Update):
+ if not isinstance(update, JoinedGroupCallParticipant) and not isinstance(
+ update, LeftGroupCallParticipant):
+ return
+ chat_id = update.chat_id
+ users = counter.get(chat_id)
+ if not users:
+ try:
+ got = len(await client.get_participants(chat_id))
+ except:
+ return
+ counter[chat_id] = got
+ if got == 1:
+ autoend[chat_id] = datetime.now() + timedelta(minutes=AUTO_END_TIME)
+ return
+ autoend[chat_id] = {}
+ else:
+ final = (users + 1 if isinstance(update, JoinedGroupCallParticipant)
+ else users - 1)
+ counter[chat_id] = final
+ if final == 1:
+ autoend[chat_id] = datetime.now() + timedelta(minutes=AUTO_END_TIME)
+ return
+ autoend[chat_id] = {}
+
+
+
+Yukki = Call()
diff --git a/YukkiMusic/core/dir.py b/YukkiMusic/core/dir.py
new file mode 100644
index 0000000000000000000000000000000000000000..b02b03eb0781ea400c3a2eff0b9f7c2fdd5a1cc9
--- /dev/null
+++ b/YukkiMusic/core/dir.py
@@ -0,0 +1,33 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import os
+import sys
+from os import listdir, mkdir
+
+from ..logging import LOGGER
+
+
+def dirr():
+ if "assets" not in listdir():
+ LOGGER(__name__).warning(
+ f"Assets Folder not Found. Please clone repository again."
+ )
+ sys.exit()
+ for file in os.listdir():
+ if file.endswith(".jpg"):
+ os.remove(file)
+ for file in os.listdir():
+ if file.endswith(".jpeg"):
+ os.remove(file)
+ if "downloads" not in listdir():
+ mkdir("downloads")
+ if "cache" not in listdir():
+ mkdir("cache")
+ LOGGER(__name__).info("Directories Updated.")
diff --git a/YukkiMusic/core/git.py b/YukkiMusic/core/git.py
new file mode 100644
index 0000000000000000000000000000000000000000..2f3e0caf9a2ba1020ded35a476924fa6af0be05f
--- /dev/null
+++ b/YukkiMusic/core/git.py
@@ -0,0 +1,84 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import asyncio
+import shlex
+from typing import Tuple
+
+from git import Repo
+from git.exc import GitCommandError, InvalidGitRepositoryError
+
+import config
+
+from ..logging import LOGGER
+
+
+def install_req(cmd: str) -> Tuple[str, str, int, int]:
+ async def install_requirements():
+ args = shlex.split(cmd)
+ process = await asyncio.create_subprocess_exec(
+ *args,
+ stdout=asyncio.subprocess.PIPE,
+ stderr=asyncio.subprocess.PIPE,
+ )
+ stdout, stderr = await process.communicate()
+ return (
+ stdout.decode("utf-8", "replace").strip(),
+ stderr.decode("utf-8", "replace").strip(),
+ process.returncode,
+ process.pid,
+ )
+
+ return asyncio.get_event_loop().run_until_complete(
+ install_requirements()
+ )
+
+
+def git():
+ REPO_LINK = config.UPSTREAM_REPO
+ if config.GIT_TOKEN:
+ GIT_USERNAME = REPO_LINK.split("com/")[1].split("/")[0]
+ TEMP_REPO = REPO_LINK.split("https://")[1]
+ UPSTREAM_REPO = (
+ f"https://{GIT_USERNAME}:{config.GIT_TOKEN}@{TEMP_REPO}"
+ )
+ else:
+ UPSTREAM_REPO = config.UPSTREAM_REPO
+ try:
+ repo = Repo()
+ LOGGER(__name__).info(f"Git Client Found [VPS DEPLOYER]")
+ except GitCommandError:
+ LOGGER(__name__).info(f"Invalid Git Command")
+ except InvalidGitRepositoryError:
+ repo = Repo.init()
+ if "origin" in repo.remotes:
+ origin = repo.remote("origin")
+ else:
+ origin = repo.create_remote("origin", UPSTREAM_REPO)
+ origin.fetch()
+ repo.create_head(
+ config.UPSTREAM_BRANCH,
+ origin.refs[config.UPSTREAM_BRANCH],
+ )
+ repo.heads[config.UPSTREAM_BRANCH].set_tracking_branch(
+ origin.refs[config.UPSTREAM_BRANCH]
+ )
+ repo.heads[config.UPSTREAM_BRANCH].checkout(True)
+ try:
+ repo.create_remote("origin", config.UPSTREAM_REPO)
+ except BaseException:
+ pass
+ nrs = repo.remote("origin")
+ nrs.fetch(config.UPSTREAM_BRANCH)
+ try:
+ nrs.pull(config.UPSTREAM_BRANCH)
+ except GitCommandError:
+ repo.git.reset("--hard", "FETCH_HEAD")
+ install_req("pip3 install --no-cache-dir -r requirements.txt")
+ LOGGER(__name__).info(f"Fetched Updates from: {REPO_LINK}")
diff --git a/YukkiMusic/core/mongo.py b/YukkiMusic/core/mongo.py
new file mode 100644
index 0000000000000000000000000000000000000000..df7c8830f0c6505554dc00aa96d8266b23c13498
--- /dev/null
+++ b/YukkiMusic/core/mongo.py
@@ -0,0 +1,43 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from motor.motor_asyncio import AsyncIOMotorClient as _mongo_client_
+from pymongo import MongoClient
+from pyrogram import Client
+
+import config
+
+from ..logging import LOGGER
+
+TEMP_MONGODB = "mongodb+srv://shikhar:shikhar@cluster0.6xzlh.mongodb.net/myFirstDatabase?retryWrites=true&w=majority"
+
+
+if config.MONGO_DB_URI is None:
+ LOGGER(__name__).warning(
+ "No MONGO DB URL found.. Your Bot will work on Yukki's Database"
+ )
+ temp_client = Client(
+ "Yukki",
+ bot_token=config.BOT_TOKEN,
+ api_id=config.API_ID,
+ api_hash=config.API_HASH,
+ )
+ temp_client.start()
+ info = temp_client.get_me()
+ username = info.username
+ temp_client.stop()
+ _mongo_async_ = _mongo_client_(TEMP_MONGODB)
+ _mongo_sync_ = MongoClient(TEMP_MONGODB)
+ mongodb = _mongo_async_[username]
+ pymongodb = _mongo_sync_[username]
+else:
+ _mongo_async_ = _mongo_client_(config.MONGO_DB_URI)
+ _mongo_sync_ = MongoClient(config.MONGO_DB_URI)
+ mongodb = _mongo_async_.Yukki
+ pymongodb = _mongo_sync_.Yukki
diff --git a/YukkiMusic/core/userbot.py b/YukkiMusic/core/userbot.py
new file mode 100644
index 0000000000000000000000000000000000000000..36a6a36eb0f7db05a4ad62feca02febcea2485f4
--- /dev/null
+++ b/YukkiMusic/core/userbot.py
@@ -0,0 +1,193 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import sys
+
+from pyrogram import Client
+
+import config
+
+from ..logging import LOGGER
+
+assistants = []
+assistantids = []
+multi_clients = {}
+work_loads = {}
+
+async def req_client():
+ index = min(work_loads, key=work_loads.get)
+ faster_client = multi_clients[index]
+ response = dict(index=index, client=faster_client)
+ return response
+
+class Userbot(Client):
+
+ def __init__(self):
+ self.one = Client(
+ name="1",
+ api_id=config.API_ID,
+ api_hash=config.API_HASH,
+ session_string=str(config.STRING1),
+ no_updates=True,
+ )
+ self.two = Client(
+ name="2",
+ api_id=config.API_ID,
+ api_hash=config.API_HASH,
+ session_string=str(config.STRING2),
+ no_updates=True,
+ )
+ self.three = Client(
+ name="3",
+ api_id=config.API_ID,
+ api_hash=config.API_HASH,
+ session_string=str(config.STRING3),
+ no_updates=True,
+ )
+ self.four = Client(
+ name="4",
+ api_id=config.API_ID,
+ api_hash=config.API_HASH,
+ session_string=str(config.STRING4),
+ no_updates=True,
+ )
+ self.five = Client(
+ name="5",
+ api_id=config.API_ID,
+ api_hash=config.API_HASH,
+ session_string=str(config.STRING5),
+ no_updates=True,
+ )
+
+ async def start(self):
+ LOGGER(__name__).info(f"Starting Assistant Clients")
+ if config.STRING1:
+ await self.one.start()
+
+ assistants.append(1)
+ try:
+ await self.one.send_message(config.LOG_GROUP_ID, f"Assistant Started")
+ except:
+ LOGGER(__name__).error(
+ f"Assistant Account 1 has failed to access the log Group. Make sure that you have added your assistant to your log group and promoted as admin! "
+ )
+ sys.exit()
+ get_me = await self.one.get_me()
+ self.one.username = get_me.username
+ self.one.id = get_me.id
+ assistantids.append(get_me.id)
+ if get_me.last_name:
+ self.one.name = (get_me.first_name + " " + get_me.last_name)
+ else:
+ self.one.name = get_me.first_name
+ LOGGER(__name__).info(f"Assistant Started as {self.one.name}")
+ if config.STRING2:
+ await self.two.start()
+
+ assistants.append(2)
+ try:
+ await self.two.send_message(
+ config.LOG_GROUP_ID, "Assistant Started"
+ )
+ except:
+ LOGGER(__name__).error(
+ f"Assistant Account 2 has failed to access the log Group. Make sure that you have added your assistant to your log group and promoted as admin! "
+ )
+ sys.exit()
+ get_me = await self.two.get_me()
+ self.two.username = get_me.username
+ self.two.id = get_me.id
+ assistantids.append(get_me.id)
+ if get_me.last_name:
+ self.two.name = (
+ get_me.first_name + " " + get_me.last_name
+ )
+ else:
+ self.two.name = get_me.first_name
+ LOGGER(__name__).info(
+ f"Assistant Two Started as {self.two.name}"
+ )
+ if config.STRING3:
+ await self.three.start()
+
+ assistants.append(3)
+ try:
+ await self.three.send_message(
+ config.LOG_GROUP_ID, "Assistant Started"
+ )
+ except:
+ LOGGER(__name__).error(
+ f"Assistant Account 3 has failed to access the log Group. Make sure that you have added your assistant to your log group and promoted as admin! "
+ )
+ sys.exit()
+ get_me = await self.three.get_me()
+ self.three.username = get_me.username
+ self.three.id = get_me.id
+ assistantids.append(get_me.id)
+ if get_me.last_name:
+ self.three.name = (
+ get_me.first_name + " " + get_me.last_name
+ )
+ else:
+ self.three.name = get_me.first_name
+ LOGGER(__name__).info(
+ f"Assistant Three Started as {self.three.name}"
+ )
+ if config.STRING4:
+ await self.four.start()
+
+ assistants.append(4)
+ try:
+ await self.four.send_message(
+ config.LOG_GROUP_ID, "Assistant Started"
+ )
+ except:
+ LOGGER(__name__).error(
+ f"Assistant Account 4 has failed to access the log Group. Make sure that you have added your assistant to your log group and promoted as admin! "
+ )
+ sys.exit()
+ get_me = await self.four.get_me()
+ self.four.username = get_me.username
+ self.four.id = get_me.id
+ assistantids.append(get_me.id)
+ if get_me.last_name:
+ self.four.name = (
+ get_me.first_name + " " + get_me.last_name
+ )
+ else:
+ self.four.name = get_me.first_name
+ LOGGER(__name__).info(
+ f"Assistant Four Started as {self.four.name}"
+ )
+ if config.STRING5:
+ await self.five.start()
+
+ assistants.append(5)
+ try:
+ await self.five.send_message(
+ config.LOG_GROUP_ID, "Assistant Started"
+ )
+ except:
+ LOGGER(__name__).error(
+ f"Assistant Account 5 has failed to access the log Group. Make sure that you have added your assistant to your log group and promoted as admin! "
+ )
+ sys.exit()
+ get_me = await self.five.get_me()
+ self.five.username = get_me.username
+ self.five.id = get_me.id
+ assistantids.append(get_me.id)
+ if get_me.last_name:
+ self.five.name = (
+ get_me.first_name + " " + get_me.last_name
+ )
+ else:
+ self.five.name = get_me.first_name
+ LOGGER(__name__).info(
+ f"Assistant Five Started as {self.five.name}"
+ )
diff --git a/YukkiMusic/logging.py b/YukkiMusic/logging.py
new file mode 100644
index 0000000000000000000000000000000000000000..9c0f7c46619270716a809c03cbda245069fdfe94
--- /dev/null
+++ b/YukkiMusic/logging.py
@@ -0,0 +1,23 @@
+import logging
+#from logging.handlers import RotatingFileHandler
+
+from config import LOG_FILE_NAME
+
+'''logging.basicConfig(
+ level=logging.INFO,
+ format="[%(asctime)s - %(levelname)s] - %(name)s - %(message)s",
+ datefmt="%d-%b-%y %H:%M:%S",
+ handlers=[
+ RotatingFileHandler(
+ LOG_FILE_NAME, maxBytes=5000000, backupCount=10
+ ),
+ logging.StreamHandler(),
+ ],
+)'''
+
+logging.getLogger("pyrogram").setLevel(logging.ERROR)
+logging.getLogger("pytgcalls").setLevel(logging.ERROR)
+
+
+def LOGGER(name: str) -> logging.Logger:
+ return logging.getLogger(name)
diff --git a/YukkiMusic/misc.py b/YukkiMusic/misc.py
new file mode 100644
index 0000000000000000000000000000000000000000..a03332a17b57b26612ed0eb48275533ff7885454
--- /dev/null
+++ b/YukkiMusic/misc.py
@@ -0,0 +1,90 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import socket
+import time
+
+import heroku3
+from pyrogram import filters
+
+import config
+from YukkiMusic.core.mongo import pymongodb
+
+from .logging import LOGGER
+
+SUDOERS = filters.user()
+
+HAPP = None
+_boot_ = time.time()
+
+
+def is_heroku():
+ return "heroku" in socket.getfqdn()
+
+
+XCB = [
+ "/",
+ "@",
+ ".",
+ "com",
+ ":",
+ "git",
+ "heroku",
+ "push",
+ str(config.HEROKU_API_KEY),
+ "https",
+ str(config.HEROKU_APP_NAME),
+ "HEAD",
+ "main",
+]
+
+
+def dbb():
+ global db
+ db = {}
+ LOGGER(__name__).info(f"Database Initialized.")
+
+
+def sudo():
+ global SUDOERS
+ OWNER = config.OWNER_ID
+ if config.MONGO_DB_URI is None:
+ for user_id in OWNER:
+ SUDOERS.add(user_id)
+ else:
+ sudoersdb = pymongodb.sudoers
+ sudoers = sudoersdb.find_one({"sudo": "sudo"})
+ sudoers = [] if not sudoers else sudoers["sudoers"]
+ for user_id in OWNER:
+ SUDOERS.add(user_id)
+ if user_id not in sudoers:
+ sudoers.append(user_id)
+ sudoersdb.update_one(
+ {"sudo": "sudo"},
+ {"$set": {"sudoers": sudoers}},
+ upsert=True,
+ )
+ if sudoers:
+ for x in sudoers:
+ SUDOERS.add(x)
+ LOGGER(__name__).info(f"Sudoers Loaded.")
+
+
+def heroku():
+ global HAPP
+ if is_heroku:
+ if config.HEROKU_API_KEY and config.HEROKU_APP_NAME:
+ try:
+ Heroku = heroku3.from_key(config.HEROKU_API_KEY)
+ HAPP = Heroku.app(config.HEROKU_APP_NAME)
+ LOGGER(__name__).info(f"Heroku App Configured")
+ except BaseException:
+ LOGGER(__name__).warning(
+ f"Please make sure your Heroku API Key and Your App name are configured correctly in the heroku."
+ )
diff --git a/YukkiMusic/platforms/Apple.py b/YukkiMusic/platforms/Apple.py
new file mode 100644
index 0000000000000000000000000000000000000000..b4a86a1b90cce324d1e5f4c1857746e60b164114
--- /dev/null
+++ b/YukkiMusic/platforms/Apple.py
@@ -0,0 +1,86 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import re
+from typing import Union
+
+import aiohttp
+from bs4 import BeautifulSoup
+from youtubesearchpython.__future__ import VideosSearch
+
+
+class AppleAPI:
+ def __init__(self):
+ self.regex = r"^(https:\/\/music.apple.com\/)(.*)$"
+ self.base = "https://music.apple.com/in/playlist/"
+
+ async def valid(self, link: str):
+ if re.search(self.regex, link):
+ return True
+ else:
+ return False
+
+ async def track(self, url, playid: Union[bool, str] = None):
+ if playid:
+ url = self.base + url
+ async with aiohttp.ClientSession() as session:
+ async with session.get(url) as response:
+ if response.status != 200:
+ return False
+ html = await response.text()
+ soup = BeautifulSoup(html, "html.parser")
+ search = None
+ for tag in soup.find_all("meta"):
+ if tag.get("property", None) == "og:title":
+ search = tag.get("content", None)
+ if search is None:
+ return False
+ results = VideosSearch(search, limit=1)
+ for result in (await results.next())["result"]:
+ title = result["title"]
+ ytlink = result["link"]
+ vidid = result["id"]
+ duration_min = result["duration"]
+ thumbnail = result["thumbnails"][0]["url"].split("?")[0]
+ track_details = {
+ "title": title,
+ "link": ytlink,
+ "vidid": vidid,
+ "duration_min": duration_min,
+ "thumb": thumbnail,
+ }
+ return track_details, vidid
+
+ async def playlist(self, url, playid: Union[bool, str] = None):
+ if playid:
+ url = self.base + url
+ playlist_id = url.split("playlist/")[1]
+ async with aiohttp.ClientSession() as session:
+ async with session.get(url) as response:
+ if response.status != 200:
+ return False
+ html = await response.text()
+ soup = BeautifulSoup(html, "html.parser")
+ applelinks = soup.find_all(
+ "meta", attrs={"property": "music:song"}
+ )
+ results = []
+ for item in applelinks:
+ try:
+ xx = (
+ ((item["content"]).split("album/")[1]).split("/")[
+ 0
+ ]
+ ).replace("-", " ")
+ except:
+ xx = ((item["content"]).split("album/")[1]).split(
+ "/"
+ )[0]
+ results.append(xx)
+ return results, playlist_id
diff --git a/YukkiMusic/platforms/Carbon.py b/YukkiMusic/platforms/Carbon.py
new file mode 100644
index 0000000000000000000000000000000000000000..a59649163513c4104c522d6a69586f185cae90d8
--- /dev/null
+++ b/YukkiMusic/platforms/Carbon.py
@@ -0,0 +1,115 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import random
+from os.path import realpath
+
+import aiohttp
+from aiohttp import client_exceptions
+
+
+class UnableToFetchCarbon(Exception):
+ pass
+
+
+themes = [
+ "3024-night",
+ "a11y-dark",
+ "blackboard",
+ "base16-dark",
+ "base16-light",
+ "cobalt",
+ "duotone-dark",
+ "dracula-pro",
+ "hopscotch",
+ "lucario",
+ "material",
+ "monokai",
+ "nightowl",
+ "nord",
+ "oceanic-next",
+ "one-light",
+ "one-dark",
+ "panda-syntax",
+ "parasio-dark",
+ "seti",
+ "shades-of-purple",
+ "solarized+dark",
+ "solarized+light",
+ "synthwave-84",
+ "twilight",
+ "verminal",
+ "vscode",
+ "yeti",
+ "zenburn",
+]
+
+colour = [
+ "#FF0000",
+ "#FF5733",
+ "#FFFF00",
+ "#008000",
+ "#0000FF",
+ "#800080",
+ "#A52A2A",
+ "#FF00FF",
+ "#D2B48C",
+ "#00FFFF",
+ "#808000",
+ "#800000",
+ "#00FFFF",
+ "#30D5C8",
+ "#00FF00",
+ "#008080",
+ "#4B0082",
+ "#EE82EE",
+ "#FFC0CB",
+ "#000000",
+ "#FFFFFF",
+ "#808080",
+]
+
+
+class CarbonAPI:
+ def __init__(self):
+ self.language = "auto"
+ self.drop_shadow = True
+ self.drop_shadow_blur = "68px"
+ self.drop_shadow_offset = "20px"
+ self.font_family = "JetBrains Mono"
+ self.width_adjustment = True
+ self.watermark = False
+
+ async def generate(self, text: str, user_id):
+ async with aiohttp.ClientSession(
+ headers={"Content-Type": "application/json"},
+ ) as ses:
+ params = {
+ "code": text,
+ }
+ params["backgroundColor"] = random.choice(colour)
+ params["theme"] = random.choice(themes)
+ params["dropShadow"] = self.drop_shadow
+ params["dropShadowOffsetY"] = self.drop_shadow_offset
+ params["dropShadowBlurRadius"] = self.drop_shadow_blur
+ params["fontFamily"] = self.font_family
+ params["language"] = self.language
+ params["watermark"] = self.watermark
+ params["widthAdjustment"] = self.width_adjustment
+ try:
+ request = await ses.post(
+ "https://carbonara.vercel.app/api/cook",
+ json=params,
+ )
+ except client_exceptions.ClientConnectorError:
+ raise UnableToFetchCarbon("Can not reach the Host!")
+ resp = await request.read()
+ with open(f"cache/carbon{user_id}.jpg", "wb") as f:
+ f.write(resp)
+ return realpath(f.name)
diff --git a/YukkiMusic/platforms/Resso.py b/YukkiMusic/platforms/Resso.py
new file mode 100644
index 0000000000000000000000000000000000000000..3ecfc00f7dcad1228f2b909120f8e25ddaeba68d
--- /dev/null
+++ b/YukkiMusic/platforms/Resso.py
@@ -0,0 +1,63 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import re
+from typing import Union
+
+import aiohttp
+from bs4 import BeautifulSoup
+from youtubesearchpython.__future__ import VideosSearch
+
+
+class RessoAPI:
+ def __init__(self):
+ self.regex = r"^(https:\/\/m.resso.com\/)(.*)$"
+ self.base = "https://m.resso.com/"
+
+ async def valid(self, link: str):
+ if re.search(self.regex, link):
+ return True
+ else:
+ return False
+
+ async def track(self, url, playid: Union[bool, str] = None):
+ if playid:
+ url = self.base + url
+ async with aiohttp.ClientSession() as session:
+ async with session.get(url) as response:
+ if response.status != 200:
+ return False
+ html = await response.text()
+ soup = BeautifulSoup(html, "html.parser")
+ for tag in soup.find_all("meta"):
+ if tag.get("property", None) == "og:title":
+ title = tag.get("content", None)
+ if tag.get("property", None) == "og:description":
+ des = tag.get("content", None)
+ try:
+ des = des.split("¡")[0]
+ except:
+ pass
+ if des == "":
+ return
+ results = VideosSearch(title, limit=1)
+ for result in (await results.next())["result"]:
+ title = result["title"]
+ ytlink = result["link"]
+ vidid = result["id"]
+ duration_min = result["duration"]
+ thumbnail = result["thumbnails"][0]["url"].split("?")[0]
+ track_details = {
+ "title": title,
+ "link": ytlink,
+ "vidid": vidid,
+ "duration_min": duration_min,
+ "thumb": thumbnail,
+ }
+ return track_details, vidid
diff --git a/YukkiMusic/platforms/Soundcloud.py b/YukkiMusic/platforms/Soundcloud.py
new file mode 100644
index 0000000000000000000000000000000000000000..0cab7def63feb16481454985cfffa892a3ca29e6
--- /dev/null
+++ b/YukkiMusic/platforms/Soundcloud.py
@@ -0,0 +1,49 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import re
+from os import path
+
+from yt_dlp import YoutubeDL
+
+from YukkiMusic.utils.formatters import seconds_to_min
+
+
+class SoundAPI:
+ def __init__(self):
+ self.opts = {
+ "outtmpl": "downloads/%(id)s.%(ext)s",
+ "format": "best",
+ "retries": 3,
+ "nooverwrites": False,
+ "continuedl": True,
+ }
+
+ async def valid(self, link: str):
+ if "soundcloud" in link:
+ return True
+ else:
+ return False
+
+ async def download(self, url):
+ d = YoutubeDL(self.opts)
+ try:
+ info = d.extract_info(url)
+ except:
+ return False
+ xyz = path.join("downloads", f"{info['id']}.{info['ext']}")
+ duration_min = seconds_to_min(info["duration"])
+ track_details = {
+ "title": info["title"],
+ "duration_sec": info["duration"],
+ "duration_min": duration_min,
+ "uploader": info["uploader"],
+ "filepath": xyz,
+ }
+ return track_details, xyz
diff --git a/YukkiMusic/platforms/Spotify.py b/YukkiMusic/platforms/Spotify.py
new file mode 100644
index 0000000000000000000000000000000000000000..ff951a6c07f6d38dd918d90e6ff58dcf94873f3f
--- /dev/null
+++ b/YukkiMusic/platforms/Spotify.py
@@ -0,0 +1,109 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import re
+
+import spotipy
+from spotipy.oauth2 import SpotifyClientCredentials
+from youtubesearchpython.__future__ import VideosSearch
+
+import config
+
+
+class SpotifyAPI:
+ def __init__(self):
+ self.regex = r"^(https:\/\/open.spotify.com\/)(.*)$"
+ self.client_id = config.SPOTIFY_CLIENT_ID
+ self.client_secret = config.SPOTIFY_CLIENT_SECRET
+ if config.SPOTIFY_CLIENT_ID and config.SPOTIFY_CLIENT_SECRET:
+ self.client_credentials_manager = (
+ SpotifyClientCredentials(
+ self.client_id, self.client_secret
+ )
+ )
+ self.spotify = spotipy.Spotify(
+ client_credentials_manager=self.client_credentials_manager
+ )
+ else:
+ self.spotify = None
+
+ async def valid(self, link: str):
+ if re.search(self.regex, link):
+ return True
+ else:
+ return False
+
+ async def track(self, link: str):
+ track = self.spotify.track(link)
+ info = track["name"]
+ for artist in track["artists"]:
+ fetched = f' {artist["name"]}'
+ if "Various Artists" not in fetched:
+ info += fetched
+ results = VideosSearch(info, limit=1)
+ for result in (await results.next())["result"]:
+ ytlink = result["link"]
+ title = result["title"]
+ vidid = result["id"]
+ duration_min = result["duration"]
+ thumbnail = result["thumbnails"][0]["url"].split("?")[0]
+ track_details = {
+ "title": title,
+ "link": ytlink,
+ "vidid": vidid,
+ "duration_min": duration_min,
+ "thumb": thumbnail,
+ }
+ return track_details, vidid
+
+ async def playlist(self, url):
+ playlist = self.spotify.playlist(url)
+ playlist_id = playlist["id"]
+ results = []
+ for item in playlist["tracks"]["items"]:
+ music_track = item["track"]
+ info = music_track["name"]
+ for artist in music_track["artists"]:
+ fetched = f' {artist["name"]}'
+ if "Various Artists" not in fetched:
+ info += fetched
+ results.append(info)
+ return results, playlist_id
+
+ async def album(self, url):
+ album = self.spotify.album(url)
+ album_id = album["id"]
+ results = []
+ for item in album["tracks"]["items"]:
+ info = item["name"]
+ for artist in item["artists"]:
+ fetched = f' {artist["name"]}'
+ if "Various Artists" not in fetched:
+ info += fetched
+ results.append(info)
+
+ return (
+ results,
+ album_id,
+ )
+
+ async def artist(self, url):
+ artistinfo = self.spotify.artist(url)
+ artist_id = artistinfo["id"]
+ results = []
+ artisttoptracks = self.spotify.artist_top_tracks(url)
+ for item in artisttoptracks["tracks"]:
+ info = item["name"]
+ for artist in item["artists"]:
+ fetched = f' {artist["name"]}'
+ if "Various Artists" not in fetched:
+ info += fetched
+ results.append(info)
+
+ return results, artist_id
diff --git a/YukkiMusic/platforms/Telegram.py b/YukkiMusic/platforms/Telegram.py
new file mode 100644
index 0000000000000000000000000000000000000000..46f5429ba7b950e8dcab8fecc241179e68453b24
--- /dev/null
+++ b/YukkiMusic/platforms/Telegram.py
@@ -0,0 +1,205 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import asyncio
+import os
+import time
+from datetime import datetime, timedelta
+from typing import Union
+
+from pyrogram.types import (InlineKeyboardButton,
+ InlineKeyboardMarkup, Voice)
+
+import config
+from config import MUSIC_BOT_NAME, lyrical
+from YukkiMusic import app
+
+from ..utils.formatters import (convert_bytes, get_readable_time,
+ seconds_to_min)
+
+downloader = {}
+
+
+class TeleAPI:
+ def __init__(self):
+ self.chars_limit = 4096
+ self.sleep = config.TELEGRAM_DOWNLOAD_EDIT_SLEEP
+
+ async def send_split_text(self, message, string):
+ n = self.chars_limit
+ out = [(string[i : i + n]) for i in range(0, len(string), n)]
+ j = 0
+ for x in out:
+ if j <= 2:
+ j += 1
+ await message.reply_text(x)
+ return True
+
+ async def get_link(self, message):
+ if message.chat.username:
+ link = f"https://t.me/{message.chat.username}/{message.reply_to_message.id}"
+ else:
+ xf = str((message.chat.id))[4:]
+ link = f"https://t.me/c/{xf}/{message.reply_to_message.id}"
+ return link
+
+ async def get_filename(
+ self, file, audio: Union[bool, str] = None
+ ):
+ try:
+ file_name = file.file_name
+ if file_name is None:
+ file_name = (
+ "Telegram Audio File"
+ if audio
+ else "Telegram Video File"
+ )
+
+ except:
+ file_name = (
+ "Telegram Audio File"
+ if audio
+ else "Telegram Video File"
+ )
+ return file_name
+
+ async def get_duration(self, file):
+ try:
+ dur = seconds_to_min(file.duration)
+ except:
+ dur = "Unknown"
+ return dur
+
+ async def get_filepath(
+ self,
+ audio: Union[bool, str] = None,
+ video: Union[bool, str] = None,
+ ):
+ if audio:
+ try:
+ file_name = (
+ audio.file_unique_id
+ + "."
+ + (
+ (audio.file_name.split(".")[-1])
+ if (not isinstance(audio, Voice))
+ else "ogg"
+ )
+ )
+ except:
+ file_name = audio.file_unique_id + "." + ".ogg"
+ file_name = os.path.join(
+ os.path.realpath("downloads"), file_name
+ )
+ if video:
+ try:
+ file_name = (
+ video.file_unique_id
+ + "."
+ + (video.file_name.split(".")[-1])
+ )
+ except:
+ file_name = video.file_unique_id + "." + "mp4"
+ file_name = os.path.join(
+ os.path.realpath("downloads"), file_name
+ )
+ return file_name
+
+ async def download(self, _, message, mystic, fname):
+ left_time = {}
+ speed_counter = {}
+ if os.path.exists(fname):
+ return True
+
+ async def down_load():
+ async def progress(current, total):
+ if current == total:
+ return
+ current_time = time.time()
+ start_time = speed_counter.get(message.id)
+ check_time = current_time - start_time
+ upl = InlineKeyboardMarkup(
+ [
+ [
+ InlineKeyboardButton(
+ text="đĻ Cancel Downloading",
+ callback_data="stop_downloading",
+ ),
+ ]
+ ]
+ )
+ if datetime.now() > left_time.get(message.id):
+ percentage = current * 100 / total
+ percentage = str(round(percentage, 2))
+ speed = current / check_time
+ eta = int((total - current) / speed)
+ downloader[message.id] = eta
+ eta = get_readable_time(eta)
+ if not eta:
+ eta = "0 sec"
+ total_size = convert_bytes(total)
+ completed_size = convert_bytes(current)
+ speed = convert_bytes(speed)
+ text = f"""
+**{MUSIC_BOT_NAME} Telegram Media Downloader**
+
+**Total FileSize:** {total_size}
+**Completed:** {completed_size}
+**Percentage:** {percentage[:5]}%
+
+**Speed:** {speed}/s
+**ETA:** {eta}"""
+ try:
+ await mystic.edit_text(text, reply_markup=upl)
+ except:
+ pass
+ left_time[
+ message.id
+ ] = datetime.now() + timedelta(seconds=self.sleep)
+
+ speed_counter[message.id] = time.time()
+ left_time[message.id] = datetime.now()
+
+ try:
+ await app.download_media(
+ message.reply_to_message,
+ file_name=fname,
+ progress=progress,
+ )
+ await mystic.edit_text(
+ "Successfully Downloaded.. Processing file now"
+ )
+ downloader.pop(message.id)
+ except:
+ await mystic.edit_text(_["tg_2"])
+
+ if len(downloader) > 10:
+ timers = []
+ for x in downloader:
+ timers.append(downloader[x])
+ try:
+ low = min(timers)
+ eta = get_readable_time(low)
+ except:
+ eta = "Unknown"
+ await mystic.edit_text(_["tg_1"].format(eta))
+ return False
+
+ task = asyncio.create_task(down_load())
+ lyrical[mystic.id] = task
+ await task
+ downloaded = downloader.get(message.id)
+ if downloaded:
+ downloader.pop(message.id)
+ return False
+ verify = lyrical.get(mystic.id)
+ if not verify:
+ return False
+ lyrical.pop(mystic.id)
+ return True
diff --git a/YukkiMusic/platforms/Youtube.py b/YukkiMusic/platforms/Youtube.py
new file mode 100644
index 0000000000000000000000000000000000000000..aa8e1b420e635178e4d5d75d784da7b843a5024c
--- /dev/null
+++ b/YukkiMusic/platforms/Youtube.py
@@ -0,0 +1,467 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import asyncio
+import os
+import re
+from typing import Union
+
+import aiohttp
+import yt_dlp
+from pyrogram.types import Message
+from youtubesearchpython.__future__ import VideosSearch
+import scrapetube
+from innertube import InnerTube
+from pprint import pprint
+
+
+import config
+from YukkiMusic.utils.database import is_on_off
+from YukkiMusic.utils.formatters import time_to_seconds
+
+
+async def shell_cmd(cmd):
+ proc = await asyncio.create_subprocess_shell(
+ cmd,
+ stdout=asyncio.subprocess.PIPE,
+ stderr=asyncio.subprocess.PIPE,
+ )
+ out, errorz = await proc.communicate()
+ if errorz:
+ if (
+ "unavailable videos are hidden"
+ in (errorz.decode("utf-8")).lower()
+ ):
+ return out.decode("utf-8")
+ else:
+ return errorz.decode("utf-8")
+ return out.decode("utf-8")
+
+
+class YouTubeAPI:
+ def __init__(self):
+ self.base = "https://www.youtube.com/watch?v="
+ self.regex = r"(?:youtube\.com|youtu\.be)"
+ self.status = "https://www.youtube.com/oembed?url="
+ self.listbase = "https://youtube.com/playlist?list="
+ self.reg = re.compile(
+ r"\x1B(?:[@-Z\\-_]|\[[0-?]*[ -/]*[@-~])"
+ )
+
+ async def exists(
+ self, link: str, videoid: Union[bool, str] = None
+ ):
+ if videoid:
+ link = self.base + link
+ if re.search(self.regex, link):
+ return True
+ else:
+ return False
+
+ async def url(self, message_1: Message) -> Union[str, None]:
+ messages = [message_1]
+ if message_1.reply_to_message:
+ messages.append(message_1.reply_to_message)
+ text = ""
+ offset = None
+ length = None
+ for message in messages:
+ if offset:
+ break
+ if message.entities:
+ for entity in message.entities:
+ if entity.type == "url":
+ text = message.text or message.caption
+ offset, length = entity.offset, entity.length
+ break
+ elif message.caption_entities:
+ for entity in message.caption_entities:
+ if entity.type == "text_link":
+ return entity.url
+ if offset in (None,):
+ return None
+ return text[offset : offset + length]
+
+ async def details(
+ self, link: str, videoid: Union[bool, str] = None
+ ):
+ if videoid:
+ link1 = self.base + link
+ if "&" in link:
+ link1 = link.split("&")[0]
+ results = VideosSearch(link, limit=1)
+ for result in (await results.next())["result"]:
+ title = result["title"]
+ duration_min = result["duration"]
+ thumbnail = result["thumbnails"][0]["url"].split("?")[0]
+ vidid = result["id"]
+ if str(duration_min) == "None":
+ duration_sec = 0
+ else:
+ duration_sec = int(time_to_seconds(duration_min))
+ return title, duration_min, duration_sec, thumbnail, vidid
+
+ async def title(
+ self, link: str, videoid: Union[bool, str] = None
+ ):
+ if videoid:
+ link = self.base + link
+ if "&" in link:
+ link = link.split("&")[0]
+ results = VideosSearch(link, limit=1)
+ for result in (await results.next())["result"]:
+ title = result["title"]
+ return title
+
+ async def duration(
+ self, link: str, videoid: Union[bool, str] = None
+ ):
+ if videoid:
+ link = self.base + link
+ if "&" in link:
+ link = link.split("&")[0]
+ results = VideosSearch(link, limit=1)
+ for result in (await results.next())["result"]:
+ duration = result["duration"]
+ return duration
+
+ async def thumbnail(
+ self, link: str, videoid: Union[bool, str] = None
+ ):
+ if videoid:
+ link = self.base + link
+ if "&" in link:
+ link = link.split("&")[0]
+ results = VideosSearch(link, limit=1)
+ for result in (await results.next())["result"]:
+ thumbnail = result["thumbnails"][0]["url"].split("?")[0]
+ return thumbnail
+
+ async def video(
+ self, link: str, videoid: Union[bool, str] = None
+ ):
+ if videoid:
+ link = self.base + link
+ if "&" in link:
+ link = link.split("&")[0]
+ proc = await asyncio.create_subprocess_exec(
+ "yt-dlp",
+ "-g",
+ "-f",
+ "best[height<=?720][width<=?1280]",
+ f"{link}",
+ stdout=asyncio.subprocess.PIPE,
+ stderr=asyncio.subprocess.PIPE,
+ )
+ stdout, stderr = await proc.communicate()
+ if stdout:
+ return 1, stdout.decode().split("\n")[0]
+ else:
+ return 0, stderr.decode()
+
+ async def playlist(
+ self, link, limit, user_id, videoid: Union[bool, str] = None
+ ):
+ if videoid:
+ link1 = self.listbase + link
+ if "&" in link:
+ link1 = link.split("&")[0]
+ playlist = await shell_cmd(
+ f"yt-dlp -i --get-id --flat-playlist --playlist-end {limit} --skip-download {link}"
+ )
+ try:
+ result = playlist.split("\n")
+ for key in result:
+ if key == "":
+ result.remove(key)
+ except:
+ result = []
+ return result
+
+ async def track(
+ self, link: str, videoid: Union[bool, str] = None
+ ):
+ if videoid:
+ link = self.base + link
+ if "&" in link:
+ link = link.split("&")[0]
+ results = VideosSearch(link, limit=1)
+ #results = scrapetube.get_search(link,limit=1)
+ for result in (await results.next())["result"]:
+ #print(result)
+ title = result["id"] if result["title"]=='' else result["title"]
+ duration_min = result["duration"]
+ vidid = result["id"]
+ yturl = result["link"]
+ thumbnail = result["thumbnails"][0]["url"].split("?")[0]
+ track_details = {
+ "title": title,
+ "link": yturl,
+ "vidid": vidid,
+ "duration_min": duration_min,
+ "thumb": thumbnail,
+ }
+ '''
+ for result in results:
+ print(result)
+ title = result['title']['runs']['text']
+ duration_min = result['lengthText']['simpleText']
+ vidid = result['videoId']
+ yturl = link
+ thumbnail = result['thumbnail']['thumbnails'][0]['url']
+
+
+ track_details = {
+ "title":title ,
+ "link": link,
+ "vidid": vidid,
+ "duration_min": duration_min,
+ "thumb": thumbnail,
+ }'''
+ return track_details, vidid
+
+ async def formats(
+ self, link: str, videoid: Union[bool, str] = None
+ ):
+ if videoid:
+ link = self.base + link
+ if "&" in link:
+ link = link.split("&")[0]
+ ytdl_opts = {"quiet": True}
+ ydl = yt_dlp.YoutubeDL(ytdl_opts)
+ with ydl:
+ formats_available = []
+ r = ydl.extract_info(link, download=False)
+ for format in r["formats"]:
+ try:
+ str(format["format"])
+ except:
+ continue
+ if not "dash" in str(format["format"]).lower():
+ try:
+ format["format"]
+ format["filesize"]
+ format["format_id"]
+ format["ext"]
+ format["format_note"]
+ except:
+ continue
+ formats_available.append(
+ {
+ "format": format["format"],
+ "filesize": format["filesize"],
+ "format_id": format["format_id"],
+ "ext": format["ext"],
+ "format_note": format["format_note"],
+ "yturl": link,
+ }
+ )
+ return formats_available, link
+
+ async def slider(
+ self,
+ link: str,
+ query_type: int,
+ videoid: Union[bool, str] = None,
+ ):
+ if videoid:
+ link = self.base + link
+ if "&" in link:
+ link = link.split("&")[0]
+ a = VideosSearch(link, limit=10)
+ result = (await a.next()).get("result")
+ title = result[query_type]["title"]
+ duration_min = result[query_type]["duration"]
+ vidid = result[query_type]["id"]
+ thumbnail = result[query_type]["thumbnails"][0]["url"].split(
+ "?"
+ )[0]
+ return title, duration_min, thumbnail, vidid
+
+ async def download(
+ self,
+ link: str,
+ mystic,
+ video: Union[bool, str] = None,
+ videoid: Union[bool, str] = None,
+ songaudio: Union[bool, str] = None,
+ songvideo: Union[bool, str] = None,
+ format_id: Union[bool, str] = None,
+ title: Union[bool, str] = None,
+ ) -> str:
+ if videoid:
+ link = self.base + link
+ loop = asyncio.get_running_loop()
+
+ def audio_dl():
+ ydl_optssx = {
+ "format": "bestaudio/best",
+ "outtmpl": "downloads/%(id)s.%(ext)s",
+ "geo_bypass": True,
+ "nocheckcertificate": True,
+ "quiet": True,
+ "no_warnings": True,
+ }
+ x = yt_dlp.YoutubeDL(ydl_optssx)
+ info = x.extract_info(link, False)
+ xyz = os.path.join(
+ "downloads", f"{info['id']}.{info['ext']}"
+ )
+ if os.path.exists(xyz):
+ return xyz
+ x.download([link])
+ return xyz
+
+ def video_dl():
+ ydl_optssx = {
+ "format": "(bestvideo[height<=?720][width<=?1280][ext=mp4])+(bestaudio[ext=m4a])",
+ "outtmpl": "downloads/%(id)s.%(ext)s",
+ "geo_bypass": True,
+ "nocheckcertificate": True,
+ "quiet": True,
+ "no_warnings": True,
+ }
+ x = yt_dlp.YoutubeDL(ydl_optssx)
+ info = x.extract_info(link, False)
+ xyz = os.path.join(
+ "downloads", f"{info['id']}.{info['ext']}"
+ )
+ if os.path.exists(xyz):
+ return xyz
+ x.download([link])
+ return xyz
+
+ def song_video_dl():
+ formats = f"{format_id}+140"
+ fpath = f"downloads/{title}"
+ ydl_optssx = {
+ "format": formats,
+ "outtmpl": fpath,
+ "geo_bypass": True,
+ "nocheckcertificate": True,
+ "quiet": True,
+ "no_warnings": True,
+ "prefer_ffmpeg": True,
+ "merge_output_format": "mp4",
+ }
+ x = yt_dlp.YoutubeDL(ydl_optssx)
+ x.download([link])
+
+ def song_audio_dl():
+ fpath = f"downloads/{title}.%(ext)s"
+ ydl_optssx = {
+ "format": format_id,
+ "outtmpl": fpath,
+ "geo_bypass": True,
+ "nocheckcertificate": True,
+ "quiet": True,
+ "no_warnings": True,
+ "prefer_ffmpeg": True,
+ "postprocessors": [
+ {
+ "key": "FFmpegExtractAudio",
+ "preferredcodec": "mp3",
+ "preferredquality": "192",
+ }
+ ],
+ }
+ x = yt_dlp.YoutubeDL(ydl_optssx)
+ x.download([link])
+
+ if songvideo:
+ await loop.run_in_executor(None, song_video_dl)
+ fpath = f"downloads/{title}.mp4"
+ return fpath
+ elif songaudio:
+ await loop.run_in_executor(None, song_audio_dl)
+ fpath = f"downloads/{title}.mp3"
+ return fpath
+ elif video:
+ if await is_on_off(config.YTDOWNLOADER):
+ direct = True
+ downloaded_file = await loop.run_in_executor(
+ None, video_dl
+ )
+ else:
+ proc = await asyncio.create_subprocess_exec(
+ "yt-dlp",
+ "-g",
+ "-f",
+ "best[height<=?720][width<=?1280]",
+ f"{link}",
+ stdout=asyncio.subprocess.PIPE,
+ stderr=asyncio.subprocess.PIPE,
+ )
+ stdout, stderr = await proc.communicate()
+ if stdout:
+ downloaded_file = stdout.decode().split("\n")[0]
+ direct = None
+ else:
+ return
+ else:
+ direct = True
+ downloaded_file = await loop.run_in_executor(
+ None, audio_dl
+ )
+ return downloaded_file, direct
+ async def audio_video_url(self,
+ link: str,
+ mystic,
+ video: Union[bool, str] = None,
+ videoid: Union[bool, str] = None,
+ songaudio: Union[bool, str] = None,
+ songvideo: Union[bool, str] = None,
+ format_id: Union[bool, str] = None,
+ title: Union[bool, str] = None,
+ ) -> str:
+ if videoid:
+ video_id= link
+ loop = asyncio.get_running_loop()
+
+ def get_audio_url():
+ #yclient = InnerTube("ANDROID_TV")
+ yclient = InnerTube("ANDROID_LITE")
+ # Fetch the player data for the video
+ data = yclient.player(video_id)
+
+ # List of streams of the video
+ streams = data["streamingData"]["adaptiveFormats"]
+ for stream in streams:
+ if stream["mimeType"].find('video'):
+ audio_url=stream['url']
+ break
+ else:
+ continue
+ return audio_url
+ def get_video_url():
+
+ #yclient = InnerTube("ANDROID_TV")
+ yclient = InnerTube("ANDROID_LITE")
+
+
+ # Fetch the player data for the video
+ data = yclient.player(video_id)
+
+ # List of streams of the video
+ streams = data["streamingData"]["adaptiveFormats"]
+ for stream in streams:
+ if stream["mimeType"].find('audio'):
+ video_url=stream['url']
+ break
+ else:
+ continue
+ return video_url
+ video_url = await loop.run_in_executor(
+ None, get_video_url
+ )
+ audio_url = await loop.run_in_executor(
+ None, get_audio_url
+ )
+
+ return video_url, audio_url
diff --git a/YukkiMusic/platforms/YoutubeAPI/BS4scrapAPI.py b/YukkiMusic/platforms/YoutubeAPI/BS4scrapAPI.py
new file mode 100644
index 0000000000000000000000000000000000000000..df33f0105ce023c85b4701123256f67f477f4a70
--- /dev/null
+++ b/YukkiMusic/platforms/YoutubeAPI/BS4scrapAPI.py
@@ -0,0 +1,179 @@
+
+from bs4 import BeautifulSoup
+from urllib.request import urlopen
+from urllib.parse import urlencode
+import requests
+import re
+import json
+
+
+
+async def extract_json_tranding(data):
+ # Join the list into a single string
+ combined_str = ''.join(data)
+
+ # Use regular expression to find the JSON data after 'ytInitialData = '
+ match = re.search(r'var ytInitialData\s*=\s*(\{.*\});', combined_str)
+
+ if match:
+ json_str = match.group(1) # Extract the JSON string
+ json_str = json_str.encode('utf-8').decode('unicode_escape')
+ try:
+ # Parse the JSON data
+ json_data = json.loads(json_str)
+ return json_data
+ except json.JSONDecodeError as e:
+ print("Error decoding JSON:", e)
+ return None
+ else:
+ print("No JSON data found.")
+ return None
+
+
+
+async def search_videos(query):
+ searchresult_list=[]
+
+ final_query={'search_query':query,'sp':'EgIQAQ%253D%253D','persist_gl':'IN'}
+ param=urlencode(final_query)
+ url = urlopen(f'https://www.youtube.com/results?{param}').read()
+ soup = BeautifulSoup(url, 'lxml')
+ allscript = soup.findAll('script')
+ text = ''
+ for script in allscript:
+ if 'var ytInitialData' in str(script.contents):
+ text = str(script.contents)
+ else:
+ continue
+
+ json_data = await extract_json_tranding(text)
+ all_search_video = json_data.get('contents', {}).get(
+ 'twoColumnSearchResultsRenderer',
+ {}).get('primaryContents',
+ {}).get('sectionListRenderer',
+ {}).get('contents', [])[0].get('itemSectionRenderer',
+ {}).get('contents', [])
+
+ for video in all_search_video:
+ if video.get('videoRenderer', {}):
+ if video.get('videoRenderer',{}).get('descriptionSnippet',{}):
+ description=video['videoRenderer']['descriptionSnippet']['runs'][0]['text']
+ else:
+ description=''
+ details={
+ "id":video['videoRenderer']['videoId'],
+ "title":video['videoRenderer']['title']['runs'][0]['text'],
+ "thumbnails":video['videoRenderer']['thumbnail']['thumbnails'],
+ "description":description,
+ "publishedTime":video['videoRenderer']['publishedTimeText']['simpleText'] if video.get('videoRenderer',{}).get('publishedTimeText',{}) else '' ,
+ "length":video['videoRenderer']['lengthText']['simpleText'] if video.get('videoRenderer',{}).get('lengthText',{}) else '',
+ "views":video['videoRenderer']['viewCountText']['simpleText'] if video.get('videoRenderer',{}).get('viewCountText',{}).get('simpleText','') else '',
+ "url":f"https://www.youtube.com{video['videoRenderer']['navigationEndpoint']['commandMetadata']['webCommandMetadata']['url']}",
+ "short_views":video['videoRenderer']['shortViewCountText']['simpleText'] if video.get('videoRenderer',{}).get('shortViewCountText',{}).get('simpleText','') else '',
+ "channelThumbnail":video['videoRenderer']['channelThumbnailSupportedRenderers']['channelThumbnailWithLinkRenderer']['thumbnail']['thumbnails'][0]['url'] if video.get('videoRenderer',{}).get('channelThumbnailSupportedRenderers',{}) else '',
+ "channel":video['videoRenderer']['ownerText']['runs'][0]['text']
+
+ }
+ searchresult_list.append(details)
+ elif video.get('childVideoRenderer', {}):
+ if video.get('childVideoRenderer',{}).get('descriptionSnippet',{}):
+ description=video['childVideoRenderer']['descriptionSnippet']['runs'][0]['text']
+ else:
+ description=''
+ details={
+ "id":video['childVideoRenderer']['videoId'],
+ "title":video['childVideoRenderer']['title']['runs'][0]['text'],
+ "thumbnails":video['childVideoRenderer']['thumbnail']['thumbnails'],
+ "description":description,
+ "publishedTime":video['childVideoRenderer']['publishedTimeText']['simpleText'] if video.get('childVideoRenderer',{}).get('publishedTimeText',{}) else '' ,
+ "length":video['childVideoRenderer']['lengthText']['simpleText'] if video.get('childVideoRenderer',{}).get('lengthText',{}) else '',
+ "views":video['childVideoRenderer']['viewCountText']['simpleText'] if video.get('childVideoRenderer',{}).get('viewCountText',{}).get('simpleText','') else '',
+ "url":f"https://www.youtube.com{video['childVideoRenderer']['navigationEndpoint']['commandMetadata']['webCommandMetadata']['url']}",
+ "short_views":video['childVideoRenderer']['shortViewCountText']['simpleText'] if video.get('childVideoRenderer',{}).get('shortViewCountText',{}).get('simpleText','') else '',
+ "channelThumbnail":video['childVideoRenderer']['channelThumbnailSupportedRenderers']['channelThumbnailWithLinkRenderer']['thumbnail']['thumbnails'][0]['url'] if video.get('childVideoRenderer',{}).get('channelThumbnailSupportedRenderers',{}) else '',
+ "channel":video['childVideoRenderer']['ownerText']['runs'][0]['text']
+
+ }
+ searchresult_list.append(details)
+ elif video.get('gridVideoRenderer', {}):
+ if video.get('gridVideoRenderer',{}).get('descriptionSnippet',{}):
+ description=video['gridVideoRenderer']['descriptionSnippet']['runs'][0]['text']
+ else:
+ description=''
+ details={
+ "id":video['gridVideoRenderer']['videoId'],
+ "title":video['gridVideoRenderer']['title']['runs'][0]['text'],
+ "thumbnails":video['gridVideoRenderer']['thumbnail']['thumbnails'],
+ "description":description,
+ "publishedTime":video['gridVideoRenderer']['publishedTimeText']['simpleText'] if video.get('gridVideoRenderer',{}).get('publishedTimeText',{}) else '' ,
+ "length":video['gridVideoRenderer']['lengthText']['simpleText'] if video.get('gridVideoRenderer',{}).get('lengthText',{}) else '',
+ "views":video['gridVideoRenderer']['viewCountText']['simpleText'] if video.get('gridVideoRenderer',{}).get('viewCountText',{}).get('simpleText','') else '',
+ "url":f"https://www.youtube.com{video['gridVideoRenderer']['navigationEndpoint']['commandMetadata']['webCommandMetadata']['url']}",
+ "short_views":video['gridVideoRenderer']['shortViewCountText']['simpleText'] if video.get('gridVideoRenderer',{}).get('shortViewCountText',{}).get('simpleText','') else '',
+ "channelThumbnail":video['gridVideoRenderer']['channelThumbnailSupportedRenderers']['channelThumbnailWithLinkRenderer']['thumbnail']['thumbnails'][0]['url'] if video.get('gridVideoRenderer',{}).get('channelThumbnailSupportedRenderers',{}) else '',
+ "channel":video['gridVideoRenderer']['ownerText']['runs'][0]['text']
+
+ }
+ searchresult_list.append(details)
+ #print(url,searchresult_list)
+ return searchresult_list
+
+
+
+async def tranding_videos():
+ tranding_list=[]
+ url = urlopen('https://www.youtube.com/feed/trending/?persist_gl=1&gl=IN').read()
+ soup = BeautifulSoup(url, 'lxml')
+ allscript = soup.findAll('script')
+ text = ''
+ for script in allscript:
+ if 'var ytInitialData' in str(script.contents):
+ text = str(script.contents)
+ else:
+ continue
+
+ json_data = await extract_json_tranding(text)
+
+ all_video = json_data.get('contents', {}).get(
+ 'twoColumnBrowseResultsRenderer',
+ {}).get('tabs', [])[0].get('tabRenderer', {}).get('content', {}).get(
+ 'sectionListRenderer',
+ {}).get('contents', [])[3].get('itemSectionRenderer', {}).get(
+ 'contents',
+ [])[0].get('shelfRenderer',
+ {}).get('content',
+ {}).get('expandedShelfContentsRenderer',
+ {}).get('items', [])
+ #"descriptions":video['videoRenderer']['descriptionSnippet']['runs'][0]['text'],
+ '''nextPageToken = json_data['contents']['twoColumnSearchResultsRenderer']['primaryContents']['sectionListRenderer']['contents'][1]['continuationItemRenderer']['continuationEndpoint']['continuationCommand']['token'] if json_data.get('contents', {}).get(
+ 'twoColumnSearchResultsRenderer',
+ {}).get('primaryContents',
+ {}).get('sectionListRenderer',
+ {}).get('contents', [])[1].get('continuationItemRenderer',{}).get('continuationEndpoint',{}).get('continuationCommand',{}).get('token','') else None
+ '''
+
+
+
+ for video in all_video:
+ if video.get('videoRenderer',{}).get('descriptionSnippet',{}):
+ description=video['videoRenderer']['descriptionSnippet']['runs'][0]['text']
+ else:
+ description=''
+ details={
+ "id":video['videoRenderer']['videoId'],
+ "title":video['videoRenderer']['title']['runs'][0]['text'],
+ "thumbnails":video['videoRenderer']['thumbnail']['thumbnails'],
+ "description":description,
+ "publishedTime":video['videoRenderer']['publishedTimeText']['simpleText'] if video.get('videoRenderer',{}).get('publishedTimeText',{}) else '' ,
+ "length":video['videoRenderer']['lengthText']['simpleText'] if video.get('videoRenderer',{}).get('lengthText',{}) else '',
+ "views":video['videoRenderer']['viewCountText']['simpleText'] if video.get('videoRenderer',{}).get('viewCountText',{}).get('simpleText','') else '',
+ "url":f"https://www.youtube.com{video['videoRenderer']['navigationEndpoint']['commandMetadata']['webCommandMetadata']['url']}",
+ "short_views":video['videoRenderer']['shortViewCountText']['simpleText'] if video.get('videoRenderer',{}).get('shortViewCountText',{}).get('simpleText','') else '',
+ "channelThumbnail":video['videoRenderer']['channelThumbnailSupportedRenderers']['channelThumbnailWithLinkRenderer']['thumbnail']['thumbnails'][0]['url'] if video.get('videoRenderer',{}).get('channelThumbnailSupportedRenderers',{}) else '',
+ "channel":video['videoRenderer']['ownerText']['runs'][0]['text']
+
+ }
+ tranding_list.append(details)
+ #print(tranding_list)
+ return tranding_list
+
diff --git a/YukkiMusic/platforms/YoutubeAPI/InnertubeAPI.py b/YukkiMusic/platforms/YoutubeAPI/InnertubeAPI.py
new file mode 100644
index 0000000000000000000000000000000000000000..eab2af39defd6e6af115e060f3be36b6901e57ec
--- /dev/null
+++ b/YukkiMusic/platforms/YoutubeAPI/InnertubeAPI.py
@@ -0,0 +1,250 @@
+from urllib.request import urlopen
+from urllib.parse import urlencode
+import requests
+import re
+import json
+import asyncio
+import aiohttp
+from .JSON_DATA import *
+
+async def trending_with_post_api(query):
+ #res = requests.get('https://www.youtube.com/')
+ searchresult_list=[]
+
+ key_value ={
+ "now":"",
+ "music":"4gINGgt5dG1hX2NoYXJ0cw%3D%3D",
+ "gaming":"4gIcGhpnYW1pbmdfY29ycHVzX21vc3RfcG9wdWxhcg%3D%3D",
+ "movies":"4gIKGgh0cmFpbGVycw%3D%3D",
+ }
+
+ final_query={
+ "browseId": "FEtrending",
+ "params": key_value.get(query),
+ "context": {
+ "client": {
+ "hl":"en",
+ "gl":"IN",
+ "clientName": "WEB",
+ "clientVersion": "2.20230728.00.00"
+
+ }
+ }
+ }
+
+ async with aiohttp.ClientSession() as session:
+ async with session.post(
+ 'https://youtubei.googleapis.com/youtubei/v1/browse',
+ json=final_query) as response:
+
+ json_data= await response.text()
+ json_data=json.loads(json_data)
+
+
+ key_value_list=list(key_value.keys())
+ print(key_value_list,key_value_list.index(query))
+ all_search_video = json_data.get('contents', {}).get('twoColumnBrowseResultsRenderer',{}).get('tabs',[])[ key_value_list.index(query) ].get('tabRenderer',{}).get('content', {}).get('sectionListRenderer',{}).get('contents', [])[0].get('itemSectionRenderer',{}).get('contents', [])[0].get('shelfRenderer',{}).get('content',{}).get('expandedShelfContentsRenderer',{}).get('items',[])
+ #.get('twoColumnSearchResultsRenderer',{}).get('tabs',[])
+ #.get('sectionListRenderer',{}).get('contents', [])[0].get('itemSectionRenderer',{}).get('contents', [])[0].get('shelfRenderer',{}).get('content',{}).get('expandedShelfContentsRenderer',{}).get('items',[])
+ #return all_search_video
+ for video in all_search_video:
+ if video.get('videoRenderer', {}):
+ searchresult_list.append(JSON_videoRenderer_Formatter(video))
+
+ if query == 'now':
+ all_video_Now = json_data.get('contents', {}).get('twoColumnBrowseResultsRenderer',{}).get('tabs',[])[ key_value_list.index(query) ].get('tabRenderer',{}).get('content', {}).get('sectionListRenderer',{}).get('contents', [])[2].get('itemSectionRenderer',{}).get('contents', [])[0].get('shelfRenderer',{}).get('content',{}).get('expandedShelfContentsRenderer',{}).get('items',[])
+ for video in all_video_Now:
+ if video.get('videoRenderer', {}):
+ searchresult_list.append(JSON_videoRenderer_Formatter(video))
+
+ return searchresult_list
+
+
+
+
+async def search_videos_with_post_api(query):
+ searchresult_list=[]
+ final_query={
+ "query": query,
+ "key":"AIzaSyAO_FJ2SlqU8Q4STEHLGCilw_Y9_11qcW8",
+ "context": {
+ "client": {
+ "clientName": "WEB",
+ "clientVersion": "2.20230728.00.00"
+ }
+ }
+ }
+ async with aiohttp.ClientSession() as session:
+ async with session.post(
+ 'https://youtubei.googleapis.com/youtubei/v1/search',
+ json=final_query) as response:
+
+ json_data= await response.text()
+ json_data=json.loads(json_data)
+
+ all_search_video = json_data.get('contents', {}).get(
+ 'twoColumnSearchResultsRenderer',
+ {}).get('primaryContents',
+ {}).get('sectionListRenderer',
+ {}).get('contents', [])[0].get('itemSectionRenderer',
+ {}).get('contents', [])
+
+ nextPageToken = json_data['contents']['twoColumnSearchResultsRenderer']['primaryContents']['sectionListRenderer']['contents'][1]['continuationItemRenderer']['continuationEndpoint']['continuationCommand']['token'] if json_data.get('contents', {}).get(
+ 'twoColumnSearchResultsRenderer',
+ {}).get('primaryContents',
+ {}).get('sectionListRenderer',
+ {}).get('contents', [])[1].get('continuationItemRenderer',{}).get('continuationEndpoint',{}).get('continuationCommand',{}).get('token','') else None
+
+
+
+ for video in all_search_video:
+ if video.get('videoRenderer', {}):
+ searchresult_list.append(JSON_videoRenderer_Formatter(video))
+
+ elif video.get('childVideoRenderer', {}):
+ searchresult_list.append(JSON_childVideoRenderer_Formatter(video))
+
+ elif video.get('gridVideoRenderer', {}):
+ searchresult_list.append(JSON_childVideoRenderer_Formatter(video))
+
+ #print(url,searchresult_list)
+ return searchresult_list, nextPageToken
+
+async def search_scroll_videos_with_post_api(query):
+ searchresult_list=[]
+
+ final_query={
+ "continuation": query,
+ "key":"AIzaSyAO_FJ2SlqU8Q4STEHLGCilw_Y9_11qcW8",
+ "context": {
+ "client": {
+ "clientName": "WEB",
+ "clientVersion": "2.20230728.00.00"
+ }
+ }
+ }
+
+ async with aiohttp.ClientSession() as session:
+ async with session.post(
+ 'https://youtubei.googleapis.com/youtubei/v1/search',
+ json=final_query) as response:
+
+ json_data= await response.text()
+ json_data=json.loads(json_data)
+ #return json_data
+ all_search_video = json_data.get('onResponseReceivedCommands', [])[0].get(
+ 'appendContinuationItemsAction',
+ {}).get('continuationItems',
+ [])[0].get('itemSectionRenderer',
+ {}).get('contents', [])
+
+
+ nextPageToken =json_data['onResponseReceivedCommands'][0]['appendContinuationItemsAction']['continuationItems'][1]['continuationItemRenderer']['continuationEndpoint']['continuationCommand']['token'] if len(json_data.get('onResponseReceivedCommands', [])) > 0 and json_data.get('onResponseReceivedCommands', [])[0].get(
+ 'appendContinuationItemsAction',
+ {}).get('continuationItems',
+ [])[1].get('continuationItemRenderer',{}).get('continuationEndpoint',{}).get('continuationCommand',{}).get('token','') else None
+
+
+ for video in all_search_video:
+ if video.get('videoRenderer', {}):
+ searchresult_list.append(JSON_videoRenderer_Formatter(video))
+
+ elif video.get('childVideoRenderer', {}):
+ searchresult_list.append(JSON_childVideoRenderer_Formatter(video))
+
+ elif video.get('gridVideoRenderer', {}):
+ searchresult_list.append(JSON_childVideoRenderer_Formatter(video))
+
+ #print(url,searchresult_list)
+ return searchresult_list, nextPageToken
+
+
+
+#####-------------RETURN VIDEO LIST WITH STREAMING URL BY VIDEO ID------######
+async def search_player_data_with_post_api(query):
+ searchresult_list=[]
+
+
+ final_query={
+ "videoId": query,
+ "key":"AIzaSyAO_FJ2SlqU8Q4STEHLGCilw_Y9_11qcW8",
+ "context": {
+ "client": {
+ "clientName": "ANDROID_TV",
+ "clientVersion": "2.16.032"
+ }
+ }
+ }
+ async with aiohttp.ClientSession() as session:
+ async with session.post(
+ 'https://youtubei.googleapis.com/youtubei/v1/player',
+ json=final_query) as response:
+
+ json_data= await response.text()
+ json_data=json.loads(json_data)
+ #return json_data
+ all_formats_video = json_data.get('streamingData', {}).get(
+ 'formats',
+ [])
+ all_adaptive_formats_video = json_data.get('streamingData', {}).get(
+ 'adaptiveFormats',
+ [])
+ ''' video details content JSON DATA {} with key:value
+ demo data
+ {
+ "videoId": "k3g_WjLCsXM",
+ "title": "Sajni (Song): Arijit Singh, Ram Sampath | Laapataa Ladies | Aamir Khan Productions",
+ "lengthSeconds": "146",
+ "keywords": [
+ "sajni laapata ladies",
+ "sajni laapataa ladies",
+ "sajni"
+ ],
+ "channelId": "UCq-Fj5jknLsUf-MWSy4_brA",
+ "isOwnerViewing": false,
+ "shortDescription": "Presenting the Song \"Sajni\" from the upcoming film Laapataa Ladies. Sung by Arijit Singh, Composed by Ram Sampath and Penned by Prashant Pandey.\n\n#LaapataaLadies #Sajni #ArijitSingh #RamSampath\n\nJio Studios Presents \nAamir Khan Productions \"LAAPATAA LADIES\" \n\nâĒFull Song Available onâĒ \nJioSaavn: https://bit.ly/3SV0n0w\nSpotify: https://bit.ly/3wgICzV\nHungama: https://bit.ly/499FkNy\nApple Music: https://bit.ly/3SEqRlL\nAmazon Prime Music: https://bit.ly/3Uxi1Zv\nWynk: https://bit.ly/3uwyX7O\nYouTube Music: https://bit.ly/4bzkV5R\n\nSong Credits:\nSong Name: Sajni\nComposed By : Ram Sampath\nLyricist : Prashant Pandey\nSinger : Arijit Singh\nMusic Arranged & Produced by : Ram Sampath\nMusic Supervisor : Vrashal Chavan\nRecorded & Mixed at Omgrown Music, Mumbai by Amey Wadibhasme\nMastered by Gethin John at Hafod Mastering\nVocal Recordist : Sukanto Singha\nVocal Editor : Prithviraj Sarkar\nMusic Label: T-Series\n\nFilm Credits: \nDirected by Kiran Rao \nProduced by Aamir Khan, Kiran Rao & Jyoti Deshpande\nStarring : Nitanshi Goel, Pratibha Ranta, Sparsh Shrivastava, Ravi Kishan and Chhaya Kadam\nCo Stars : Bhaskar Jha, Durgesh Kumar, Geeta Aggarwal, Pankaj Sharma, Rachna Gupta, Abeer Jain, Kirti Jain, Daood Hussain, Pranjal Pateriya, Samarth Mohar, Satendra Soni, Ravi Kapadiya, Kishore Soni. \nOriginal Story : Biplab Goswami \nScreenplay & Dialogues : Sneha Desai \nAdditional Dialogues : Divyanidhi Sharma \nMusic : Ram Sampath \nLyricists : Swanand Kirkire, Prashant Pandey, Divyanidhi Sharma \nSingers: Shreya Ghoshal, Arijit Singh, Sukhwinder Singh, Sona Mohapatra\nDirector of Photography : Vikash Nowlakha\nEditor : Jabeen Merchant \nProduction Designer : Vikram Singh \nCostume Designer : Darshan Jalan \nCasting : Romil Jain \nSound Designer : Ayush Ahuja \nProduction Sound Mixer : Ravi Dev Singh \nMake Up Designer : Kamlesh Shinde \nHair Designer : Joyce Fernandez \n1st Assistant Director : Rakesh E. Nair \nLine Producer : Jaspal Dogra \nScript Supervisor : Mandira Roy \nDialect Coach : Sonu Anand \nDirector's Assistant : Pooja Kumar \nColorist : Michele Ricossa \nVisual Effects Studio : SM Rolling \nVFX DI Studio : Prasad Labs \nVisual Promotions : Just Right Studioz NX \nAKP Finance Team : Sharada Harihar, Aditya Shah, Huzvak Batliwala, Pankti Mehta, Tejasvi Gurav, Manisha Abhyankar\nFinancial Advisor : Bimal Parekh & Co \nExecutive Producers : Antara Banerjee & Naved Farooqui \nCo-Producers : B. Shrinivas Rao & Tanaji Dasgupta \n\nDownload Song Beat: https://bit.ly/3Cjh24R \n\n___________________________________\nEnjoy & stay connected with us!\nđ Subscribe to T-Series: https://youtube.com/tseries\nđ Like us on Facebook: https://www.facebook.com/tseriesmusic\nđ Follow us on X: https://twitter.com/tseries\nđ Follow us on Instagram: https://instagram.com/tseries.official",
+ "isCrawlable": true,
+ "thumbnail": {
+ "thumbnails": [
+ {
+ "url": "https://i.ytimg.com/vi/k3g_WjLCsXM/default.jpg",
+ "width": 120,
+ "height": 90
+ },
+ {
+ "url": "https://i.ytimg.com/vi/k3g_WjLCsXM/mqdefault.jpg",
+ "width": 320,
+ "height": 180
+ },
+ {
+ "url": "https://i.ytimg.com/vi/k3g_WjLCsXM/hqdefault.jpg",
+ "width": 480,
+ "height": 360
+ },
+ {
+ "url": "https://i.ytimg.com/vi/k3g_WjLCsXM/sddefault.jpg",
+ "width": 640,
+ "height": 480
+ }
+ ]
+ },
+ "allowRatings": true,
+ "viewCount": "70761818",
+ "author": "T-Series",
+ "isPrivate": false,
+ "isUnpluggedCorpus": false,
+ "isLiveContent": false
+ }'''
+
+ videodetails = json_data.get('videoDetails', {})
+
+
+ for video in all_formats_video:
+
+ searchresult_list.append(video)
+ for video in all_adaptive_formats_video:
+
+ searchresult_list.append(video)
+
+ #print(url,searchresult_list)
+ return searchresult_list, videodetails
diff --git a/YukkiMusic/platforms/YoutubeAPI/JSON_DATA.py b/YukkiMusic/platforms/YoutubeAPI/JSON_DATA.py
new file mode 100644
index 0000000000000000000000000000000000000000..33645528d15e9eb8547fd04dd7740c190709c5c3
--- /dev/null
+++ b/YukkiMusic/platforms/YoutubeAPI/JSON_DATA.py
@@ -0,0 +1,58 @@
+def JSON_gridVideoRenderer_Formatter(video):
+ if video.get('gridVideoRenderer',{}).get('descriptionSnippet',{}):
+ description=video['gridVideoRenderer']['descriptionSnippet']['runs'][0]['text']
+ else:
+ description=''
+
+ return{
+ "id":video['gridVideoRenderer']['videoId'],
+ "title":video['gridVideoRenderer']['title']['runs'][0]['text'],
+ "thumbnails":video['gridVideoRenderer']['thumbnail']['thumbnails'],
+ "description":description,
+ "publishedTime":video['gridVideoRenderer']['publishedTimeText']['simpleText'] if video.get('gridVideoRenderer',{}).get('publishedTimeText',{}) else '' ,
+ "length":video['gridVideoRenderer']['lengthText']['simpleText'] if video.get('gridVideoRenderer',{}).get('lengthText',{}) else '',
+ "views":video['gridVideoRenderer']['viewCountText']['simpleText'] if video.get('gridVideoRenderer',{}).get('viewCountText',{}).get('simpleText','') else '',
+ "url":f"https://www.youtube.com{video['gridVideoRenderer']['navigationEndpoint']['commandMetadata']['webCommandMetadata']['url']}",
+ "short_views":video['gridVideoRenderer']['shortViewCountText']['simpleText'] if video.get('gridVideoRenderer',{}).get('shortViewCountText',{}).get('simpleText','') else '',
+ "channelThumbnail":video['gridVideoRenderer']['channelThumbnailSupportedRenderers']['channelThumbnailWithLinkRenderer']['thumbnail']['thumbnails'][0]['url'] if video.get('gridVideoRenderer',{}).get('channelThumbnailSupportedRenderers',{}) else '',
+ "channel":video['gridVideoRenderer']['ownerText']['runs'][0]['text']
+ }
+
+def JSON_childVideoRenderer_Formatter(video):
+ if video.get('childVideoRenderer',{}).get('descriptionSnippet',{}):
+ description=video['childVideoRenderer']['descriptionSnippet']['runs'][0]['text']
+ else:
+ description=''
+
+ return {
+ "id":video['childVideoRenderer']['videoId'],
+ "title":video['childVideoRenderer']['title']['runs'][0]['text'],
+ "thumbnails":video['childVideoRenderer']['thumbnail']['thumbnails'],
+ "description":description,
+ "publishedTime":video['childVideoRenderer']['publishedTimeText']['simpleText'] if video.get('childVideoRenderer',{}).get('publishedTimeText',{}) else '' ,
+ "length":video['childVideoRenderer']['lengthText']['simpleText'] if video.get('childVideoRenderer',{}).get('lengthText',{}) else '',
+ "views":video['childVideoRenderer']['viewCountText']['simpleText'] if video.get('childVideoRenderer',{}).get('viewCountText',{}).get('simpleText','') else '',
+ "url":f"https://www.youtube.com{video['childVideoRenderer']['navigationEndpoint']['commandMetadata']['webCommandMetadata']['url']}",
+ "short_views":video['childVideoRenderer']['shortViewCountText']['simpleText'] if video.get('childVideoRenderer',{}).get('shortViewCountText',{}).get('simpleText','') else '',
+ "channelThumbnail":video['childVideoRenderer']['channelThumbnailSupportedRenderers']['channelThumbnailWithLinkRenderer']['thumbnail']['thumbnails'][0]['url'] if video.get('childVideoRenderer',{}).get('channelThumbnailSupportedRenderers',{}) else '',
+ "channel":video['childVideoRenderer']['ownerText']['runs'][0]['text']
+ }
+
+def JSON_videoRenderer_Formatter(video):
+ if video.get('videoRenderer',{}).get('descriptionSnippet',{}):
+ description=video['videoRenderer']['descriptionSnippet']['runs'][0]['text']
+ else:
+ description=''
+ return{
+ "id":video['videoRenderer']['videoId'],
+ "title":video['videoRenderer']['title']['runs'][0]['text'],
+ "thumbnails":video['videoRenderer']['thumbnail']['thumbnails'],
+ "description":description,
+ "publishedTime":video['videoRenderer']['publishedTimeText']['simpleText'] if video.get('videoRenderer',{}).get('publishedTimeText',{}) else '' ,
+ "length":video['videoRenderer']['lengthText']['simpleText'] if video.get('videoRenderer',{}).get('lengthText',{}) else '',
+ "views":video['videoRenderer']['viewCountText']['simpleText'] if video.get('videoRenderer',{}).get('viewCountText',{}).get('simpleText','') else '',
+ "url":f"https://www.youtube.com{video['videoRenderer']['navigationEndpoint']['commandMetadata']['webCommandMetadata']['url']}",
+ "short_views":video['videoRenderer']['shortViewCountText']['simpleText'] if video.get('videoRenderer',{}).get('shortViewCountText',{}).get('simpleText','') else '',
+ "channelThumbnail":video['videoRenderer']['channelThumbnailSupportedRenderers']['channelThumbnailWithLinkRenderer']['thumbnail']['thumbnails'][0]['url'] if video.get('videoRenderer',{}).get('channelThumbnailSupportedRenderers',{}) else '',
+ "channel":video['videoRenderer']['ownerText']['runs'][0]['text']
+ }
\ No newline at end of file
diff --git a/YukkiMusic/platforms/YoutubeAPI/__init__.py b/YukkiMusic/platforms/YoutubeAPI/__init__.py
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/YukkiMusic/platforms/__init__.py b/YukkiMusic/platforms/__init__.py
new file mode 100644
index 0000000000000000000000000000000000000000..298d55ed593cb6bc6ef71fc4ace1ce9786ab9755
--- /dev/null
+++ b/YukkiMusic/platforms/__init__.py
@@ -0,0 +1,16 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from .Apple import AppleAPI
+from .Carbon import CarbonAPI
+from .Resso import RessoAPI
+from .Soundcloud import SoundAPI
+from .Spotify import SpotifyAPI
+from .Telegram import TeleAPI
+from .Youtube import YouTubeAPI
diff --git a/YukkiMusic/platforms/custom_dl.py b/YukkiMusic/platforms/custom_dl.py
new file mode 100644
index 0000000000000000000000000000000000000000..a0a4ccda20130c3822b86bc9386953bbbb58aad4
--- /dev/null
+++ b/YukkiMusic/platforms/custom_dl.py
@@ -0,0 +1,185 @@
+import asyncio
+import logging
+from typing import Dict, Union
+from YukkiMusic.core.userbot import work_loads
+from pyrogram import Client, utils, raw
+#from .file_properties import get_file_ids
+from pyrogram.session import Session, Auth
+from pyrogram.errors import AuthBytesInvalid
+from pyrogram.file_id import FileId, FileType, ThumbnailSource
+from pyrogram.types import Message
+
+
+class ByteStreamer:
+
+ def __init__(self, client: Client):
+ self.clean_timer = 30 * 60
+ self.client: Client = client
+ self.cached_file_ids: Dict[str, FileId] = {}
+ asyncio.create_task(self.clean_cache())
+
+
+
+ async def generate_media_session(self, client: Client,
+ file_id: FileId) -> Session:
+ """
+ Generates the media session for the DC that contains the media file.
+ This is required for getting the bytes from Telegram servers.
+ """
+
+ media_session = client.media_sessions.get(file_id.dc_id, None)
+
+ if media_session is None:
+ if file_id.dc_id != await client.storage.dc_id():
+ media_session = Session(
+ client,
+ file_id.dc_id,
+ await Auth(client, file_id.dc_id, await
+ client.storage.test_mode()).create(),
+ await client.storage.test_mode(),
+ is_media=True,
+ )
+ await media_session.start()
+
+ for _ in range(6):
+ exported_auth = await client.invoke(
+ raw.functions.auth.ExportAuthorization(dc_id=file_id.dc_id))
+
+ try:
+ await media_session.invoke(
+ raw.functions.auth.ImportAuthorization(
+ id=exported_auth.id, bytes=exported_auth.bytes))
+ break
+ except AuthBytesInvalid:
+ logging.debug(
+ f"Invalid authorization bytes for DC {file_id.dc_id}")
+ continue
+ else:
+ await media_session.stop()
+ raise AuthBytesInvalid
+ else:
+ media_session = Session(
+ client,
+ file_id.dc_id,
+ await client.storage.auth_key(),
+ await client.storage.test_mode(),
+ is_media=True,
+ )
+ await media_session.start()
+ logging.debug(f"Created media session for DC {file_id.dc_id}")
+ client.media_sessions[file_id.dc_id] = media_session
+ else:
+ logging.debug(f"Using cached media session for DC {file_id.dc_id}")
+ return media_session
+
+ @staticmethod
+ async def get_location(
+ file_id: FileId
+ ) -> Union[
+ raw.types.InputPhotoFileLocation,
+ raw.types.InputDocumentFileLocation,
+ raw.types.InputPeerPhotoFileLocation,
+ ]:
+ """
+ Returns the file location for the media file.
+ """
+ file_type = file_id.file_type
+
+ if file_type == FileType.CHAT_PHOTO:
+ if file_id.chat_id > 0:
+ peer = raw.types.InputPeerUser(user_id=file_id.chat_id,
+ access_hash=file_id.chat_access_hash)
+ else:
+ if file_id.chat_access_hash == 0:
+ peer = raw.types.InputPeerChat(chat_id=-file_id.chat_id)
+ else:
+ peer = raw.types.InputPeerChannel(
+ channel_id=utils.get_channel_id(file_id.chat_id),
+ access_hash=file_id.chat_access_hash,
+ )
+
+ location = raw.types.InputPeerPhotoFileLocation(
+ peer=peer,
+ volume_id=file_id.volume_id,
+ local_id=file_id.local_id,
+ big=file_id.thumbnail_source == ThumbnailSource.CHAT_PHOTO_BIG,
+ )
+ elif file_type == FileType.PHOTO:
+ location = raw.types.InputPhotoFileLocation(
+ id=file_id.media_id,
+ access_hash=file_id.access_hash,
+ file_reference=file_id.file_reference,
+ thumb_size=file_id.thumbnail_size,
+ )
+ else:
+ location = raw.types.InputDocumentFileLocation(
+ id=file_id.media_id,
+ access_hash=file_id.access_hash,
+ file_reference=file_id.file_reference,
+ thumb_size=file_id.thumbnail_size,
+ )
+ return location
+
+ async def yield_file(
+ self,
+ file_id: FileId,
+ index: int,
+ offset: int,
+ first_part_cut: int,
+ last_part_cut: int,
+ part_count: int,
+ chunk_size: int,
+ ) -> Union[str, None]:
+
+ client = self.client
+ #work_loads[index] += 1
+ logging.debug(f"Starting to yielding file with client {index}.")
+ media_session = await self.generate_media_session(client, file_id)
+
+ current_part = 1
+
+ location = await self.get_location(file_id)
+
+ try:
+ r = await media_session.invoke(
+ raw.functions.upload.GetFile(location=location,
+ offset=offset,
+ limit=chunk_size), )
+ if isinstance(r, raw.types.upload.File):
+ while True:
+ chunk = r.bytes
+ if not chunk:
+ break
+ elif part_count == 1:
+ yield chunk[first_part_cut:last_part_cut]
+ elif current_part == 1:
+ yield chunk[first_part_cut:]
+ elif current_part == part_count:
+ yield chunk[:last_part_cut]
+ else:
+ yield chunk
+
+ current_part += 1
+ offset += chunk_size
+
+ if current_part > part_count:
+ break
+
+ r = await media_session.invoke(
+ raw.functions.upload.GetFile(location=location,
+ offset=offset,
+ limit=chunk_size), )
+ except (TimeoutError, AttributeError):
+ pass
+ finally:
+ logging.debug(f"Finished yielding file with {current_part} parts.")
+ #work_loads[index] -= 1
+
+ async def clean_cache(self) -> None:
+ """
+ function to clean the cache to reduce memory usage
+ """
+ while True:
+ await asyncio.sleep(self.clean_timer)
+ self.cached_file_ids.clear()
+ logging.debug("Cleaned the cache")
diff --git a/YukkiMusic/platforms/file_properties.py b/YukkiMusic/platforms/file_properties.py
new file mode 100644
index 0000000000000000000000000000000000000000..6a569a52f7b478f3c4c18c974d77226edbce00b4
--- /dev/null
+++ b/YukkiMusic/platforms/file_properties.py
@@ -0,0 +1,98 @@
+from __future__ import annotations
+import logging
+from datetime import datetime
+from pyrogram import Client
+from typing import Any, Optional
+
+from pyrogram.enums import ParseMode, ChatType
+from pyrogram.types import Message
+from pyrogram.file_id import FileId
+#-----------------------------------------------------
+
+
+
+
+#------------------------------
+def get_media_from_message(message: "Message") -> Any:
+ media_types = (
+ "audio",
+ "document",
+ "photo",
+ "sticker",
+ "animation",
+ "video",
+ "voice",
+ "video_note",
+ )
+ for attr in media_types:
+ media = getattr(message, attr, None)
+ if media:
+ return media
+
+
+def get_media_file_size(m):
+ media = get_media_from_message(m)
+ return getattr(media, "file_size", "None")
+
+
+def get_name(media_msg: Message | FileId) -> str:
+ if isinstance(media_msg, Message):
+ media = get_media_from_message(media_msg)
+ file_name = getattr(media, "file_name", "")
+
+ elif isinstance(media_msg, FileId):
+ file_name = getattr(media_msg, "file_name", "")
+
+ if not file_name:
+ if isinstance(media_msg, Message) and media_msg.media:
+ media_type = media_msg.media.value
+ elif media_msg.file_type:
+ media_type = media_msg.file_type.name.lower()
+ else:
+ media_type = "file"
+
+ formats = {
+ "photo": "jpg",
+ "audio": "mp3",
+ "voice": "ogg",
+ "video": "mp4",
+ "animation": "mp4",
+ "video_note": "mp4",
+ "sticker": "webp"
+ }
+
+ ext = formats.get(media_type)
+ ext = "." + ext if ext else ""
+
+ date = datetime.now().strftime("%Y-%m-%d_%H-%M-%S")
+ file_name = f"{media_type}-{date}{ext}"
+
+ return file_name
+
+
+def get_file_info(message):
+ media = get_media_from_message(message)
+ """
+ //Used a single Liner Insted of this Block
+ if message.chat.type == ChatType.PRIVATE:
+ user_idx = message.from_user.id
+ else:
+ user_idx = message.chat.id
+ """
+
+ return {
+
+ "message_id": message.id,
+ "location": message.from_user.id if (message.chat.type == ChatType.PRIVATE) else message.chat.id,
+ "file": {
+ "file_id": getattr(media, "file_id", ""),
+ "file_unique_id": getattr(media, "file_unique_id", ""),
+ "file_name": get_name(message),
+ "file_size": getattr(media, "file_size", 0),
+ "mime_type": getattr(media, "mime_type", "None/unknown"),
+
+ },
+ }
+
+
+
diff --git a/YukkiMusic/plugins/__init__.py b/YukkiMusic/plugins/__init__.py
new file mode 100644
index 0000000000000000000000000000000000000000..6f64d5804767298f1f978ef7dd39a8f21bf47ae5
--- /dev/null
+++ b/YukkiMusic/plugins/__init__.py
@@ -0,0 +1,31 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+#
+
+import glob
+from os.path import dirname, isfile
+
+
+def __list_all_modules():
+ work_dir = dirname(__file__)
+ mod_paths = glob.glob(work_dir + "/*/*.py")
+
+ all_modules = [
+ (((f.replace(work_dir, "")).replace("/", "."))[:-3])
+ for f in mod_paths
+ if isfile(f)
+ and f.endswith(".py")
+ and not f.endswith("__init__.py")
+ ]
+
+ return all_modules
+
+
+ALL_MODULES = sorted(__list_all_modules())
+__all__ = ALL_MODULES + ["ALL_MODULES"]
diff --git a/YukkiMusic/plugins/admins/auth.py b/YukkiMusic/plugins/admins/auth.py
new file mode 100644
index 0000000000000000000000000000000000000000..974287701ad4aac47b97c5686ba7105d30900ed4
--- /dev/null
+++ b/YukkiMusic/plugins/admins/auth.py
@@ -0,0 +1,159 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram import filters
+from pyrogram.types import Message
+
+from config import BANNED_USERS, adminlist
+from strings import get_command
+from YukkiMusic import app
+from YukkiMusic.utils.database import (delete_authuser, get_authuser,
+ get_authuser_names,
+ save_authuser)
+from YukkiMusic.utils.decorators import AdminActual, language
+from YukkiMusic.utils.formatters import int_to_alpha
+
+# Command
+AUTH_COMMAND = get_command("AUTH_COMMAND")
+UNAUTH_COMMAND = get_command("UNAUTH_COMMAND")
+AUTHUSERS_COMMAND = get_command("AUTHUSERS_COMMAND")
+
+
+@app.on_message(
+ filters.command(AUTH_COMMAND)
+ & filters.group
+ & ~BANNED_USERS
+)
+@AdminActual
+async def auth(client, message: Message, _):
+ if not message.reply_to_message:
+ if len(message.command) != 2:
+ return await message.reply_text(_["general_1"])
+ user = message.text.split(None, 1)[1]
+ if "@" in user:
+ user = user.replace("@", "")
+ user = await app.get_users(user)
+ user_id = message.from_user.id
+ token = await int_to_alpha(user.id)
+ from_user_name = message.from_user.first_name
+ from_user_id = message.from_user.id
+ _check = await get_authuser_names(message.chat.id)
+ count = len(_check)
+ if int(count) == 20:
+ return await message.reply_text(_["auth_1"])
+ if token not in _check:
+ assis = {
+ "auth_user_id": user.id,
+ "auth_name": user.first_name,
+ "admin_id": from_user_id,
+ "admin_name": from_user_name,
+ }
+ get = adminlist.get(message.chat.id)
+ if get:
+ if user.id not in get:
+ get.append(user.id)
+ await save_authuser(message.chat.id, token, assis)
+ return await message.reply_text(_["auth_2"])
+ else:
+ await message.reply_text(_["auth_3"])
+ return
+ from_user_id = message.from_user.id
+ user_id = message.reply_to_message.from_user.id
+ user_name = message.reply_to_message.from_user.first_name
+ token = await int_to_alpha(user_id)
+ from_user_name = message.from_user.first_name
+ _check = await get_authuser_names(message.chat.id)
+ count = 0
+ for smex in _check:
+ count += 1
+ if int(count) == 20:
+ return await message.reply_text(_["auth_1"])
+ if token not in _check:
+ assis = {
+ "auth_user_id": user_id,
+ "auth_name": user_name,
+ "admin_id": from_user_id,
+ "admin_name": from_user_name,
+ }
+ get = adminlist.get(message.chat.id)
+ if get:
+ if user_id not in get:
+ get.append(user_id)
+ await save_authuser(message.chat.id, token, assis)
+ return await message.reply_text(_["auth_2"])
+ else:
+ await message.reply_text(_["auth_3"])
+
+
+@app.on_message(
+ filters.command(UNAUTH_COMMAND)
+ & filters.group
+ & ~BANNED_USERS
+)
+@AdminActual
+async def unauthusers(client, message: Message, _):
+ if not message.reply_to_message:
+ if len(message.command) != 2:
+ return await message.reply_text(_["general_1"])
+ user = message.text.split(None, 1)[1]
+ if "@" in user:
+ user = user.replace("@", "")
+ user = await app.get_users(user)
+ token = await int_to_alpha(user.id)
+ deleted = await delete_authuser(message.chat.id, token)
+ get = adminlist.get(message.chat.id)
+ if get:
+ if user.id in get:
+ get.remove(user.id)
+ if deleted:
+ return await message.reply_text(_["auth_4"])
+ else:
+ return await message.reply_text(_["auth_5"])
+ user_id = message.reply_to_message.from_user.id
+ token = await int_to_alpha(user_id)
+ deleted = await delete_authuser(message.chat.id, token)
+ get = adminlist.get(message.chat.id)
+ if get:
+ if user_id in get:
+ get.remove(user_id)
+ if deleted:
+ return await message.reply_text(_["auth_4"])
+ else:
+ return await message.reply_text(_["auth_5"])
+
+
+@app.on_message(
+ filters.command(AUTHUSERS_COMMAND)
+ & filters.group
+ & ~BANNED_USERS
+)
+@language
+async def authusers(client, message: Message, _):
+ _playlist = await get_authuser_names(message.chat.id)
+ if not _playlist:
+ return await message.reply_text(_["setting_5"])
+ else:
+ j = 0
+ mystic = await message.reply_text(_["auth_6"])
+ text = _["auth_7"]
+ for note in _playlist:
+ _note = await get_authuser(message.chat.id, note)
+ user_id = _note["auth_user_id"]
+ admin_id = _note["admin_id"]
+ admin_name = _note["admin_name"]
+ try:
+ user = await app.get_users(user_id)
+ user = user.first_name
+ j += 1
+ except Exception:
+ continue
+ text += f"{j}⤠{user}[`{user_id}`]\n"
+ text += f" {_['auth_8']} {admin_name}[`{admin_id}`]\n\n"
+ await mystic.delete()
+ await message.reply_text(text)
diff --git a/YukkiMusic/plugins/admins/callback.py b/YukkiMusic/plugins/admins/callback.py
new file mode 100644
index 0000000000000000000000000000000000000000..010f122143f170b981c493cfa64c5d6acb93537b
--- /dev/null
+++ b/YukkiMusic/plugins/admins/callback.py
@@ -0,0 +1,444 @@
+import random
+
+from pyrogram import filters
+from pyrogram.types import CallbackQuery, InlineKeyboardMarkup
+
+from config import (AUTO_DOWNLOADS_CLEAR, BANNED_USERS,
+ SOUNCLOUD_IMG_URL, STREAM_IMG_URL,
+ TELEGRAM_AUDIO_URL, TELEGRAM_VIDEO_URL, adminlist)
+from YukkiMusic import YouTube, app
+from YukkiMusic.core.call import Yukki
+from YukkiMusic.misc import SUDOERS, db
+from YukkiMusic.utils.database import (is_active_chat,
+ is_music_playing, is_muted,
+ is_nonadmin_chat, music_off,
+ music_on, mute_off, mute_on,
+ set_loop)
+from YukkiMusic.utils.decorators.language import languageCB
+from YukkiMusic.utils.formatters import seconds_to_min
+from YukkiMusic.utils.inline.play import (panel_markup_1,
+ panel_markup_2,
+ panel_markup_3,
+ stream_markup,
+ telegram_markup)
+from YukkiMusic.utils.stream.autoclear import auto_clean
+from YukkiMusic.utils.thumbnails import gen_thumb
+
+wrong = {}
+
+
+@app.on_callback_query(filters.regex("PanelMarkup") & ~BANNED_USERS)
+@languageCB
+async def markup_panel(client, CallbackQuery: CallbackQuery, _):
+ await CallbackQuery.answer()
+ callback_data = CallbackQuery.data.strip()
+ callback_request = callback_data.split(None, 1)[1]
+ videoid, chat_id = callback_request.split("|")
+ chat_id = CallbackQuery.message.chat.id
+ buttons = panel_markup_1(_, videoid, chat_id)
+ try:
+ await CallbackQuery.edit_message_reply_markup(
+ reply_markup=InlineKeyboardMarkup(buttons)
+ )
+ except:
+ return
+ if chat_id not in wrong:
+ wrong[chat_id] = {}
+ wrong[chat_id][CallbackQuery.message.id] = False
+
+
+@app.on_callback_query(filters.regex("MainMarkup") & ~BANNED_USERS)
+@languageCB
+async def del_back_playlist(client, CallbackQuery, _):
+ await CallbackQuery.answer()
+ callback_data = CallbackQuery.data.strip()
+ callback_request = callback_data.split(None, 1)[1]
+ videoid, chat_id = callback_request.split("|")
+ if videoid == str(None):
+ buttons = telegram_markup(_, chat_id)
+ else:
+ buttons = stream_markup(_, videoid, chat_id)
+ chat_id = CallbackQuery.message.chat.id
+ try:
+ await CallbackQuery.edit_message_reply_markup(
+ reply_markup=InlineKeyboardMarkup(buttons)
+ )
+ except:
+ return
+ if chat_id not in wrong:
+ wrong[chat_id] = {}
+ wrong[chat_id][CallbackQuery.message.message.id] = True
+
+
+@app.on_callback_query(filters.regex("Pages") & ~BANNED_USERS)
+@languageCB
+async def del_back_playlist(client, CallbackQuery, _):
+ await CallbackQuery.answer()
+ callback_data = CallbackQuery.data.strip()
+ callback_request = callback_data.split(None, 1)[1]
+ state, pages, videoid, chat = callback_request.split("|")
+ chat_id = int(chat)
+ pages = int(pages)
+ if state == "Forw":
+ if pages == 0:
+ buttons = panel_markup_2(_, videoid, chat_id)
+ if pages == 2:
+ buttons = panel_markup_1(_, videoid, chat_id)
+ if pages == 1:
+ buttons = panel_markup_3(_, videoid, chat_id)
+ if state == "Back":
+ if pages == 2:
+ buttons = panel_markup_2(_, videoid, chat_id)
+ if pages == 1:
+ buttons = panel_markup_1(_, videoid, chat_id)
+ if pages == 0:
+ buttons = panel_markup_3(_, videoid, chat_id)
+ try:
+ await CallbackQuery.edit_message_reply_markup(
+ reply_markup=InlineKeyboardMarkup(buttons)
+ )
+ except:
+ return
+
+
+downvote = {}
+downvoters = {}
+
+
+@app.on_callback_query(filters.regex("ADMIN") & ~BANNED_USERS)
+@languageCB
+async def del_back_playlist(client, CallbackQuery, _):
+ callback_data = CallbackQuery.data.strip()
+ callback_request = callback_data.split(None, 1)[1]
+ command, chat = callback_request.split("|")
+ chat_id = int(chat)
+ if not await is_active_chat(chat_id):
+ return await CallbackQuery.answer(
+ _["general_6"], show_alert=True
+ )
+ mention = CallbackQuery.from_user.mention
+ is_non_admin = await is_nonadmin_chat(
+ CallbackQuery.message.chat.id
+ )
+ if not is_non_admin:
+ if CallbackQuery.from_user.id not in SUDOERS:
+ admins = adminlist.get(CallbackQuery.message.chat.id)
+ if not admins:
+ return await CallbackQuery.answer(
+ _["admin_18"], show_alert=True
+ )
+ else:
+ if CallbackQuery.from_user.id not in admins:
+ return await CallbackQuery.answer(
+ _["admin_19"], show_alert=True
+ )
+ if command == "Pause":
+ if not await is_music_playing(chat_id):
+ return await CallbackQuery.answer(
+ _["admin_1"], show_alert=True
+ )
+ await CallbackQuery.answer()
+ await music_off(chat_id)
+ await Yukki.pause_stream(chat_id)
+ await CallbackQuery.message.reply_text(
+ _["admin_2"].format(mention)
+ )
+ elif command == "Resume":
+ if await is_music_playing(chat_id):
+ return await CallbackQuery.answer(
+ _["admin_3"], show_alert=True
+ )
+ await CallbackQuery.answer()
+ await music_on(chat_id)
+ await Yukki.resume_stream(chat_id)
+ await CallbackQuery.message.reply_text(
+ _["admin_4"].format(mention)
+ )
+ elif command == "Stop" or command == "End":
+ await CallbackQuery.answer()
+ await Yukki.stop_stream(chat_id)
+ await set_loop(chat_id, 0)
+ await CallbackQuery.message.reply_text(
+ _["admin_9"].format(mention)
+ )
+ elif command == "Mute":
+ if await is_muted(chat_id):
+ return await CallbackQuery.answer(
+ _["admin_5"], show_alert=True
+ )
+ await CallbackQuery.answer()
+ await mute_on(chat_id)
+ await Yukki.mute_stream(chat_id)
+ await CallbackQuery.message.reply_text(
+ _["admin_6"].format(mention)
+ )
+ elif command == "Unmute":
+ if not await is_muted(chat_id):
+ return await CallbackQuery.answer(
+ _["admin_7"], show_alert=True
+ )
+ await CallbackQuery.answer()
+ await mute_off(chat_id)
+ await Yukki.unmute_stream(chat_id)
+ await CallbackQuery.message.reply_text(
+ _["admin_8"].format(mention)
+ )
+ elif command == "Loop":
+ await CallbackQuery.answer()
+ await set_loop(chat_id, 3)
+ await CallbackQuery.message.reply_text(
+ _["admin_25"].format(mention, 3)
+ )
+ elif command == "Shuffle":
+ check = db.get(chat_id)
+ if not check:
+ return await CallbackQuery.answer(
+ _["admin_21"], show_alert=True
+ )
+ try:
+ popped = check.pop(0)
+ except:
+ return await CallbackQuery.answer(
+ _["admin_22"], show_alert=True
+ )
+ check = db.get(chat_id)
+ if not check:
+ check.insert(0, popped)
+ return await CallbackQuery.answer(
+ _["admin_22"], show_alert=True
+ )
+ await CallbackQuery.answer()
+ random.shuffle(check)
+ check.insert(0, popped)
+ await CallbackQuery.message.reply_text(
+ _["admin_23"].format(mention)
+ )
+ elif command == "Skip":
+ check = db.get(chat_id)
+ txt = f"Skipped by {mention}"
+ popped = None
+ try:
+ popped = check.pop(0)
+ if popped:
+ if AUTO_DOWNLOADS_CLEAR == str(True):
+ await auto_clean(popped)
+ if not check:
+ await CallbackQuery.edit_message_text(
+ f"Skipped by {mention}"
+ )
+ await CallbackQuery.message.reply_text(
+ _["admin_10"].format(mention)
+ )
+ try:
+ return await Yukki.stop_stream(chat_id)
+ except:
+ return
+ except:
+ try:
+ await CallbackQuery.edit_message_text(
+ f"Skipped by {mention}"
+ )
+ await CallbackQuery.message.reply_text(
+ _["admin_10"].format(mention)
+ )
+ return await Yukki.stop_stream(chat_id)
+ except:
+ return
+ await CallbackQuery.answer()
+ queued = check[0]["file"]
+ title = (check[0]["title"]).title()
+ user = check[0]["by"]
+ streamtype = check[0]["streamtype"]
+ videoid = check[0]["vidid"]
+ status = True if str(streamtype) == "video" else None
+ db[chat_id][0]["played"] = 0
+ if "live_" in queued:
+ n, link = await YouTube.video(videoid, True)
+ if n == 0:
+ return await CallbackQuery.message.reply_text(
+ _["admin_11"].format(title)
+ )
+ try:
+ await Yukki.skip_stream(chat_id, link, video=status)
+ except Exception:
+ return await CallbackQuery.message.reply_text(
+ _["call_9"]
+ )
+ button = telegram_markup(_, chat_id)
+ img = await gen_thumb(videoid)
+ run = await CallbackQuery.message.reply_photo(
+ photo=img,
+ caption=_["stream_1"].format(
+ user,
+ f"https://t.me/{app.username}?start=info_{videoid}",
+ ),
+ reply_markup=InlineKeyboardMarkup(button),
+ )
+ db[chat_id][0]["mystic"] = run
+ db[chat_id][0]["markup"] = "tg"
+ await CallbackQuery.edit_message_text(txt)
+ elif "vid_" in queued:
+ mystic = await CallbackQuery.message.reply_text(
+ _["call_10"], disable_web_page_preview=True
+ )
+ try:
+ file_path, direct = await YouTube.download(
+ videoid,
+ mystic,
+ videoid=True,
+ video=status,
+ )
+ except:
+ return await mystic.edit_text(_["call_9"])
+ try:
+ await Yukki.skip_stream(
+ chat_id, file_path, video=status
+ )
+ except Exception:
+ return await mystic.edit_text(_["call_9"])
+ button = stream_markup(_, videoid, chat_id)
+ img = await gen_thumb(videoid)
+ run = await CallbackQuery.message.reply_photo(
+ photo=img,
+ caption=_["stream_1"].format(
+ user,
+ f"https://t.me/{app.username}?start=info_{videoid}",
+ ),
+ reply_markup=InlineKeyboardMarkup(button),
+ )
+ db[chat_id][0]["mystic"] = run
+ db[chat_id][0]["markup"] = "stream"
+ await CallbackQuery.edit_message_text(txt)
+ await mystic.delete()
+ elif "index_" in queued:
+ try:
+ await Yukki.skip_stream(
+ chat_id, videoid, video=status
+ )
+ except Exception:
+ return await CallbackQuery.message.reply_text(
+ _["call_9"]
+ )
+ button = telegram_markup(_, chat_id)
+ run = await CallbackQuery.message.reply_photo(
+ photo=STREAM_IMG_URL,
+ caption=_["stream_2"].format(user),
+ reply_markup=InlineKeyboardMarkup(button),
+ )
+ db[chat_id][0]["mystic"] = run
+ db[chat_id][0]["markup"] = "tg"
+ await CallbackQuery.edit_message_text(txt)
+ else:
+ try:
+ await Yukki.skip_stream(chat_id, queued, video=status)
+ except Exception:
+ return await CallbackQuery.message.reply_text(
+ _["call_9"]
+ )
+ if videoid == "telegram":
+ button = telegram_markup(_, chat_id)
+ run = await CallbackQuery.message.reply_photo(
+ photo=TELEGRAM_AUDIO_URL
+ if str(streamtype) == "audio"
+ else TELEGRAM_VIDEO_URL,
+ caption=_["stream_3"].format(
+ title, check[0]["dur"], user
+ ),
+ reply_markup=InlineKeyboardMarkup(button),
+ )
+ db[chat_id][0]["mystic"] = run
+ db[chat_id][0]["markup"] = "tg"
+ elif videoid == "soundcloud":
+ button = telegram_markup(_, chat_id)
+ run = await CallbackQuery.message.reply_photo(
+ photo=SOUNCLOUD_IMG_URL
+ if str(streamtype) == "audio"
+ else TELEGRAM_VIDEO_URL,
+ caption=_["stream_3"].format(
+ title, check[0]["dur"], user
+ ),
+ reply_markup=InlineKeyboardMarkup(button),
+ )
+ db[chat_id][0]["mystic"] = run
+ db[chat_id][0]["markup"] = "tg"
+ else:
+ button = stream_markup(_, videoid, chat_id)
+ img = await gen_thumb(videoid)
+ run = await CallbackQuery.message.reply_photo(
+ photo=img,
+ caption=_["stream_1"].format(
+ user,
+ f"https://t.me/{app.username}?start=info_{videoid}",
+ ),
+ reply_markup=InlineKeyboardMarkup(button),
+ )
+ db[chat_id][0]["mystic"] = run
+ db[chat_id][0]["markup"] = "stream"
+ await CallbackQuery.edit_message_text(txt)
+ else:
+ playing = db.get(chat_id)
+ if not playing:
+ return await CallbackQuery.answer(
+ _["queue_2"], show_alert=True
+ )
+ duration_seconds = int(playing[0]["seconds"])
+ if duration_seconds == 0:
+ return await CallbackQuery.answer(
+ _["admin_30"], show_alert=True
+ )
+ file_path = playing[0]["file"]
+ if "index_" in file_path or "live_" in file_path:
+ return await CallbackQuery.answer(
+ _["admin_30"], show_alert=True
+ )
+ duration_played = int(playing[0]["played"])
+ if int(command) in [1, 2]:
+ duration_to_skip = 10
+ else:
+ duration_to_skip = 30
+ duration = playing[0]["dur"]
+ if int(command) in [1, 3]:
+ if (duration_played - duration_to_skip) <= 10:
+ bet = seconds_to_min(duration_played)
+ return await CallbackQuery.answer(
+ f"Bot is not able to seek due to total duration has been exceeded.\n\nCurrently played** {bet}** mins out of **{duration}** mins",
+ show_alert=True,
+ )
+ to_seek = duration_played - duration_to_skip + 1
+ else:
+ if (
+ duration_seconds
+ - (duration_played + duration_to_skip)
+ ) <= 10:
+ bet = seconds_to_min(duration_played)
+ return await CallbackQuery.answer(
+ f"Bot is not able to seek due to total duration has been exceeded.\n\nCurrently played** {bet}** mins out of **{duration}** mins",
+ show_alert=True,
+ )
+ to_seek = duration_played + duration_to_skip + 1
+ await CallbackQuery.answer()
+ mystic = await CallbackQuery.message.reply_text(_["admin_32"])
+ if "vid_" in file_path:
+ n, file_path = await YouTube.video(
+ playing[0]["vidid"], True
+ )
+ if n == 0:
+ return await mystic.edit_text(_["admin_30"])
+ try:
+ await Yukki.seek_stream(
+ chat_id,
+ file_path,
+ seconds_to_min(to_seek),
+ duration,
+ playing[0]["streamtype"],
+ )
+ except:
+ return await mystic.edit_text(_["admin_34"])
+ if int(command) in [1, 3]:
+ db[chat_id][0]["played"] -= duration_to_skip
+ else:
+ db[chat_id][0]["played"] += duration_to_skip
+ string = _["admin_33"].format(seconds_to_min(to_seek))
+ await mystic.edit_text(
+ f"{string}\n\nChanges done by: {mention}"
+ )
diff --git a/YukkiMusic/plugins/admins/loop.py b/YukkiMusic/plugins/admins/loop.py
new file mode 100644
index 0000000000000000000000000000000000000000..1a7ecd19f1e4d054d4804910d6342830a8071cec
--- /dev/null
+++ b/YukkiMusic/plugins/admins/loop.py
@@ -0,0 +1,60 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram import filters
+from pyrogram.types import Message
+
+from config import BANNED_USERS
+from strings import get_command
+from YukkiMusic import app
+from YukkiMusic.utils.database.memorydatabase import (get_loop,
+ set_loop)
+from YukkiMusic.utils.decorators import AdminRightsCheck
+
+# Commands
+LOOP_COMMAND = get_command("LOOP_COMMAND")
+
+
+@app.on_message(
+ filters.command(LOOP_COMMAND)
+ & filters.group
+ & ~BANNED_USERS
+)
+@AdminRightsCheck
+async def admins(cli, message: Message, _, chat_id):
+ usage = _["admin_24"]
+ if len(message.command) != 2:
+ return await message.reply_text(usage)
+ state = message.text.split(None, 1)[1].strip()
+ if state.isnumeric():
+ state = int(state)
+ if 1 <= state <= 10:
+ got = await get_loop(chat_id)
+ if got != 0:
+ state = got + state
+ if int(state) > 10:
+ state = 10
+ await set_loop(chat_id, state)
+ return await message.reply_text(
+ _["admin_25"].format(
+ message.from_user.first_name, state
+ )
+ )
+ else:
+ return await message.reply_text(_["admin_26"])
+ elif state.lower() == "enable":
+ await set_loop(chat_id, 10)
+ return await message.reply_text(
+ _["admin_25"].format(message.from_user.first_name, 10)
+ )
+ elif state.lower() == "disable":
+ await set_loop(chat_id, 0)
+ return await message.reply_text(_["admin_27"])
+ else:
+ return await message.reply_text(usage)
diff --git a/YukkiMusic/plugins/admins/mute.py b/YukkiMusic/plugins/admins/mute.py
new file mode 100644
index 0000000000000000000000000000000000000000..c27300d4957d06daecb08553d8f6f4fba52c3245
--- /dev/null
+++ b/YukkiMusic/plugins/admins/mute.py
@@ -0,0 +1,39 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram import filters
+from pyrogram.types import Message
+
+from config import BANNED_USERS
+from strings import get_command
+from YukkiMusic import app
+from YukkiMusic.core.call import Yukki
+from YukkiMusic.utils.database import is_muted, mute_on
+from YukkiMusic.utils.decorators import AdminRightsCheck
+
+# Commands
+MUTE_COMMAND = get_command("MUTE_COMMAND")
+
+
+@app.on_message(
+ filters.command(MUTE_COMMAND)
+ & filters.group
+ & ~BANNED_USERS
+)
+@AdminRightsCheck
+async def mute_admin(cli, message: Message, _, chat_id):
+ if not len(message.command) == 1 or message.reply_to_message:
+ return await message.reply_text(_["general_2"])
+ if await is_muted(chat_id):
+ return await message.reply_text(_["admin_5"])
+ await mute_on(chat_id)
+ await Yukki.mute_stream(chat_id)
+ await message.reply_text(
+ _["admin_6"].format(message.from_user.mention)
+ )
diff --git a/YukkiMusic/plugins/admins/pause.py b/YukkiMusic/plugins/admins/pause.py
new file mode 100644
index 0000000000000000000000000000000000000000..6e82ba0c93869058b6c0725c4d53128aa7c28f8e
--- /dev/null
+++ b/YukkiMusic/plugins/admins/pause.py
@@ -0,0 +1,39 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram import filters
+from pyrogram.types import Message
+
+from config import BANNED_USERS
+from strings import get_command
+from YukkiMusic import app
+from YukkiMusic.core.call import Yukki
+from YukkiMusic.utils.database import is_music_playing, music_off
+from YukkiMusic.utils.decorators import AdminRightsCheck
+
+# Commands
+PAUSE_COMMAND = get_command("PAUSE_COMMAND")
+
+
+@app.on_message(
+ filters.command(PAUSE_COMMAND)
+ & filters.group
+ & ~BANNED_USERS
+)
+@AdminRightsCheck
+async def pause_admin(cli, message: Message, _, chat_id):
+ if not len(message.command) == 1:
+ return await message.reply_text(_["general_2"])
+ if not await is_music_playing(chat_id):
+ return await message.reply_text(_["admin_1"])
+ await music_off(chat_id)
+ await Yukki.pause_stream(chat_id)
+ await message.reply_text(
+ _["admin_2"].format(message.from_user.mention)
+ )
diff --git a/YukkiMusic/plugins/admins/resume.py b/YukkiMusic/plugins/admins/resume.py
new file mode 100644
index 0000000000000000000000000000000000000000..1cde4b972173a8fce3c0a1f75d17160e2fcb8b3a
--- /dev/null
+++ b/YukkiMusic/plugins/admins/resume.py
@@ -0,0 +1,39 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram import filters
+from pyrogram.types import Message
+
+from config import BANNED_USERS
+from strings import get_command
+from YukkiMusic import app
+from YukkiMusic.core.call import Yukki
+from YukkiMusic.utils.database import is_music_playing, music_on
+from YukkiMusic.utils.decorators import AdminRightsCheck
+
+# Commands
+RESUME_COMMAND = get_command("RESUME_COMMAND")
+
+
+@app.on_message(
+ filters.command(RESUME_COMMAND)
+ & filters.group
+ & ~BANNED_USERS
+)
+@AdminRightsCheck
+async def resume_com(cli, message: Message, _, chat_id):
+ if not len(message.command) == 1:
+ return await message.reply_text(_["general_2"])
+ if await is_music_playing(chat_id):
+ return await message.reply_text(_["admin_3"])
+ await music_on(chat_id)
+ await Yukki.resume_stream(chat_id)
+ await message.reply_text(
+ _["admin_4"].format(message.from_user.mention)
+ )
diff --git a/YukkiMusic/plugins/admins/seek.py b/YukkiMusic/plugins/admins/seek.py
new file mode 100644
index 0000000000000000000000000000000000000000..0476cf193cb56753a898684df4d7bd055fa4dded
--- /dev/null
+++ b/YukkiMusic/plugins/admins/seek.py
@@ -0,0 +1,87 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram import filters
+from pyrogram.types import Message
+
+from config import BANNED_USERS
+from strings import get_command
+from YukkiMusic import YouTube, app
+from YukkiMusic.core.call import Yukki
+from YukkiMusic.misc import db
+from YukkiMusic.utils import AdminRightsCheck, seconds_to_min
+
+# Commands
+SEEK_COMMAND = get_command("SEEK_COMMAND")
+
+
+@app.on_message(
+ filters.command(SEEK_COMMAND)
+ & filters.group
+ & ~BANNED_USERS
+)
+@AdminRightsCheck
+async def seek_comm(cli, message: Message, _, chat_id):
+ if len(message.command) == 1:
+ return await message.reply_text(_["admin_28"])
+ query = message.text.split(None, 1)[1].strip()
+ if not query.isnumeric():
+ return await message.reply_text(_["admin_29"])
+ playing = db.get(chat_id)
+ if not playing:
+ return await message.reply_text(_["queue_2"])
+ duration_seconds = int(playing[0]["seconds"])
+ if duration_seconds == 0:
+ return await message.reply_text(_["admin_30"])
+ file_path = playing[0]["file"]
+ if "index_" in file_path or "live_" in file_path:
+ return await message.reply_text(_["admin_30"])
+ duration_played = int(playing[0]["played"])
+ duration_to_skip = int(query)
+ duration = playing[0]["dur"]
+ if message.command[0][-2] == "c":
+ if (duration_played - duration_to_skip) <= 10:
+ return await message.reply_text(
+ _["admin_31"].format(
+ seconds_to_min(duration_played), duration
+ )
+ )
+ to_seek = duration_played - duration_to_skip + 1
+ else:
+ if (
+ duration_seconds - (duration_played + duration_to_skip)
+ ) <= 10:
+ return await message.reply_text(
+ _["admin_31"].format(
+ seconds_to_min(duration_played), duration
+ )
+ )
+ to_seek = duration_played + duration_to_skip + 1
+ mystic = await message.reply_text(_["admin_32"])
+ if "vid_" in file_path:
+ n, file_path = await YouTube.video(playing[0]["vidid"], True)
+ if n == 0:
+ return await message.reply_text(_["admin_30"])
+ try:
+ await Yukki.seek_stream(
+ chat_id,
+ file_path,
+ seconds_to_min(to_seek),
+ duration,
+ playing[0]["streamtype"],
+ )
+ except:
+ return await mystic.edit_text(_["admin_34"])
+ if message.command[0][-2] == "c":
+ db[chat_id][0]["played"] -= duration_to_skip
+ else:
+ db[chat_id][0]["played"] += duration_to_skip
+ await mystic.edit_text(
+ _["admin_33"].format(seconds_to_min(to_seek))
+ )
diff --git a/YukkiMusic/plugins/admins/shuffle.py b/YukkiMusic/plugins/admins/shuffle.py
new file mode 100644
index 0000000000000000000000000000000000000000..12b8d0e10717495b13344b891b12463190a6338c
--- /dev/null
+++ b/YukkiMusic/plugins/admins/shuffle.py
@@ -0,0 +1,49 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import random
+
+from pyrogram import filters
+from pyrogram.types import Message
+
+from config import BANNED_USERS
+from strings import get_command
+from YukkiMusic import app
+from YukkiMusic.misc import db
+from YukkiMusic.utils.decorators import AdminRightsCheck
+
+# Commands
+SHUFFLE_COMMAND = get_command("SHUFFLE_COMMAND")
+
+
+@app.on_message(
+ filters.command(SHUFFLE_COMMAND)
+ & filters.group
+ & ~BANNED_USERS
+)
+@AdminRightsCheck
+async def admins(Client, message: Message, _, chat_id):
+ if not len(message.command) == 1:
+ return await message.reply_text(_["general_2"])
+ check = db.get(chat_id)
+ if not check:
+ return await message.reply_text(_["admin_21"])
+ try:
+ popped = check.pop(0)
+ except:
+ return await message.reply_text(_["admin_22"])
+ check = db.get(chat_id)
+ if not check:
+ check.insert(0, popped)
+ return await message.reply_text(_["admin_22"])
+ random.shuffle(check)
+ check.insert(0, popped)
+ await message.reply_text(
+ _["admin_23"].format(message.from_user.first_name)
+ )
diff --git a/YukkiMusic/plugins/admins/skip.py b/YukkiMusic/plugins/admins/skip.py
new file mode 100644
index 0000000000000000000000000000000000000000..dce86404246dd06bde63fdfef40376d892e15ad1
--- /dev/null
+++ b/YukkiMusic/plugins/admins/skip.py
@@ -0,0 +1,223 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram import filters
+from pyrogram.types import InlineKeyboardMarkup, Message
+
+import config
+from config import BANNED_USERS
+from strings import get_command
+from YukkiMusic import YouTube, app
+from YukkiMusic.core.call import Yukki
+from YukkiMusic.misc import db
+from YukkiMusic.utils.database import get_loop
+from YukkiMusic.utils.decorators import AdminRightsCheck
+from YukkiMusic.utils.inline.play import (stream_markup,
+ telegram_markup)
+from YukkiMusic.utils.stream.autoclear import auto_clean
+from YukkiMusic.utils.thumbnails import gen_thumb
+
+# Commands
+SKIP_COMMAND = get_command("SKIP_COMMAND")
+
+
+@app.on_message(
+ filters.command(SKIP_COMMAND)
+ & filters.group
+ & ~BANNED_USERS
+)
+@AdminRightsCheck
+async def skip(cli, message: Message, _, chat_id):
+ if not len(message.command) < 2:
+ loop = await get_loop(chat_id)
+ if loop != 0:
+ return await message.reply_text(_["admin_12"])
+ state = message.text.split(None, 1)[1].strip()
+ if state.isnumeric():
+ state = int(state)
+ check = db.get(chat_id)
+ if check:
+ count = len(check)
+ if count > 2:
+ count = int(count - 1)
+ if 1 <= state <= count:
+ for x in range(state):
+ popped = None
+ try:
+ popped = check.pop(0)
+ except:
+ return await message.reply_text(
+ _["admin_16"]
+ )
+ if popped:
+ if (
+ config.AUTO_DOWNLOADS_CLEAR
+ == str(True)
+ ):
+ await auto_clean(popped)
+ if not check:
+ try:
+ await message.reply_text(
+ _["admin_10"].format(
+ message.from_user.first_name
+ )
+ )
+ await Yukki.stop_stream(chat_id)
+ except:
+ return
+ break
+ else:
+ return await message.reply_text(
+ _["admin_15"].format(count)
+ )
+ else:
+ return await message.reply_text(_["admin_14"])
+ else:
+ return await message.reply_text(_["queue_2"])
+ else:
+ return await message.reply_text(_["admin_13"])
+ else:
+ check = db.get(chat_id)
+ popped = None
+ try:
+ popped = check.pop(0)
+ if popped:
+ if config.AUTO_DOWNLOADS_CLEAR == str(True):
+ await auto_clean(popped)
+ if not check:
+ await message.reply_text(
+ _["admin_10"].format(message.from_user.first_name)
+ )
+ try:
+ return await Yukki.stop_stream(chat_id)
+ except:
+ return
+ except:
+ try:
+ await message.reply_text(
+ _["admin_10"].format(message.from_user.first_name)
+ )
+ return await Yukki.stop_stream(chat_id)
+ except:
+ return
+ queued = check[0]["file"]
+ title = (check[0]["title"]).title()
+ user = check[0]["by"]
+ streamtype = check[0]["streamtype"]
+ videoid = check[0]["vidid"]
+ status = True if str(streamtype) == "video" else None
+ if "live_" in queued:
+ n, link = await YouTube.video(videoid, True)
+ if n == 0:
+ return await message.reply_text(
+ _["admin_11"].format(title)
+ )
+ try:
+ await Yukki.skip_stream(chat_id, link, video=status)
+ except Exception:
+ return await message.reply_text(_["call_9"])
+ button = telegram_markup(_, chat_id)
+ img = await gen_thumb(videoid)
+ run = await message.reply_photo(
+ photo=img,
+ caption=_["stream_1"].format(
+ user,
+ f"https://t.me/{app.username}?start=info_{videoid}",
+ ),
+ reply_markup=InlineKeyboardMarkup(button),
+ )
+ db[chat_id][0]["mystic"] = run
+ db[chat_id][0]["markup"] = "tg"
+ elif "vid_" in queued:
+ mystic = await message.reply_text(
+ _["call_10"], disable_web_page_preview=True
+ )
+ try:
+ file_path, direct = await YouTube.download(
+ videoid,
+ mystic,
+ videoid=True,
+ video=status,
+ )
+ except:
+ return await mystic.edit_text(_["call_9"])
+ try:
+ await Yukki.skip_stream(chat_id, file_path, video=status)
+ except Exception:
+ return await mystic.edit_text(_["call_9"])
+ button = stream_markup(_, videoid, chat_id)
+ img = await gen_thumb(videoid)
+ run = await message.reply_photo(
+ photo=img,
+ caption=_["stream_1"].format(
+ user,
+ f"https://t.me/{app.username}?start=info_{videoid}",
+ ),
+ reply_markup=InlineKeyboardMarkup(button),
+ )
+ db[chat_id][0]["mystic"] = run
+ db[chat_id][0]["markup"] = "stream"
+ await mystic.delete()
+ elif "index_" in queued:
+ try:
+ await Yukki.skip_stream(chat_id, videoid, video=status)
+ except Exception:
+ return await message.reply_text(_["call_9"])
+ button = telegram_markup(_, chat_id)
+ run = await message.reply_photo(
+ photo=config.STREAM_IMG_URL,
+ caption=_["stream_2"].format(user),
+ reply_markup=InlineKeyboardMarkup(button),
+ )
+ db[chat_id][0]["mystic"] = run
+ db[chat_id][0]["markup"] = "tg"
+ else:
+ try:
+ await Yukki.skip_stream(chat_id, queued, video=status)
+ except Exception:
+ return await message.reply_text(_["call_9"])
+ if videoid == "telegram":
+ button = telegram_markup(_, chat_id)
+ run = await message.reply_photo(
+ photo=config.TELEGRAM_AUDIO_URL
+ if str(streamtype) == "audio"
+ else config.TELEGRAM_VIDEO_URL,
+ caption=_["stream_3"].format(
+ title, check[0]["dur"], user
+ ),
+ reply_markup=InlineKeyboardMarkup(button),
+ )
+ db[chat_id][0]["mystic"] = run
+ db[chat_id][0]["markup"] = "tg"
+ elif videoid == "soundcloud":
+ button = telegram_markup(_, chat_id)
+ run = await message.reply_photo(
+ photo=config.SOUNCLOUD_IMG_URL
+ if str(streamtype) == "audio"
+ else config.TELEGRAM_VIDEO_URL,
+ caption=_["stream_3"].format(
+ title, check[0]["dur"], user
+ ),
+ reply_markup=InlineKeyboardMarkup(button),
+ )
+ db[chat_id][0]["mystic"] = run
+ db[chat_id][0]["markup"] = "tg"
+ else:
+ button = stream_markup(_, videoid, chat_id)
+ img = await gen_thumb(videoid)
+ run = await message.reply_photo(
+ photo=img,
+ caption=_["stream_1"].format(
+ user,
+ f"https://t.me/{app.username}?start=info_{videoid}",
+ ),
+ reply_markup=InlineKeyboardMarkup(button),
+ )
+ db[chat_id][0]["mystic"] = run
+ db[chat_id][0]["markup"] = "stream"
diff --git a/YukkiMusic/plugins/admins/stop.py b/YukkiMusic/plugins/admins/stop.py
new file mode 100644
index 0000000000000000000000000000000000000000..8c52e140188fd919f792fc070e57d9d9eaf41eaa
--- /dev/null
+++ b/YukkiMusic/plugins/admins/stop.py
@@ -0,0 +1,37 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram import filters
+from pyrogram.types import Message
+
+from config import BANNED_USERS
+from strings import get_command
+from YukkiMusic import app
+from YukkiMusic.core.call import Yukki
+from YukkiMusic.utils.database import set_loop
+from YukkiMusic.utils.decorators import AdminRightsCheck
+
+# Commands
+STOP_COMMAND = get_command("STOP_COMMAND")
+
+
+@app.on_message(
+ filters.command(STOP_COMMAND)
+ & filters.group
+ & ~BANNED_USERS
+)
+@AdminRightsCheck
+async def stop_music(cli, message: Message, _, chat_id):
+ if not len(message.command) == 1:
+ return await message.reply_text(_["general_2"])
+ await Yukki.stop_stream(chat_id)
+ await set_loop(chat_id, 0)
+ await message.reply_text(
+ _["admin_9"].format(message.from_user.mention)
+ )
diff --git a/YukkiMusic/plugins/admins/unmute.py b/YukkiMusic/plugins/admins/unmute.py
new file mode 100644
index 0000000000000000000000000000000000000000..c5f3ecc37221f2e762a78014dd98ab6527fa2f7b
--- /dev/null
+++ b/YukkiMusic/plugins/admins/unmute.py
@@ -0,0 +1,39 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram import filters
+from pyrogram.types import Message
+
+from config import BANNED_USERS
+from strings import get_command
+from YukkiMusic import app
+from YukkiMusic.core.call import Yukki
+from YukkiMusic.utils.database import is_muted, mute_off
+from YukkiMusic.utils.decorators import AdminRightsCheck
+
+# Commands
+UNMUTE_COMMAND = get_command("UNMUTE_COMMAND")
+
+
+@app.on_message(
+ filters.command(UNMUTE_COMMAND)
+ & filters.group
+ & ~BANNED_USERS
+)
+@AdminRightsCheck
+async def unmute_admin(Client, message: Message, _, chat_id):
+ if not len(message.command) == 1 or message.reply_to_message:
+ return await message.reply_text(_["general_2"])
+ if not await is_muted(chat_id):
+ return await message.reply_text(_["admin_7"])
+ await mute_off(chat_id)
+ await Yukki.unmute_stream(chat_id)
+ await message.reply_text(
+ _["admin_8"].format(message.from_user.mention)
+ )
diff --git a/YukkiMusic/plugins/bot/help.py b/YukkiMusic/plugins/bot/help.py
new file mode 100644
index 0000000000000000000000000000000000000000..cc71087259159c10bd02a29b906efde743b5dd97
--- /dev/null
+++ b/YukkiMusic/plugins/bot/help.py
@@ -0,0 +1,122 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+
+from typing import Union
+
+from pyrogram import filters, types
+from pyrogram.types import InlineKeyboardMarkup, Message
+
+from config import BANNED_USERS
+from strings import get_command, get_string, helpers
+from YukkiMusic import app
+from YukkiMusic.misc import SUDOERS
+from YukkiMusic.utils import help_pannel
+from YukkiMusic.utils.database import get_lang, is_commanddelete_on
+from YukkiMusic.utils.decorators.language import (LanguageStart,
+ languageCB)
+from YukkiMusic.utils.inline.help import (help_back_markup,
+ private_help_panel)
+
+### Command
+HELP_COMMAND = get_command("HELP_COMMAND")
+
+
+@app.on_message(
+ filters.command(HELP_COMMAND)
+ & filters.private
+ & ~BANNED_USERS
+)
+@app.on_callback_query(
+ filters.regex("settings_back_helper") & ~BANNED_USERS
+)
+async def helper_private(
+ client: app, update: Union[types.Message, types.CallbackQuery]
+):
+ is_callback = isinstance(update, types.CallbackQuery)
+ if is_callback:
+ try:
+ await update.answer()
+ except:
+ pass
+ chat_id = update.message.chat.id
+ language = await get_lang(chat_id)
+ _ = get_string(language)
+ keyboard = help_pannel(_, True)
+ if update.message.photo:
+ await update.message.delete()
+ await update.message.reply_text(
+ _["help_1"], reply_markup=keyboard
+ )
+ else:
+ await update.edit_message_text(
+ _["help_1"], reply_markup=keyboard
+ )
+ else:
+ chat_id = update.chat.id
+ if await is_commanddelete_on(update.chat.id):
+ try:
+ await update.delete()
+ except:
+ pass
+ language = await get_lang(chat_id)
+ _ = get_string(language)
+ keyboard = help_pannel(_)
+ await update.reply_text(_["help_1"], reply_markup=keyboard)
+
+
+@app.on_message(
+ filters.command(HELP_COMMAND)
+ & filters.group
+ & ~BANNED_USERS
+)
+@LanguageStart
+async def help_com_group(client, message: Message, _):
+ keyboard = private_help_panel(_)
+ await message.reply_text(
+ _["help_2"], reply_markup=InlineKeyboardMarkup(keyboard)
+ )
+
+
+@app.on_callback_query(filters.regex("help_callback") & ~BANNED_USERS)
+@languageCB
+async def helper_cb(client, CallbackQuery, _):
+ callback_data = CallbackQuery.data.strip()
+ cb = callback_data.split(None, 1)[1]
+ keyboard = help_back_markup(_)
+ if cb == "hb5":
+ if CallbackQuery.from_user.id not in SUDOERS:
+ return await CallbackQuery.answer(
+ "Only for Sudo Users", show_alert=True
+ )
+ else:
+ await CallbackQuery.edit_message_text(
+ helpers.HELP_5, reply_markup=keyboard
+ )
+ return await CallbackQuery.answer()
+ try:
+ await CallbackQuery.answer()
+ except:
+ pass
+ if cb == "hb1":
+ await CallbackQuery.edit_message_text(
+ helpers.HELP_1, reply_markup=keyboard
+ )
+ elif cb == "hb2":
+ await CallbackQuery.edit_message_text(
+ helpers.HELP_2, reply_markup=keyboard
+ )
+ elif cb == "hb3":
+ await CallbackQuery.edit_message_text(
+ helpers.HELP_3, reply_markup=keyboard
+ )
+ elif cb == "hb4":
+ await CallbackQuery.edit_message_text(
+ helpers.HELP_4, reply_markup=keyboard
+ )
diff --git a/YukkiMusic/plugins/bot/inline.py b/YukkiMusic/plugins/bot/inline.py
new file mode 100644
index 0000000000000000000000000000000000000000..f711a15014412c00c63c20079dcbf70082e13f75
--- /dev/null
+++ b/YukkiMusic/plugins/bot/inline.py
@@ -0,0 +1,83 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram.types import (InlineKeyboardButton,
+ InlineKeyboardMarkup,
+ InlineQueryResultPhoto)
+from youtubesearchpython.__future__ import VideosSearch
+
+from config import BANNED_USERS, MUSIC_BOT_NAME
+from YukkiMusic import app
+from YukkiMusic.utils.inlinequery import answer
+
+
+@app.on_inline_query(~BANNED_USERS)
+async def inline_query_handler(client, query):
+ text = query.query.strip().lower()
+ answers = []
+ if text.strip() == "":
+ try:
+ await client.answer_inline_query(
+ query.id, results=answer, cache_time=10
+ )
+ except:
+ return
+ else:
+ a = VideosSearch(text, limit=20)
+ result = (await a.next()).get("result")
+ for x in range(15):
+ title = (result[x]["title"]).title()
+ duration = result[x]["duration"]
+ views = result[x]["viewCount"]["short"]
+ thumbnail = result[x]["thumbnails"][0]["url"].split("?")[
+ 0
+ ]
+ channellink = result[x]["channel"]["link"]
+ channel = result[x]["channel"]["name"]
+ link = result[x]["link"]
+ published = result[x]["publishedTime"]
+ description = f"{views} | {duration} Mins | {channel} | {published}"
+ buttons = InlineKeyboardMarkup(
+ [
+ [
+ InlineKeyboardButton(
+ text="đĨ Watch on Youtube",
+ url=link,
+ )
+ ],
+ ]
+ )
+ searched_text = f"""
+ âī¸**Title:** [{title}]({link})
+
+ âŗ**Duration:** {duration} Mins
+ đ**Views:** `{views}`
+ â°**Published Time:** {published}
+ đĨ**Channel Name:** {channel}
+ đ**Channel Link:** [Visit From Here]({channellink})
+
+ __Reply with /play on this searched message to stream it on voice chat.__
+
+ âĄī¸ ** Inline Search By {MUSIC_BOT_NAME} **"""
+ answers.append(
+ InlineQueryResultPhoto(
+ photo_url=thumbnail,
+ title=title,
+ thumb_url=thumbnail,
+ description=description,
+ caption=searched_text,
+ reply_markup=buttons,
+ )
+ )
+ try:
+ return await client.answer_inline_query(
+ query.id, results=answers
+ )
+ except:
+ return
diff --git a/YukkiMusic/plugins/bot/settings.py b/YukkiMusic/plugins/bot/settings.py
new file mode 100644
index 0000000000000000000000000000000000000000..671c24a601b4e296fc61a8ab992afbd6a53f6c4f
--- /dev/null
+++ b/YukkiMusic/plugins/bot/settings.py
@@ -0,0 +1,568 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram import filters
+from pyrogram.errors import MessageNotModified
+from pyrogram.types import (CallbackQuery, InlineKeyboardButton,
+ InlineKeyboardMarkup, Message)
+
+from config import (BANNED_USERS, CLEANMODE_DELETE_MINS,
+ MUSIC_BOT_NAME, OWNER_ID)
+from strings import get_command
+from YukkiMusic import app
+from YukkiMusic.utils.database import (add_nonadmin_chat,
+ cleanmode_off, cleanmode_on,
+ commanddelete_off,
+ commanddelete_on,
+ get_aud_bit_name, get_authuser,
+ get_authuser_names,
+ get_playmode, get_playtype,
+ get_vid_bit_name,
+ is_cleanmode_on,
+ is_commanddelete_on,
+ is_nonadmin_chat,
+ is_suggestion,
+ remove_nonadmin_chat,
+ save_audio_bitrate,
+ save_video_bitrate,
+ set_playmode, set_playtype,
+ suggestion_off, suggestion_on)
+from YukkiMusic.utils.decorators.admins import ActualAdminCB
+from YukkiMusic.utils.decorators.language import language, languageCB
+from YukkiMusic.utils.inline.settings import (
+ audio_quality_markup, auth_users_markup,
+ cleanmode_settings_markup, playmode_users_markup, setting_markup,
+ video_quality_markup)
+from YukkiMusic.utils.inline.start import private_panel
+
+### Command
+SETTINGS_COMMAND = get_command("SETTINGS_COMMAND")
+
+
+@app.on_message(
+ filters.command(SETTINGS_COMMAND)
+ & filters.group
+ & ~BANNED_USERS
+)
+@language
+async def settings_mar(client, message: Message, _):
+ buttons = setting_markup(_)
+ await message.reply_text(
+ _["setting_1"].format(message.chat.title, message.chat.id),
+ reply_markup=InlineKeyboardMarkup(buttons),
+ )
+
+
+@app.on_callback_query(
+ filters.regex("settings_helper") & ~BANNED_USERS
+)
+@languageCB
+async def settings_cb(client, CallbackQuery, _):
+ try:
+ await CallbackQuery.answer(_["set_cb_8"])
+ except:
+ pass
+ buttons = setting_markup(_)
+ return await CallbackQuery.edit_message_text(
+ _["setting_1"].format(
+ CallbackQuery.message.chat.title,
+ CallbackQuery.message.chat.id,
+ ),
+ reply_markup=InlineKeyboardMarkup(buttons),
+ )
+
+
+@app.on_callback_query(
+ filters.regex("settingsback_helper") & ~BANNED_USERS
+)
+@languageCB
+async def settings_back_markup(
+ client, CallbackQuery: CallbackQuery, _
+):
+ try:
+ await CallbackQuery.answer()
+ except:
+ pass
+ if CallbackQuery.message.chat.type == "private":
+ try:
+ await app.resolve_peer(OWNER_ID[0])
+ OWNER = OWNER_ID[0]
+ except:
+ OWNER = None
+ buttons = private_panel(_, app.username, OWNER)
+ return await CallbackQuery.edit_message_text(
+ _["start_2"].format(MUSIC_BOT_NAME),
+ reply_markup=InlineKeyboardMarkup(buttons),
+ )
+ else:
+ buttons = setting_markup(_)
+ return await CallbackQuery.edit_message_reply_markup(
+ reply_markup=InlineKeyboardMarkup(buttons)
+ )
+
+
+## Audio and Video Quality
+async def gen_buttons_aud(_, aud):
+ if aud == "High":
+ buttons = audio_quality_markup(_, high=True)
+ elif aud == "Medium":
+ buttons = audio_quality_markup(_, medium=True)
+ elif aud == "Low":
+ buttons = audio_quality_markup(_, low=True)
+ return buttons
+
+
+async def gen_buttons_vid(_, aud):
+ if aud == "High":
+ buttons = video_quality_markup(_, high=True)
+ elif aud == "Medium":
+ buttons = video_quality_markup(_, medium=True)
+ elif aud == "Low":
+ buttons = video_quality_markup(_, low=True)
+ return buttons
+
+
+# without admin rights
+
+
+@app.on_callback_query(
+ filters.regex(
+ pattern=r"^(SEARCHANSWER|PLAYMODEANSWER|PLAYTYPEANSWER|AUTHANSWER|CMANSWER|COMMANDANSWER|SUGGANSWER|CM|AQ|VQ|PM|AU)$"
+ )
+ & ~BANNED_USERS
+)
+@languageCB
+async def without_Admin_rights(client, CallbackQuery, _):
+ command = CallbackQuery.matches[0].group(1)
+ if command == "SEARCHANSWER":
+ try:
+ return await CallbackQuery.answer(
+ _["setting_3"], show_alert=True
+ )
+ except:
+ return
+ if command == "PLAYMODEANSWER":
+ try:
+ return await CallbackQuery.answer(
+ _["setting_10"], show_alert=True
+ )
+ except:
+ return
+ if command == "PLAYTYPEANSWER":
+ try:
+ return await CallbackQuery.answer(
+ _["setting_11"], show_alert=True
+ )
+ except:
+ return
+ if command == "AUTHANSWER":
+ try:
+ return await CallbackQuery.answer(
+ _["setting_4"], show_alert=True
+ )
+ except:
+ return
+ if command == "CMANSWER":
+ try:
+ return await CallbackQuery.answer(
+ _["setting_9"].format(CLEANMODE_DELETE_MINS),
+ show_alert=True,
+ )
+ except:
+ return
+ if command == "COMMANDANSWER":
+ try:
+ return await CallbackQuery.answer(
+ _["setting_14"], show_alert=True
+ )
+ except:
+ return
+ if command == "SUGGANSWER":
+ try:
+ return await CallbackQuery.answer(
+ _["setting_16"], show_alert=True
+ )
+ except:
+ return
+ if command == "CM":
+ try:
+ await CallbackQuery.answer(_["set_cb_5"], show_alert=True)
+ except:
+ pass
+ sta = None
+ cle = None
+ if await is_cleanmode_on(CallbackQuery.message.chat.id):
+ cle = True
+ if await is_commanddelete_on(CallbackQuery.message.chat.id):
+ sta = True
+ sug = None
+ if await is_suggestion(CallbackQuery.message.chat.id):
+ sug = True
+ buttons = cleanmode_settings_markup(
+ _, status=cle, dels=sta, sug=sug
+ )
+ if command == "AQ":
+ try:
+ await CallbackQuery.answer(_["set_cb_1"], show_alert=True)
+ except:
+ pass
+ aud = await get_aud_bit_name(CallbackQuery.message.chat.id)
+ buttons = await gen_buttons_aud(_, aud)
+ if command == "VQ":
+ try:
+ await CallbackQuery.answer(_["set_cb_2"], show_alert=True)
+ except:
+ pass
+ aud = await get_vid_bit_name(CallbackQuery.message.chat.id)
+ buttons = await gen_buttons_vid(_, aud)
+ if command == "PM":
+ try:
+ await CallbackQuery.answer(_["set_cb_4"], show_alert=True)
+ except:
+ pass
+ playmode = await get_playmode(CallbackQuery.message.chat.id)
+ if playmode == "Direct":
+ Direct = True
+ else:
+ Direct = None
+ is_non_admin = await is_nonadmin_chat(
+ CallbackQuery.message.chat.id
+ )
+ if not is_non_admin:
+ Group = True
+ else:
+ Group = None
+ playty = await get_playtype(CallbackQuery.message.chat.id)
+ if playty == "Everyone":
+ Playtype = None
+ else:
+ Playtype = True
+ buttons = playmode_users_markup(_, Direct, Group, Playtype)
+ if command == "AU":
+ try:
+ await CallbackQuery.answer(_["set_cb_3"], show_alert=True)
+ except:
+ pass
+ is_non_admin = await is_nonadmin_chat(
+ CallbackQuery.message.chat.id
+ )
+ if not is_non_admin:
+ buttons = auth_users_markup(_, True)
+ else:
+ buttons = auth_users_markup(_)
+ try:
+ return await CallbackQuery.edit_message_reply_markup(
+ reply_markup=InlineKeyboardMarkup(buttons)
+ )
+ except MessageNotModified:
+ return
+
+
+# Audio Video Quality
+
+
+@app.on_callback_query(
+ filters.regex(pattern=r"^(LQA|MQA|HQA|LQV|MQV|HQV)$")
+ & ~BANNED_USERS
+)
+@ActualAdminCB
+async def aud_vid_cb(client, CallbackQuery, _):
+ command = CallbackQuery.matches[0].group(1)
+ try:
+ await CallbackQuery.answer(_["set_cb_6"], show_alert=True)
+ except:
+ pass
+ if command == "LQA":
+ await save_audio_bitrate(CallbackQuery.message.chat.id, "Low")
+ buttons = audio_quality_markup(_, low=True)
+ if command == "MQA":
+ await save_audio_bitrate(
+ CallbackQuery.message.chat.id, "Medium"
+ )
+ buttons = audio_quality_markup(_, medium=True)
+ if command == "HQA":
+ await save_audio_bitrate(
+ CallbackQuery.message.chat.id, "High"
+ )
+ buttons = audio_quality_markup(_, high=True)
+ if command == "LQV":
+ await save_video_bitrate(CallbackQuery.message.chat.id, "Low")
+ buttons = video_quality_markup(_, low=True)
+ if command == "MQV":
+ await save_video_bitrate(
+ CallbackQuery.message.chat.id, "Medium"
+ )
+ buttons = video_quality_markup(_, medium=True)
+ if command == "HQV":
+ await save_video_bitrate(
+ CallbackQuery.message.chat.id, "High"
+ )
+ buttons = video_quality_markup(_, high=True)
+ try:
+ return await CallbackQuery.edit_message_reply_markup(
+ reply_markup=InlineKeyboardMarkup(buttons)
+ )
+ except MessageNotModified:
+ return
+
+
+# Play Mode Settings
+@app.on_callback_query(
+ filters.regex(
+ pattern=r"^(|MODECHANGE|CHANNELMODECHANGE|PLAYTYPECHANGE)$"
+ )
+ & ~BANNED_USERS
+)
+@ActualAdminCB
+async def playmode_ans(client, CallbackQuery, _):
+ command = CallbackQuery.matches[0].group(1)
+ if command == "CHANNELMODECHANGE":
+ is_non_admin = await is_nonadmin_chat(
+ CallbackQuery.message.chat.id
+ )
+ if not is_non_admin:
+ await add_nonadmin_chat(CallbackQuery.message.chat.id)
+ Group = None
+ else:
+ await remove_nonadmin_chat(CallbackQuery.message.chat.id)
+ Group = True
+ playmode = await get_playmode(CallbackQuery.message.chat.id)
+ if playmode == "Direct":
+ Direct = True
+ else:
+ Direct = None
+ playty = await get_playtype(CallbackQuery.message.chat.id)
+ if playty == "Everyone":
+ Playtype = None
+ else:
+ Playtype = True
+ buttons = playmode_users_markup(_, Direct, Group, Playtype)
+ if command == "MODECHANGE":
+ try:
+ await CallbackQuery.answer(_["set_cb_6"], show_alert=True)
+ except:
+ pass
+ playmode = await get_playmode(CallbackQuery.message.chat.id)
+ if playmode == "Direct":
+ await set_playmode(
+ CallbackQuery.message.chat.id, "Inline"
+ )
+ Direct = None
+ else:
+ await set_playmode(
+ CallbackQuery.message.chat.id, "Direct"
+ )
+ Direct = True
+ is_non_admin = await is_nonadmin_chat(
+ CallbackQuery.message.chat.id
+ )
+ if not is_non_admin:
+ Group = True
+ else:
+ Group = None
+ playty = await get_playtype(CallbackQuery.message.chat.id)
+ if playty == "Everyone":
+ Playtype = False
+ else:
+ Playtype = True
+ buttons = playmode_users_markup(_, Direct, Group, Playtype)
+ if command == "PLAYTYPECHANGE":
+ try:
+ await CallbackQuery.answer(_["set_cb_6"], show_alert=True)
+ except:
+ pass
+ playty = await get_playtype(CallbackQuery.message.chat.id)
+ if playty == "Everyone":
+ await set_playtype(CallbackQuery.message.chat.id, "Admin")
+ Playtype = False
+ else:
+ await set_playtype(
+ CallbackQuery.message.chat.id, "Everyone"
+ )
+ Playtype = True
+ playmode = await get_playmode(CallbackQuery.message.chat.id)
+ if playmode == "Direct":
+ Direct = True
+ else:
+ Direct = None
+ is_non_admin = await is_nonadmin_chat(
+ CallbackQuery.message.chat.id
+ )
+ if not is_non_admin:
+ Group = True
+ else:
+ Group = None
+ buttons = playmode_users_markup(_, Direct, Group, Playtype)
+ try:
+ return await CallbackQuery.edit_message_reply_markup(
+ reply_markup=InlineKeyboardMarkup(buttons)
+ )
+ except MessageNotModified:
+ return
+
+
+# Auth Users Settings
+@app.on_callback_query(
+ filters.regex(pattern=r"^(AUTH|AUTHLIST)$") & ~BANNED_USERS
+)
+@ActualAdminCB
+async def authusers_mar(client, CallbackQuery, _):
+ command = CallbackQuery.matches[0].group(1)
+ if command == "AUTHLIST":
+ _authusers = await get_authuser_names(
+ CallbackQuery.message.chat.id
+ )
+ if not _authusers:
+ try:
+ return await CallbackQuery.answer(
+ _["setting_5"], show_alert=True
+ )
+ except:
+ return
+ else:
+ try:
+ await CallbackQuery.answer(
+ _["set_cb_7"], show_alert=True
+ )
+ except:
+ pass
+ j = 0
+ await CallbackQuery.edit_message_text(_["auth_6"])
+ msg = _["auth_7"]
+ for note in _authusers:
+ _note = await get_authuser(
+ CallbackQuery.message.chat.id, note
+ )
+ user_id = _note["auth_user_id"]
+ admin_id = _note["admin_id"]
+ admin_name = _note["admin_name"]
+ try:
+ user = await client.get_users(user_id)
+ user = user.first_name
+ j += 1
+ except Exception:
+ continue
+ msg += f"{j}⤠{user}[`{user_id}`]\n"
+ msg += (
+ f" {_['auth_8']} {admin_name}[`{admin_id}`]\n\n"
+ )
+ upl = InlineKeyboardMarkup(
+ [
+ [
+ InlineKeyboardButton(
+ text=_["BACK_BUTTON"], callback_data=f"AU"
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"],
+ callback_data=f"close",
+ ),
+ ]
+ ]
+ )
+ try:
+ return await CallbackQuery.edit_message_text(
+ msg, reply_markup=upl
+ )
+ except MessageNotModified:
+ return
+ try:
+ await CallbackQuery.answer(_["set_cb_6"], show_alert=True)
+ except:
+ pass
+ if command == "AUTH":
+ is_non_admin = await is_nonadmin_chat(
+ CallbackQuery.message.chat.id
+ )
+ if not is_non_admin:
+ await add_nonadmin_chat(CallbackQuery.message.chat.id)
+ buttons = auth_users_markup(_)
+ else:
+ await remove_nonadmin_chat(CallbackQuery.message.chat.id)
+ buttons = auth_users_markup(_, True)
+ try:
+ return await CallbackQuery.edit_message_reply_markup(
+ reply_markup=InlineKeyboardMarkup(buttons)
+ )
+ except MessageNotModified:
+ return
+
+
+## Clean Mode
+
+
+@app.on_callback_query(
+ filters.regex(
+ pattern=r"^(CLEANMODE|COMMANDELMODE|SUGGESTIONCHANGE)$"
+ )
+ & ~BANNED_USERS
+)
+@ActualAdminCB
+async def cleanmode_mark(client, CallbackQuery, _):
+ command = CallbackQuery.matches[0].group(1)
+ try:
+ await CallbackQuery.answer(_["set_cb_6"], show_alert=True)
+ except:
+ pass
+ if command == "CLEANMODE":
+ sta = None
+ if await is_commanddelete_on(CallbackQuery.message.chat.id):
+ sta = True
+ sug = None
+ if await is_suggestion(CallbackQuery.message.chat.id):
+ sug = True
+ cle = None
+ if await is_cleanmode_on(CallbackQuery.message.chat.id):
+ await cleanmode_off(CallbackQuery.message.chat.id)
+ else:
+ await cleanmode_on(CallbackQuery.message.chat.id)
+ cle = True
+ buttons = cleanmode_settings_markup(
+ _, status=cle, dels=sta, sug=sug
+ )
+ return await CallbackQuery.edit_message_reply_markup(
+ reply_markup=InlineKeyboardMarkup(buttons)
+ )
+ if command == "COMMANDELMODE":
+ cle = None
+ sta = None
+ if await is_cleanmode_on(CallbackQuery.message.chat.id):
+ cle = True
+ sug = None
+ if await is_suggestion(CallbackQuery.message.chat.id):
+ sug = True
+ if await is_commanddelete_on(CallbackQuery.message.chat.id):
+ await commanddelete_off(CallbackQuery.message.chat.id)
+ else:
+ await commanddelete_on(CallbackQuery.message.chat.id)
+ sta = True
+ buttons = cleanmode_settings_markup(
+ _, status=cle, dels=sta, sug=sug
+ )
+ if command == "SUGGESTIONCHANGE":
+ cle = None
+ sta = None
+ if await is_cleanmode_on(CallbackQuery.message.chat.id):
+ cle = True
+ if await is_commanddelete_on(CallbackQuery.message.chat.id):
+ sta = True
+ if await is_suggestion(CallbackQuery.message.chat.id):
+ await suggestion_off(CallbackQuery.message.chat.id)
+ sug = False
+ else:
+ await suggestion_on(CallbackQuery.message.chat.id)
+ sug = True
+ buttons = cleanmode_settings_markup(
+ _, status=cle, dels=sta, sug=sug
+ )
+ try:
+ return await CallbackQuery.edit_message_reply_markup(
+ reply_markup=InlineKeyboardMarkup(buttons)
+ )
+ except MessageNotModified:
+ return
diff --git a/YukkiMusic/plugins/bot/start.py b/YukkiMusic/plugins/bot/start.py
new file mode 100644
index 0000000000000000000000000000000000000000..7a22dd70a76b80e3b17ab5b8dd1b937547ec9f94
--- /dev/null
+++ b/YukkiMusic/plugins/bot/start.py
@@ -0,0 +1,294 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import asyncio
+
+from pyrogram import filters
+from pyrogram.types import (InlineKeyboardButton,
+ InlineKeyboardMarkup, Message)
+from youtubesearchpython.__future__ import VideosSearch
+
+import config
+from config import BANNED_USERS
+from config.config import OWNER_ID
+from strings import get_command, get_string
+from YukkiMusic import Telegram, YouTube, app
+from YukkiMusic.misc import SUDOERS
+from YukkiMusic.plugins.play.playlist import del_plist_msg
+from YukkiMusic.plugins.sudo.sudoers import sudoers_list
+from YukkiMusic.utils.database import (add_served_chat,
+ add_served_user,
+ blacklisted_chats,
+ get_assistant, get_lang,
+ get_userss, is_on_off,
+ is_served_private_chat)
+from YukkiMusic.utils.decorators.language import LanguageStart
+from YukkiMusic.utils.inline import (help_pannel, private_panel,
+ start_pannel)
+
+loop = asyncio.get_running_loop()
+
+
+@app.on_message(
+ filters.command(get_command("START_COMMAND"))
+ & filters.private
+ & ~BANNED_USERS
+)
+@LanguageStart
+async def start_comm(client, message: Message, _):
+ await add_served_user(message.from_user.id)
+ if len(message.text.split()) > 1:
+ name = message.text.split(None, 1)[1]
+ if name[0:4] == "help":
+ keyboard = help_pannel(_)
+ return await message.reply_text(
+ _["help_1"], reply_markup=keyboard
+ )
+ if name[0:4] == "song":
+ return await message.reply_text(_["song_2"])
+ if name[0:3] == "sta":
+ m = await message.reply_text(
+ "đ Fetching your personal stats.!"
+ )
+ stats = await get_userss(message.from_user.id)
+ tot = len(stats)
+ if not stats:
+ await asyncio.sleep(1)
+ return await m.edit(_["ustats_1"])
+
+ def get_stats():
+ msg = ""
+ limit = 0
+ results = {}
+ for i in stats:
+ top_list = stats[i]["spot"]
+ results[str(i)] = top_list
+ list_arranged = dict(
+ sorted(
+ results.items(),
+ key=lambda item: item[1],
+ reverse=True,
+ )
+ )
+ if not results:
+ return m.edit(_["ustats_1"])
+ tota = 0
+ videoid = None
+ for vidid, count in list_arranged.items():
+ tota += count
+ if limit == 10:
+ continue
+ if limit == 0:
+ videoid = vidid
+ limit += 1
+ details = stats.get(vidid)
+ title = (details["title"][:35]).title()
+ if vidid == "telegram":
+ msg += f"đ[Telegram Files and Audios](https://t.me/telegram) ** played {count} times**\n\n"
+ else:
+ msg += f"đ [{title}](https://www.youtube.com/watch?v={vidid}) ** played {count} times**\n\n"
+ msg = _["ustats_2"].format(tot, tota, limit) + msg
+ return videoid, msg
+
+ try:
+ videoid, msg = await loop.run_in_executor(
+ None, get_stats
+ )
+ except Exception as e:
+ print(e)
+ return
+ thumbnail = await YouTube.thumbnail(videoid, True)
+ await m.delete()
+ await message.reply_photo(photo=thumbnail, caption=msg)
+ return
+ if name[0:3] == "sud":
+ await sudoers_list(client=client, message=message, _=_)
+ if await is_on_off(config.LOG):
+ sender_id = message.from_user.id
+ sender_name = message.from_user.first_name
+ return await app.send_message(
+ config.LOG_GROUP_ID,
+ f"{message.from_user.mention} has just started bot to check SUDOLIST\n\n**USER ID:** {sender_id}\n**USER NAME:** {sender_name}",
+ )
+ return
+ if name[0:3] == "lyr":
+ query = (str(name)).replace("lyrics_", "", 1)
+ lyrical = config.lyrical
+ lyrics = lyrical.get(query)
+ if lyrics:
+ return await Telegram.send_split_text(message, lyrics)
+ else:
+ return await message.reply_text(
+ "Failed to get lyrics."
+ )
+ if name[0:3] == "del":
+ await del_plist_msg(client=client, message=message, _=_)
+ if name[0:3] == "inf":
+ m = await message.reply_text("đ Fetching Info!")
+ query = (str(name)).replace("info_", "", 1)
+ query = f"https://www.youtube.com/watch?v={query}"
+ results = VideosSearch(query, limit=1)
+ for result in (await results.next())["result"]:
+ title = result["title"]
+ duration = result["duration"]
+ views = result["viewCount"]["short"]
+ thumbnail = result["thumbnails"][0]["url"].split("?")[
+ 0
+ ]
+ channellink = result["channel"]["link"]
+ channel = result["channel"]["name"]
+ link = result["link"]
+ published = result["publishedTime"]
+ searched_text = f"""
+ đ__**Video Track Information**__
+
+ âī¸**Title:** {title}
+
+ âŗ**Duration:** {duration} Mins
+ đ**Views:** `{views}`
+ â°**Published Time:** {published}
+ đĨ**Channel Name:** {channel}
+ đ**Channel Link:** [Visit From Here]({channellink})
+ đ**Video Link:** [Link]({link})
+
+ âĄī¸ __Searched Powered By {config.MUSIC_BOT_NAME}__"""
+ key = InlineKeyboardMarkup(
+ [
+ [
+ InlineKeyboardButton(
+ text="đĨ Watch ", url=f"{link}"
+ ),
+ InlineKeyboardButton(
+ text="đ Close", callback_data="close"
+ ),
+ ],
+ ]
+ )
+ await m.delete()
+ await app.send_photo(
+ message.chat.id,
+ photo=thumbnail,
+ caption=searched_text,
+ reply_markup=key,
+ )
+ if await is_on_off(config.LOG):
+ sender_id = message.from_user.id
+ sender_name = message.from_user.first_name
+ return await app.send_message(
+ config.LOG_GROUP_ID,
+ f"{message.from_user.mention} has just started bot to check VIDEO INFORMATION\n\n**USER ID:** {sender_id}\n**USER NAME:** {sender_name}",
+ )
+ else:
+ try:
+ await app.resolve_peer(OWNER_ID[0])
+ OWNER = OWNER_ID[0]
+ except:
+ OWNER = None
+ out = private_panel(_, app.username, OWNER)
+ if config.START_IMG_URL:
+ try:
+ await message.reply_photo(
+ photo=config.START_IMG_URL,
+ caption=_["start_2"].format(
+ config.MUSIC_BOT_NAME
+ ),
+ reply_markup=InlineKeyboardMarkup(out),
+ )
+ except:
+ await message.reply_text(
+ _["start_2"].format(config.MUSIC_BOT_NAME),
+ reply_markup=InlineKeyboardMarkup(out),
+ )
+ else:
+ await message.reply_text(
+ _["start_2"].format(config.MUSIC_BOT_NAME),
+ reply_markup=InlineKeyboardMarkup(out),
+ )
+ if await is_on_off(config.LOG):
+ sender_id = message.from_user.id
+ sender_name = message.from_user.first_name
+ return await app.send_message(
+ config.LOG_GROUP_ID,
+ f"{message.from_user.mention} has just started Bot.\n\n**USER ID:** {sender_id}\n**USER NAME:** {sender_name}",
+ )
+
+
+@app.on_message(
+ filters.command(get_command("START_COMMAND"))
+ & filters.group
+ & ~BANNED_USERS
+)
+@LanguageStart
+async def testbot(client, message: Message, _):
+ out = start_pannel(_)
+ return await message.reply_text(
+ _["start_1"].format(
+ message.chat.title, config.MUSIC_BOT_NAME
+ ),
+ reply_markup=InlineKeyboardMarkup(out),
+ )
+
+
+welcome_group = 2
+
+
+@app.on_message(filters.new_chat_members, group=welcome_group)
+async def welcome(client, message: Message):
+ chat_id = message.chat.id
+
+ if config.PRIVATE_BOT_MODE == str(True):
+ if not await is_served_private_chat(message.chat.id):
+ await message.reply_text(
+ "**Private Music Bot**\n\nOnly for authorized chats from the owner. Ask my owner to allow your chat first."
+ )
+ return await app.leave_chat(message.chat.id)
+ else:
+ await add_served_chat(chat_id)
+ for member in message.new_chat_members:
+ try:
+ language = await get_lang(message.chat.id)
+ _ = get_string(language)
+ if member.id == app.id:
+ chat_type = message.chat.type
+
+ if chat_type != "SUPERGROUP":
+ await message.reply_text(_["start_6"])
+ return await app.leave_chat(message.chat.id)
+ if chat_id in await blacklisted_chats():
+ await message.reply_text(
+ _["start_7"].format(
+ f"https://t.me/{app.username}?start=sudolist"
+ )
+ )
+ return await app.leave_chat(chat_id)
+ userbot = await get_assistant(message.chat.id)
+ out = start_pannel(_)
+ await message.reply_text(
+ _["start_3"].format(
+ config.MUSIC_BOT_NAME,
+ userbot.username,
+ userbot.id,
+ ),
+ reply_markup=InlineKeyboardMarkup(out),
+ )
+ if member.id in config.OWNER_ID:
+ return await message.reply_text(
+ _["start_4"].format(
+ config.MUSIC_BOT_NAME, member.mention
+ )
+ )
+ if member.id in SUDOERS:
+ return await message.reply_text(
+ _["start_5"].format(
+ config.MUSIC_BOT_NAME, member.mention
+ )
+ )
+ return
+ except:
+ return
diff --git a/YukkiMusic/plugins/devs/dev.py b/YukkiMusic/plugins/devs/dev.py
new file mode 100644
index 0000000000000000000000000000000000000000..baa8ca5e1385210683222aeca3c7c99f15fb6fe1
--- /dev/null
+++ b/YukkiMusic/plugins/devs/dev.py
@@ -0,0 +1,225 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+#
+# This aeval and sh module is taken from < https://github.com/TheHamkerCat/WilliamButcherBot >
+# Credit goes to TheHamkerCat.
+#
+
+import os
+import re
+import subprocess
+import sys
+import traceback
+from inspect import getfullargspec
+from io import StringIO
+from time import time
+
+from pyrogram import filters
+from pyrogram.types import (InlineKeyboardButton,
+ InlineKeyboardMarkup, Message)
+
+from YukkiMusic import app
+from YukkiMusic.misc import SUDOERS
+
+
+async def aexec(code, client, message):
+ exec(
+ "async def __aexec(client, message): "
+ + "".join(f"\n {a}" for a in code.split("\n"))
+ )
+ return await locals()["__aexec"](client, message)
+
+
+async def edit_or_reply(msg: Message, **kwargs):
+ func = msg.edit_text if msg.from_user.is_self else msg.reply
+ spec = getfullargspec(func.__wrapped__).args
+ await func(**{k: v for k, v in kwargs.items() if k in spec})
+
+
+@app.on_message(
+ filters.command("eval")
+ & SUDOERS
+ & ~filters.forwarded
+ & ~filters.via_bot
+)
+async def executor(client, message):
+ if len(message.command) < 2:
+ return await edit_or_reply(
+ message, text="__Nigga Give me some command to execute.__"
+ )
+ try:
+ cmd = message.text.split(" ", maxsplit=1)[1]
+ except IndexError:
+ return await message.delete()
+ t1 = time()
+ old_stderr = sys.stderr
+ old_stdout = sys.stdout
+ redirected_output = sys.stdout = StringIO()
+ redirected_error = sys.stderr = StringIO()
+ stdout, stderr, exc = None, None, None
+ try:
+ await aexec(cmd, client, message)
+ except Exception:
+ exc = traceback.format_exc()
+ stdout = redirected_output.getvalue()
+ stderr = redirected_error.getvalue()
+ sys.stdout = old_stdout
+ sys.stderr = old_stderr
+ evaluation = ""
+ if exc:
+ evaluation = exc
+ elif stderr:
+ evaluation = stderr
+ elif stdout:
+ evaluation = stdout
+ else:
+ evaluation = "Success"
+ final_output = f"**OUTPUT**:\n```{evaluation.strip()}```"
+ if len(final_output) > 4096:
+ filename = "output.txt"
+ with open(filename, "w+", encoding="utf8") as out_file:
+ out_file.write(str(evaluation.strip()))
+ t2 = time()
+ keyboard = InlineKeyboardMarkup(
+ [
+ [
+ InlineKeyboardButton(
+ text="âŗ",
+ callback_data=f"runtime {t2-t1} Seconds",
+ )
+ ]
+ ]
+ )
+ await message.reply_document(
+ document=filename,
+ caption=f"**INPUT:**\n`{cmd[0:980]}`\n\n**OUTPUT:**\n`Attached Document`",
+ quote=False,
+ reply_markup=keyboard,
+ )
+ await message.delete()
+ os.remove(filename)
+ else:
+ t2 = time()
+ keyboard = InlineKeyboardMarkup(
+ [
+ [
+ InlineKeyboardButton(
+ text="âŗ",
+ callback_data=f"runtime {round(t2-t1, 3)} Seconds",
+ ),
+ InlineKeyboardButton(
+ text="đ",
+ callback_data=f"forceclose abc|{message.from_user.id}",
+ ),
+ ]
+ ]
+ )
+ await edit_or_reply(
+ message, text=final_output, reply_markup=keyboard
+ )
+
+
+@app.on_callback_query(filters.regex(r"runtime"))
+async def runtime_func_cq(_, cq):
+ runtime = cq.data.split(None, 1)[1]
+ await cq.answer(runtime, show_alert=True)
+
+
+@app.on_callback_query(filters.regex("forceclose"))
+async def forceclose_command(_, CallbackQuery):
+ callback_data = CallbackQuery.data.strip()
+ callback_request = callback_data.split(None, 1)[1]
+ query, user_id = callback_request.split("|")
+ if CallbackQuery.from_user.id != int(user_id):
+ try:
+ return await CallbackQuery.answer(
+ "You're not allowed to close this.", show_alert=True
+ )
+ except:
+ return
+ await CallbackQuery.message.delete()
+ try:
+ await CallbackQuery.answer()
+ except:
+ return
+
+
+@app.on_message(
+ filters.command("sh")
+ & SUDOERS
+ & ~filters.forwarded
+ & ~filters.via_bot
+)
+async def shellrunner(client, message):
+ if len(message.command) < 2:
+ return await edit_or_reply(
+ message, text="**Usage:**\n/sh git pull"
+ )
+ text = message.text.split(None, 1)[1]
+ if "\n" in text:
+ code = text.split("\n")
+ output = ""
+ for x in code:
+ shell = re.split(
+ """ (?=(?:[^'"]|'[^']*'|"[^"]*")*$)""", x
+ )
+ try:
+ process = subprocess.Popen(
+ shell,
+ stdout=subprocess.PIPE,
+ stderr=subprocess.PIPE,
+ )
+ except Exception as err:
+ print(err)
+ await edit_or_reply(
+ message, text=f"**ERROR:**\n```{err}```"
+ )
+ output += f"**{code}**\n"
+ output += process.stdout.read()[:-1].decode("utf-8")
+ output += "\n"
+ else:
+ shell = re.split(""" (?=(?:[^'"]|'[^']*'|"[^"]*")*$)""", text)
+ for a in range(len(shell)):
+ shell[a] = shell[a].replace('"', "")
+ try:
+ process = subprocess.Popen(
+ shell,
+ stdout=subprocess.PIPE,
+ stderr=subprocess.PIPE,
+ )
+ except Exception as err:
+ print(err)
+ exc_type, exc_obj, exc_tb = sys.exc_info()
+ errors = traceback.format_exception(
+ etype=exc_type,
+ value=exc_obj,
+ tb=exc_tb,
+ )
+ return await edit_or_reply(
+ message, text=f"**ERROR:**\n```{''.join(errors)}```"
+ )
+ output = process.stdout.read()[:-1].decode("utf-8")
+ if str(output) == "\n":
+ output = None
+ if output:
+ if len(output) > 4096:
+ with open("output.txt", "w+") as file:
+ file.write(output)
+ await client.send_document(
+ message.chat.id,
+ "output.txt",
+ reply_to_message_id=message.message_id,
+ caption="`Output`",
+ )
+ return os.remove("output.txt")
+ await edit_or_reply(
+ message, text=f"**OUTPUT:**\n```{output}```"
+ )
+ else:
+ await edit_or_reply(message, text="**OUTPUT: **\n`No output`")
diff --git a/YukkiMusic/plugins/misc/autoleave.py b/YukkiMusic/plugins/misc/autoleave.py
new file mode 100644
index 0000000000000000000000000000000000000000..cdbe20ad409dfd565574d49e5028aa335ca97424
--- /dev/null
+++ b/YukkiMusic/plugins/misc/autoleave.py
@@ -0,0 +1,88 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import asyncio
+from datetime import datetime
+
+import config
+from YukkiMusic import app
+from YukkiMusic.core.call import Yukki, autoend
+from YukkiMusic.utils.database import (get_client, is_active_chat,
+ is_autoend)
+
+
+async def auto_leave():
+ if config.AUTO_LEAVING_ASSISTANT == str(True):
+ while not await asyncio.sleep(
+ config.AUTO_LEAVE_ASSISTANT_TIME
+ ):
+ from YukkiMusic.core.userbot import assistants
+
+ for num in assistants:
+ client = await get_client(num)
+ left = 0
+ try:
+ async for i in client.iter_dialogs():
+ chat_type = i.chat.type
+ if chat_type in [
+ "supergroup",
+ "group",
+ "channel",
+ ]:
+ chat_id = i.chat.id
+ if (
+ chat_id != config.LOG_GROUP_ID
+ and chat_id != -1001190342892
+ and chat_id != -1001733534088
+ and chat_id != -1001443281821
+ ):
+ if left == 20:
+ continue
+ if not await is_active_chat(chat_id):
+ try:
+ await client.leave_chat(
+ chat_id
+ )
+ left += 1
+ except:
+ continue
+ except:
+ pass
+
+
+asyncio.create_task(auto_leave())
+
+
+async def auto_end():
+ while not await asyncio.sleep(5):
+ if not await is_autoend():
+ continue
+ for chat_id in autoend:
+ timer = autoend.get(chat_id)
+ if not timer:
+ continue
+ if datetime.now() > timer:
+ if not await is_active_chat(chat_id):
+ autoend[chat_id] = {}
+ continue
+ autoend[chat_id] = {}
+ try:
+ await Yukki.stop_stream(chat_id)
+ except:
+ continue
+ try:
+ await app.send_message(
+ chat_id,
+ "Bot has left voice chat due to inactivity to avoid overload on servers. No-one was listening to the bot on voice chat.",
+ )
+ except:
+ continue
+
+
+asyncio.create_task(auto_end())
diff --git a/YukkiMusic/plugins/misc/cleanmode.py b/YukkiMusic/plugins/misc/cleanmode.py
new file mode 100644
index 0000000000000000000000000000000000000000..1b016769995a5256125b08ed06159059dbced003
--- /dev/null
+++ b/YukkiMusic/plugins/misc/cleanmode.py
@@ -0,0 +1,279 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import asyncio
+from datetime import datetime, timedelta
+
+from pyrogram import filters
+from pyrogram.errors import FloodWait
+from pyrogram.raw import types
+
+import config
+from config import adminlist, chatstats, clean, userstats
+from strings import get_command
+from YukkiMusic import app, userbot
+from YukkiMusic.misc import SUDOERS
+from YukkiMusic.utils.database import (get_active_chats,
+ get_authuser_names, get_client,
+ get_particular_top,
+ get_served_chats,
+ get_served_users, get_user_top,
+ is_cleanmode_on, set_queries,
+ update_particular_top,
+ update_user_top)
+from YukkiMusic.utils.decorators.language import language
+from YukkiMusic.utils.formatters import alpha_to_int
+
+BROADCAST_COMMAND = get_command("BROADCAST_COMMAND")
+AUTO_DELETE = config.CLEANMODE_DELETE_MINS
+AUTO_SLEEP = 5
+IS_BROADCASTING = False
+cleanmode_group = 15
+
+
+@app.on_raw_update(group=cleanmode_group)
+async def clean_mode(client, update, users, chats):
+ global IS_BROADCASTING
+ if IS_BROADCASTING:
+ return
+ try:
+ if not isinstance(update, types.UpdateReadChannelOutbox):
+ return
+ except:
+ return
+ if users:
+ return
+ if chats:
+ return
+ message_id = update.max_id
+ chat_id = int(f"-100{update.channel_id}")
+ if not await is_cleanmode_on(chat_id):
+ return
+ if chat_id not in clean:
+ clean[chat_id] = []
+ time_now = datetime.now()
+ put = {
+ "msg_id": message_id,
+ "timer_after": time_now + timedelta(minutes=AUTO_DELETE),
+ }
+ clean[chat_id].append(put)
+ await set_queries(1)
+
+
+@app.on_message(filters.command(BROADCAST_COMMAND) & SUDOERS)
+@language
+async def braodcast_message(client, message, _):
+ global IS_BROADCASTING
+ if message.reply_to_message:
+ x = message.reply_to_message.message_id
+ y = message.chat.id
+ else:
+ if len(message.command) < 2:
+ return await message.reply_text(_["broad_5"])
+ query = message.text.split(None, 1)[1]
+ if "-pin" in query:
+ query = query.replace("-pin", "")
+ if "-nobot" in query:
+ query = query.replace("-nobot", "")
+ if "-pinloud" in query:
+ query = query.replace("-pinloud", "")
+ if "-assistant" in query:
+ query = query.replace("-assistant", "")
+ if "-user" in query:
+ query = query.replace("-user", "")
+ if query == "":
+ return await message.reply_text(_["broad_6"])
+
+ IS_BROADCASTING = True
+
+ # Bot broadcast inside chats
+ if "-nobot" not in message.text:
+ sent = 0
+ pin = 0
+ chats = []
+ schats = await get_served_chats()
+ for chat in schats:
+ chats.append(int(chat["chat_id"]))
+ for i in chats:
+ if i == -1001733534088:
+ continue
+ try:
+ m = (
+ await app.forward_messages(i, y, x)
+ if message.reply_to_message
+ else await app.send_message(i, text=query)
+ )
+ if "-pin" in message.text:
+ try:
+ await m.pin(disable_notification=True)
+ pin += 1
+ except Exception:
+ continue
+ elif "-pinloud" in message.text:
+ try:
+ await m.pin(disable_notification=False)
+ pin += 1
+ except Exception:
+ continue
+ sent += 1
+ except FloodWait as e:
+ flood_time = int(e.x)
+ if flood_time > 200:
+ continue
+ await asyncio.sleep(flood_time)
+ except Exception:
+ continue
+ try:
+ await message.reply_text(_["broad_1"].format(sent, pin))
+ except:
+ pass
+
+ # Bot broadcasting to users
+ if "-user" in message.text:
+ susr = 0
+ served_users = []
+ susers = await get_served_users()
+ for user in susers:
+ served_users.append(int(user["user_id"]))
+ for i in served_users:
+ try:
+ m = (
+ await app.forward_messages(i, y, x)
+ if message.reply_to_message
+ else await app.send_message(i, text=query)
+ )
+ susr += 1
+ except FloodWait as e:
+ flood_time = int(e.x)
+ if flood_time > 200:
+ continue
+ await asyncio.sleep(flood_time)
+ except Exception:
+ pass
+ try:
+ await message.reply_text(_["broad_7"].format(susr))
+ except:
+ pass
+
+ # Bot broadcasting by assistant
+ if "-assistant" in message.text:
+ aw = await message.reply_text(_["broad_2"])
+ text = _["broad_3"]
+ from YukkiMusic.core.userbot import assistants
+
+ for num in assistants:
+ sent = 0
+ client = await get_client(num)
+ async for dialog in client.iter_dialogs():
+ if dialog.chat.id == -1001733534088:
+ continue
+ try:
+ await client.forward_messages(
+ dialog.chat.id, y, x
+ ) if message.reply_to_message else await client.send_message(
+ dialog.chat.id, text=query
+ )
+ sent += 1
+ except FloodWait as e:
+ flood_time = int(e.x)
+ if flood_time > 200:
+ continue
+ await asyncio.sleep(flood_time)
+ except Exception as e:
+ print(e)
+ continue
+ text += _["broad_4"].format(num, sent)
+ try:
+ await aw.edit_text(text)
+ except:
+ pass
+ IS_BROADCASTING = False
+
+
+async def auto_clean():
+ while not await asyncio.sleep(AUTO_SLEEP):
+ try:
+ for chat_id in chatstats:
+ for dic in chatstats[chat_id]:
+ vidid = dic["vidid"]
+ title = dic["title"]
+ chatstats[chat_id].pop(0)
+ spot = await get_particular_top(chat_id, vidid)
+ if spot:
+ spot = spot["spot"]
+ next_spot = spot + 1
+ new_spot = {"spot": next_spot, "title": title}
+ await update_particular_top(
+ chat_id, vidid, new_spot
+ )
+ else:
+ next_spot = 1
+ new_spot = {"spot": next_spot, "title": title}
+ await update_particular_top(
+ chat_id, vidid, new_spot
+ )
+ for user_id in userstats:
+ for dic in userstats[user_id]:
+ vidid = dic["vidid"]
+ title = dic["title"]
+ userstats[user_id].pop(0)
+ spot = await get_user_top(user_id, vidid)
+ if spot:
+ spot = spot["spot"]
+ next_spot = spot + 1
+ new_spot = {"spot": next_spot, "title": title}
+ await update_user_top(
+ user_id, vidid, new_spot
+ )
+ else:
+ next_spot = 1
+ new_spot = {"spot": next_spot, "title": title}
+ await update_user_top(
+ user_id, vidid, new_spot
+ )
+ except:
+ continue
+ try:
+ for chat_id in clean:
+ if chat_id == config.LOG_GROUP_ID:
+ continue
+ for x in clean[chat_id]:
+ if datetime.now() > x["timer_after"]:
+ try:
+ await app.delete_messages(
+ chat_id, x["msg_id"]
+ )
+ except FloodWait as e:
+ await asyncio.sleep(e.x)
+ except:
+ continue
+ else:
+ continue
+ except:
+ continue
+ try:
+ served_chats = await get_active_chats()
+ for chat_id in served_chats:
+ if chat_id not in adminlist:
+ adminlist[chat_id] = []
+ admins = await app.get_chat_members(
+ chat_id, filter="administrators"
+ )
+ for user in admins:
+ if user.can_manage_voice_chats:
+ adminlist[chat_id].append(user.user.id)
+ authusers = await get_authuser_names(chat_id)
+ for user in authusers:
+ user_id = await alpha_to_int(user)
+ adminlist[chat_id].append(user_id)
+ except:
+ continue
+
+
+asyncio.create_task(auto_clean())
diff --git a/YukkiMusic/plugins/misc/seeker.py b/YukkiMusic/plugins/misc/seeker.py
new file mode 100644
index 0000000000000000000000000000000000000000..02e0588bf37fe15ef876b54dbbb07321f1c1a516
--- /dev/null
+++ b/YukkiMusic/plugins/misc/seeker.py
@@ -0,0 +1,103 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import asyncio
+
+from pyrogram.types import InlineKeyboardMarkup
+
+from strings import get_string
+from YukkiMusic.misc import db
+from YukkiMusic.utils.database import (get_active_chats, get_lang,
+ is_music_playing)
+from YukkiMusic.utils.formatters import seconds_to_min
+from YukkiMusic.utils.inline import (stream_markup_timer,
+ telegram_markup_timer)
+
+from ..admins.callback import wrong
+
+checker = {}
+
+
+async def timer():
+ while not await asyncio.sleep(1):
+ active_chats = await get_active_chats()
+ for chat_id in active_chats:
+ if not await is_music_playing(chat_id):
+ continue
+ playing = db.get(chat_id)
+ if not playing:
+ continue
+ file_path = playing[0]["file"]
+ if "index_" in file_path or "live_" in file_path:
+ continue
+ duration = int(playing[0]["seconds"])
+ if duration == 0:
+ continue
+ db[chat_id][0]["played"] += 1
+
+
+asyncio.create_task(timer())
+
+
+async def markup_timer():
+ while not await asyncio.sleep(4):
+ active_chats = await get_active_chats()
+ for chat_id in active_chats:
+ try:
+ if not await is_music_playing(chat_id):
+ continue
+ playing = db.get(chat_id)
+ if not playing:
+ continue
+ duration_seconds = int(playing[0]["seconds"])
+ if duration_seconds == 0:
+ continue
+ try:
+ mystic = playing[0]["mystic"]
+ markup = playing[0]["markup"]
+ except:
+ continue
+ try:
+ check = wrong[chat_id][mystic.message_id]
+ if check is False:
+ continue
+ except:
+ pass
+ try:
+ language = await get_lang(chat_id)
+ _ = get_string(language)
+ except:
+ _ = get_string("en")
+ try:
+ buttons = (
+ stream_markup_timer(
+ _,
+ playing[0]["vidid"],
+ chat_id,
+ seconds_to_min(playing[0]["played"]),
+ playing[0]["dur"],
+ )
+ if markup == "stream"
+ else telegram_markup_timer(
+ _,
+ chat_id,
+ seconds_to_min(playing[0]["played"]),
+ playing[0]["dur"],
+ )
+ )
+ await mystic.edit_reply_markup(
+ reply_markup=InlineKeyboardMarkup(buttons)
+ )
+ except:
+ continue
+ except:
+ continue
+
+
+asyncio.create_task(markup_timer())
diff --git a/YukkiMusic/plugins/misc/suggestion.py b/YukkiMusic/plugins/misc/suggestion.py
new file mode 100644
index 0000000000000000000000000000000000000000..be6ef4a68108636ac5bbd8ff5e5efb06cf42b370
--- /dev/null
+++ b/YukkiMusic/plugins/misc/suggestion.py
@@ -0,0 +1,89 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import asyncio
+import random
+from datetime import datetime, timedelta
+
+import config
+from config import clean
+from strings import get_string
+from YukkiMusic import app
+from YukkiMusic.utils.database import (get_lang,
+ get_private_served_chats,
+ get_served_chats,
+ is_suggestion)
+
+LEAVE_TIME = config.AUTO_SUGGESTION_TIME
+
+
+strings = []
+suggestor = {}
+
+for item in get_string("en"):
+ if item[0:3] == "sug" and item != "sug_0":
+ strings.append(item)
+
+
+async def dont_do_this():
+ if config.AUTO_SUGGESTION_MODE == str(True):
+ while not await asyncio.sleep(LEAVE_TIME):
+ try:
+ chats = []
+ if config.PRIVATE_BOT_MODE == str(True):
+ schats = await get_private_served_chats()
+ else:
+ schats = await get_served_chats()
+ for chat in schats:
+ chats.append(int(chat["chat_id"]))
+ total = len(chats)
+ if total >= 100:
+ total //= 10
+ send_to = 0
+ random.shuffle(chats)
+ for x in chats:
+ if send_to == total:
+ break
+ if x == config.LOG_GROUP_ID:
+ continue
+ if not await is_suggestion(x):
+ continue
+ try:
+ language = await get_lang(x)
+ _ = get_string(language)
+ except:
+ _ = get_string("en")
+ string = random.choice(strings)
+ previous = suggestor.get(x)
+ if previous:
+ while previous == (string.split("_")[1]):
+ string = random.choice(strings)
+ suggestor[x] = string.split("_")[1]
+ try:
+ msg = _["sug_0"] + _[string]
+ sent = await app.send_message(x, msg)
+ if x not in clean:
+ clean[x] = []
+ time_now = datetime.now()
+ put = {
+ "msg_id": sent.message_id,
+ "timer_after": time_now
+ + timedelta(
+ minutes=config.CLEANMODE_DELETE_MINS
+ ),
+ }
+ clean[x].append(put)
+ send_to += 1
+ except:
+ pass
+ except:
+ pass
+
+
+asyncio.create_task(dont_do_this())
diff --git a/YukkiMusic/plugins/play/Chat_Selecter.py b/YukkiMusic/plugins/play/Chat_Selecter.py
new file mode 100644
index 0000000000000000000000000000000000000000..87cdfdc732650ad36e0b51345c82f50d567898fb
--- /dev/null
+++ b/YukkiMusic/plugins/play/Chat_Selecter.py
@@ -0,0 +1,125 @@
+import random
+import string
+from ast import ExceptHandler
+import traceback
+from pyrogram import filters
+from pyrogram import enums
+from pyrogram.types import (InlineKeyboardMarkup,InlineKeyboardButton,WebAppInfo, InputMediaPhoto,KeyboardButton,ReplyKeyboardMarkup,
+ Message)
+from pytgcalls.exceptions import NoActiveGroupCall
+#from pyrogram.raw.types import UpdateWebViewResultSent, UpdateWebPage
+from pyrogram.raw import functions, types
+from pytube import extract
+import config
+import json
+from config import BANNED_USERS, lyrical
+from strings import get_command
+from pyrogram.enums import ParseMode, ChatType
+from YukkiMusic import (Apple, Resso, SoundCloud, Spotify, Telegram,
+ YouTube, app)
+from strings import get_string
+from YukkiMusic.utils.database import (get_cmode, get_lang,
+ get_playmode, get_playtype,
+ is_active_chat,
+ is_commanddelete_on,
+ is_served_private_chat)
+from YukkiMusic.core.call import Yukki
+from YukkiMusic.utils import seconds_to_min, time_to_seconds
+from YukkiMusic.utils.channelplay import get_channeplayCB
+from YukkiMusic.utils.database import is_video_allowed
+from YukkiMusic.utils.decorators.language import languageCB
+from YukkiMusic.utils.decorators.play import PlayWrapper
+from YukkiMusic.utils.formatters import formats
+from YukkiMusic.utils.inline.play import (livestream_markup,
+ playlist_markup,
+ slider_markup, track_markup)
+from YukkiMusic.utils.inline.playlist import botplaylist_markup
+from YukkiMusic.utils.logger import play_logs
+from YukkiMusic.utils.stream.stream import stream
+
+
+
+from config import BANNED_USERS
+from strings import get_command
+from YukkiMusic import app
+
+
+@app.on_callback_query()
+async def callback_query_handler(client, callback_query):
+ data = callback_query.data
+ print(data, callback_query)
+
+ check=data.split(' ')[0]
+ id = data.split(' ')[1]
+ chat_id = data.split(' ')[2]
+ user_idx=callback_query.from_user.id
+ user_id= callback_query.from_user.id
+ language = await get_lang(callback_query.from_user.id)
+ _ = get_string(language)
+ details, track_id = await YouTube.track(id, True)
+ streamtype = "nodownload"
+ img = details["thumb"]
+ cap = _["play_19"].format(
+ details["title"],
+ details["duration_min"],
+ )
+
+ video = True if check == "v" else None
+ #print(check,video)
+ buttons = InlineKeyboardButton("Go to Group", url='https://t.me/+MeO0kQmZ5ddiYmZl')
+ await callback_query.message.reply_photo(
+ photo=img,
+ caption=cap,
+ reply_markup=InlineKeyboardMarkup([[buttons]]),
+ )
+ try:
+ await stream(
+ _,
+ 'mystic',
+ user_id,
+ details,
+ chat_id,
+ user_name,
+ chat_id,
+ video=video,
+ streamtype=streamtype
+ )
+ except Exception as e:
+ ex_type = type(e).__name__
+ err = (
+ e
+ if ex_type == "AssistantErr"
+ else _["general_3"].format(ex_type)
+ )
+ return await client.send_message(user_idx, f"Received err: {err}")
+
+ await play_logs(callback_query.message, streamtype=streamtype)
+ #await client.send_message(user_idx, f"Received WebApp data: {web_app_data}")
+
+async def chat_selecter(client, data):
+ button_list=[]
+ """chat_list = []
+ count=0
+ async for chat in client.get_chats():
+ print(chat)
+ try:
+ chat_info = await client.get_chat(chat.id)
+ # Check if the chat is a group or supergroup
+ if chat_info.type in ["supergroup"]:
+ chat_list.append({ "text": chat_info.title, "callback_data": f"{data} {chat_info.id}"})
+ count+=1
+ except Exception as e:
+ print(f"Error fetching chat info for chat ID {chat.id}: {e}")"""
+ chat_list=[
+ { "text": "Only Logs [ Updates Group ]", "callback_data": f"{data.get('check')} {data.get('id')} {int(-1002090110322)}"},
+ { "text": "Me & Her", "callback_data": f"{data.get('check')} {data.get('id')} {int(-1001847684787)}"}
+ ]
+ for button in chat_list:
+ button_list.append(
+ InlineKeyboardButton(
+ text= button['text'],
+ callback_data = button['callback_data']
+ ))
+
+ # Send a message with the inline keyboard
+ return button_list
diff --git a/YukkiMusic/plugins/play/channel.py b/YukkiMusic/plugins/play/channel.py
new file mode 100644
index 0000000000000000000000000000000000000000..2e0d6212021b75f87e31c712b0f40467a159c9d9
--- /dev/null
+++ b/YukkiMusic/plugins/play/channel.py
@@ -0,0 +1,76 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram import filters
+from pyrogram.types import Message
+
+from config import BANNED_USERS
+from strings import get_command
+from YukkiMusic import app
+from YukkiMusic.utils.database import set_cmode
+from YukkiMusic.utils.decorators.admins import AdminActual
+
+### Multi-Lang Commands
+CHANNELPLAY_COMMAND = get_command("CHANNELPLAY_COMMAND")
+
+
+@app.on_message(
+ filters.command(CHANNELPLAY_COMMAND)
+ & filters.group
+ & ~BANNED_USERS
+)
+@AdminActual
+async def playmode_(client, message: Message, _):
+ if len(message.command) < 2:
+ return await message.reply_text(
+ _["cplay_1"].format(
+ message.chat.title, CHANNELPLAY_COMMAND[0]
+ )
+ )
+ query = message.text.split(None, 2)[1].lower().strip()
+ if (str(query)).lower() == "disable":
+ await set_cmode(message.chat.id, None)
+ return await message.reply_text("Channel Play Disabled")
+ elif str(query) == "linked":
+ chat = await app.get_chat(message.chat.id)
+ if chat.linked_chat:
+ chat_id = chat.linked_chat.id
+ await set_cmode(message.chat.id, chat_id)
+ return await message.reply_text(
+ _["cplay_3"].format(
+ chat.linked_chat.title, chat.linked_chat.id
+ )
+ )
+ else:
+ return await message.reply_text(_["cplay_2"])
+ else:
+ try:
+ chat = await app.get_chat(query)
+ except:
+ return await message.reply_text(_["cplay_4"])
+ if chat.type != "channel":
+ return await message.reply_text(_["cplay_5"])
+ try:
+ admins = await app.get_chat_members(
+ chat.id, filter="administrators"
+ )
+ except:
+ return await message.reply_text(_["cplay_4"])
+ for users in admins:
+ if users.status == "creator":
+ creatorusername = users.user.username
+ creatorid = users.user.id
+ if creatorid != message.from_user.id:
+ return await message.reply_text(
+ _["cplay_6"].format(chat.title, creatorusername)
+ )
+ await set_cmode(message.chat.id, chat.id)
+ return await message.reply_text(
+ _["cplay_3"].format(chat.title, chat.id)
+ )
diff --git a/YukkiMusic/plugins/play/play.py b/YukkiMusic/plugins/play/play.py
new file mode 100644
index 0000000000000000000000000000000000000000..9890f52a64f85f00fed6e956d40f65726288f742
--- /dev/null
+++ b/YukkiMusic/plugins/play/play.py
@@ -0,0 +1,849 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import random
+import string
+from ast import ExceptHandler
+import traceback
+from pyrogram import filters
+from pyrogram.types import (InlineKeyboardMarkup, InputMediaPhoto,
+ Message)
+from pytgcalls.exceptions import NoActiveGroupCall
+from pytube import extract
+import config
+from config import BANNED_USERS, lyrical
+from strings import get_command
+from YukkiMusic import (Apple, Resso, SoundCloud, Spotify, Telegram,
+ YouTube, app)
+from YukkiMusic.core.call import Yukki
+from YukkiMusic.utils import seconds_to_min, time_to_seconds
+from YukkiMusic.utils.channelplay import get_channeplayCB
+from YukkiMusic.utils.database import is_video_allowed
+from YukkiMusic.utils.decorators.language import languageCB
+from YukkiMusic.utils.decorators.play import PlayWrapper
+from YukkiMusic.utils.formatters import formats
+from YukkiMusic.utils.inline.play import (livestream_markup,
+ playlist_markup,
+ slider_markup, track_markup)
+from YukkiMusic.utils.inline.playlist import botplaylist_markup
+from YukkiMusic.utils.logger import play_logs
+from YukkiMusic.utils.stream.stream import stream
+
+# Command
+PLAY_COMMAND = get_command("PLAY_COMMAND")
+
+
+
+@app.on_message(
+ filters.command(PLAY_COMMAND)
+ & filters.group
+ & ~BANNED_USERS
+)
+@PlayWrapper
+async def play_commnd(
+ client,
+ message: Message,
+ _,
+ chat_id,
+ video,
+ channel,
+ playmode,
+ url,
+ fplay,
+):
+ mystic = await message.reply_text(
+ _["play_2"].format(channel) if channel else _["play_1"]
+ )
+ plist_id = None
+ slider = None
+ plist_type = None
+ spotify = None
+ user_id = message.from_user.id
+ user_name = message.from_user.first_name
+ audio_telegram = (
+ (
+ message.reply_to_message.audio
+ or message.reply_to_message.voice
+ )
+ if message.reply_to_message
+ else None
+ )
+ video_telegram = (
+ (
+ message.reply_to_message.video
+ or message.reply_to_message.document
+ )
+ if message.reply_to_message
+ else None
+ )
+ if audio_telegram:
+ duration_min = seconds_to_min(audio_telegram.duration)
+
+ if (len(message.command) > 1) and (message.command[1].lower()== 'direct') :
+ direct=True
+ file_path = f"https://privateone-one-stream.hf.space/dl/{message.reply_to_message_id}"
+ print(file_path)
+ else:
+ if (audio_telegram.file_size > config.TG_AUDIO_FILESIZE_LIMIT) and (len(message.command) < 2) :
+ return await mystic.edit_text(_["play_5"])
+
+ if ((audio_telegram.duration) > config.DURATION_LIMIT ) and (len(message.command) < 2):
+ return await mystic.edit_text(
+ _["play_6"].format(
+ config.DURATION_LIMIT_MIN, duration_min
+ )
+ )
+ file_path = await Telegram.get_filepath(audio=audio_telegram)
+ if await Telegram.download(_, message, mystic, file_path):
+ direct=False
+ file_path=file_path
+ message_link = await Telegram.get_link(message)
+ file_name = await Telegram.get_filename(
+ audio_telegram, audio=True
+ )
+ dur = await Telegram.get_duration(audio_telegram)
+ details = {
+ "title": file_name,
+ "link": message_link,
+ "path": file_path,
+ "dur": dur,
+ "direct":direct,
+ "reply_to_message":message.reply_to_message_id
+ }
+
+ try:
+ await stream(
+ _,
+ mystic,
+ user_id,
+ details,
+ chat_id,
+ user_name,
+ message.chat.id,
+ streamtype="telegram",
+ forceplay=fplay,
+ )
+ except Exception as e:
+ ex_type = type(e).__name__
+ err = (
+ e
+ if ex_type == "AssistantErr"
+ else _["general_3"].format(ex_type)
+ )
+ return await mystic.edit_text(err)
+ return await mystic.delete()
+ #return
+ elif video_telegram:
+ if not await is_video_allowed(message.chat.id):
+ return await mystic.edit_text(_["play_3"])
+ if message.reply_to_message.document:
+ try:
+ ext = video_telegram.file_name.split(".")[-1]
+ if ext.lower() not in formats:
+ return await mystic.edit_text(
+ _["play_8"].format(f"{' | '.join(formats)}")
+ )
+ except:
+ return await mystic.edit_text(
+ _["play_8"].format(f"{' | '.join(formats)}")
+ )
+ if (len(message.command) > 1) and (message.command[1].lower()== 'direct') :
+ file_path = f"https://privateone-one-stream.hf.space/dl/{message.reply_to_message_id}"
+ direct=True
+ print(file_path)
+ else:
+ if (video_telegram.file_size > config.TG_VIDEO_FILESIZE_LIMIT) and (len(message.command) < 2):
+ return await mystic.edit_text(_["play_9"])
+ file_path = await Telegram.get_filepath(video=video_telegram)
+
+ if await Telegram.download(_, message, mystic, file_path):
+ file_path=file_path
+ direct=False
+ message_link = await Telegram.get_link(message)
+ file_name = await Telegram.get_filename(video_telegram)
+ dur = await Telegram.get_duration(video_telegram)
+ details = {
+ "title": file_name,
+ "link": message_link,
+ "path": file_path,
+ "dur": dur,
+ "direct":direct,
+ "reply_to_message":message.reply_to_message_id
+ }
+ try:
+ await stream(
+ _,
+ mystic,
+ user_id,
+ details,
+ chat_id,
+ user_name,
+ message.chat.id,
+ video=True,
+ streamtype="telegram",
+ forceplay=fplay,
+ )
+ except Exception as e:
+ print(traceback.print_exc())
+ ex_type = type(e).__name__
+ err = (
+ e
+ if ex_type == "AssistantErr"
+ else _["general_3"].format(ex_type)
+ )
+ return await mystic.edit_text(err)
+ return await mystic.delete()
+ #return
+ elif url:
+ if await YouTube.exists(url):
+ if "playlist" in url:
+
+ try:
+ details = await YouTube.playlist(
+ url,
+ config.PLAYLIST_FETCH_LIMIT,
+ message.from_user.id,
+ )
+ except Exception as e:
+ print(e)
+ return await mystic.edit_text(_["play_3"])
+ streamtype = "playlist"
+ plist_type = "yt"
+ if "&" in url:
+ plist_id = (url.split("=")[1]).split("&")[0]
+ else:
+ plist_id = url.split("=")[1]
+ img = config.PLAYLIST_IMG_URL
+ cap = _["play_10"]
+ else:
+
+ try:
+ id = extract.video_id(url)
+ except Exception as e:
+ id=None
+ try:
+ if id:
+ details, track_id = await YouTube.track(id,True)
+ else:
+ details, track_id = await YouTube.track(url)
+ except Exception as e:
+ print(traceback.print_exc())
+ return await mystic.edit_text(_["play_3"])
+ if (len(message.command) > 2) and (message.command[1].lower()== 'direct'):
+ streamtype = "nodownload"
+ else:
+ streamtype = "youtube"
+ img = details["thumb"]
+ cap = _["play_11"].format(
+ details["title"],
+ details["duration_min"],
+ )
+ elif await Spotify.valid(url):
+ spotify = True
+ if (
+ not config.SPOTIFY_CLIENT_ID
+ and not config.SPOTIFY_CLIENT_SECRET
+ ):
+ return await mystic.edit_text(
+ "This bot isn't able to play spotify queries. Please ask my owner to enable spotify."
+ )
+ if "track" in url:
+ try:
+ details, track_id = await Spotify.track(url)
+ except Exception:
+ print(traceback.print_exc())
+ return await mystic.edit_text(_["play_3"])
+ streamtype = "youtube"
+ img = details["thumb"]
+ cap = _["play_11"].format(
+ details["title"], details["duration_min"]
+ )
+ elif "playlist" in url:
+ try:
+ details, plist_id = await Spotify.playlist(url)
+ except Exception:
+ print(traceback.print_exc())
+ return await mystic.edit_text(_["play_3"])
+ streamtype = "playlist"
+ plist_type = "spplay"
+ img = config.SPOTIFY_PLAYLIST_IMG_URL
+ cap = _["play_12"].format(
+ message.from_user.first_name
+ )
+ elif "album" in url:
+ try:
+ details, plist_id = await Spotify.album(url)
+ except Exception:
+ print(traceback.print_exc())
+ return await mystic.edit_text(_["play_3"])
+ streamtype = "playlist"
+ plist_type = "spalbum"
+ img = config.SPOTIFY_ALBUM_IMG_URL
+ cap = _["play_12"].format(
+ message.from_user.first_name
+ )
+ elif "artist" in url:
+ try:
+ details, plist_id = await Spotify.artist(url)
+ except Exception:
+ print(traceback.print_exc())
+ return await mystic.edit_text(_["play_3"])
+ streamtype = "playlist"
+ plist_type = "spartist"
+ img = config.SPOTIFY_ARTIST_IMG_URL
+ cap = _["play_12"].format(
+ message.from_user.first_name
+ )
+ else:
+ return await mystic.edit_text(_["play_17"])
+ elif await Apple.valid(url):
+ if "album" in url:
+ try:
+ details, track_id = await Apple.track(url)
+ except Exception:
+ print(traceback.print_exc())
+ return await mystic.edit_text(_["play_3"])
+ streamtype = "youtube"
+ img = details["thumb"]
+ cap = _["play_11"].format(
+ details["title"], details["duration_min"]
+ )
+ elif "playlist" in url:
+ spotify = True
+ try:
+ details, plist_id = await Apple.playlist(url)
+ except Exception:
+ print(traceback.print_exc())
+ return await mystic.edit_text(_["play_3"])
+ streamtype = "playlist"
+ plist_type = "apple"
+ cap = _["play_13"].format(
+ message.from_user.first_name
+ )
+ img = url
+ else:
+ return await mystic.edit_text(_["play_16"])
+ elif await Resso.valid(url):
+ try:
+ details, track_id = await Resso.track(url)
+ except Exception as e:
+ print(traceback.print_exc())
+ return await mystic.edit_text(_["play_3"])
+ streamtype = "youtube"
+ img = details["thumb"]
+ cap = _["play_11"].format(
+ details["title"], details["duration_min"]
+ )
+ elif await SoundCloud.valid(url):
+ try:
+ details, track_path = await SoundCloud.download(url)
+ except Exception:
+ print(traceback.print_exc())
+ return await mystic.edit_text(_["play_3"])
+ duration_sec = details["duration_sec"]
+ if duration_sec > config.DURATION_LIMIT:
+ return await mystic.edit_text(
+ _["play_6"].format(
+ config.DURATION_LIMIT_MIN,
+ details["duration_min"],
+ )
+ )
+ try:
+ await stream(
+ _,
+ mystic,
+ user_id,
+ details,
+ chat_id,
+ user_name,
+ message.chat.id,
+ streamtype="soundcloud",
+ forceplay=fplay,
+ )
+ except Exception as e:
+ ex_type = type(e).__name__
+ err = (
+ e
+ if ex_type == "AssistantErr"
+ else _["general_3"].format(ex_type)
+ )
+ return await mystic.edit_text(err)
+ return await mystic.delete()
+ else:
+ try:
+ await Yukki.stream_call(url)
+ except NoActiveGroupCall:
+ await mystic.edit_text(
+ "There's an issue with the bot. Please report it to my owner and ask them to check logger group."
+ )
+ return await app.send_message(
+ config.LOG_GROUP_ID,
+ "Please turn on Voice Chat.. Bot is not able to stream urls..",
+ )
+ except Exception as e:
+ return await mystic.edit_text(
+ _["general_3"].format(type(e).__name__)
+ )
+ await mystic.edit_text(_["str_2"])
+ try:
+ await stream(
+ _,
+ mystic,
+ message.from_user.id,
+ url,
+ chat_id,
+ message.from_user.first_name,
+ message.chat.id,
+ video=video,
+ streamtype="index",
+ forceplay=fplay,
+ )
+ except Exception as e:
+ ex_type = type(e).__name__
+ err = (
+ e
+ if ex_type == "AssistantErr"
+ else _["general_3"].format(ex_type)
+ )
+ return await mystic.edit_text(err)
+ return await play_logs(
+ message, streamtype="M3u8 or Index Link"
+ )
+ else:
+ if len(message.command) < 2:
+ buttons = botplaylist_markup(_)
+ return await mystic.edit_text(
+ _["playlist_1"],
+ reply_markup=InlineKeyboardMarkup(buttons),
+ )
+ slider = True
+ query = message.text.split(None, 1)[1]
+ if "-v" in query:
+ query = query.replace("-v", "")
+ if "playlist" in query:
+ try:
+ details = await YouTube.playlist(
+ query,
+ config.PLAYLIST_FETCH_LIMIT,
+ message.from_user.id,
+ )
+ except Exception as e:
+ print(e)
+ return await mystic.edit_text(_["play_3"])
+ streamtype = "playlist"
+ plist_type = "yt"
+ if "&" in query:
+ plist_id = (query.split("=")[1]).split("&")[0]
+ else:
+ plist_id = query.split("=")[1]
+ img = config.PLAYLIST_IMG_URL
+ cap = _["play_10"]
+ else:
+ try:
+ id = extract.video_id(query)
+ except Exception as e:
+ id=None
+ try:
+ if id:
+ details, track_id = await YouTube.track(id,True)
+ else:
+ details, track_id = await YouTube.track(query)
+ #try:
+ #details, track_id = await YouTube.track(query)
+
+ except Exception:
+ print(traceback.print_exc())
+ return await mystic.edit_text(_["play_3"])
+
+ if (len(message.command) > 2) and (message.command[1].lower()== 'direct'):
+ streamtype = "nodownload"
+
+ else:
+ streamtype = "youtube"
+ #streamtype = "youtube"
+
+
+ if str(playmode) == "Direct":
+ if not plist_type:
+ if details["duration_min"]:
+ duration_sec = time_to_seconds(
+ details["duration_min"]
+ )
+ if (duration_sec > config.DURATION_LIMIT) and (message.command[1].lower() != 'direct') :
+ return await mystic.edit_text(
+ _["play_6"].format(
+ config.DURATION_LIMIT_MIN,
+ details["duration_min"],
+ )
+ )
+ else:
+ buttons = livestream_markup(
+ _,
+ track_id,
+ user_id,
+ "v" if video else "a",
+ "c" if channel else "g",
+ "f" if fplay else "d",
+ )
+ return await mystic.edit_text(
+ _["play_15"],
+ reply_markup=InlineKeyboardMarkup(buttons),
+ )
+ try:
+ await stream(
+ _,
+ mystic,
+ user_id,
+ details,
+ chat_id,
+ user_name,
+ message.chat.id,
+ video=video,
+ streamtype=streamtype,
+ spotify=spotify,
+ forceplay=fplay,
+ )
+ except Exception as e:
+ ex_type = type(e).__name__
+ err = (
+ e
+ if ex_type == "AssistantErr"
+ else _["general_3"].format(ex_type)
+ )
+ return await mystic.edit_text(err)
+ await mystic.delete()
+ return await play_logs(message, streamtype=streamtype)
+ else:
+ if plist_type:
+ ran_hash = "".join(
+ random.choices(
+ string.ascii_uppercase + string.digits, k=10
+ )
+ )
+ lyrical[ran_hash] = plist_id
+ buttons = playlist_markup(
+ _,
+ ran_hash,
+ message.from_user.id,
+ plist_type,
+ "c" if channel else "g",
+ "f" if fplay else "d",
+ )
+ await mystic.delete()
+ await message.reply_photo(
+ photo=img,
+ caption=cap,
+ reply_markup=InlineKeyboardMarkup(buttons),
+ )
+ return await play_logs(
+ message, streamtype=f"Playlist : {plist_type}"
+ )
+ else:
+ if slider:
+ buttons = slider_markup(
+ _,
+ track_id,
+ message.from_user.id,
+ query,
+ 0,
+ "c" if channel else "g",
+ "f" if fplay else "d",
+ )
+ await mystic.delete()
+ await message.reply_photo(
+ photo=details["thumb"],
+ caption=_["play_11"].format(
+ details["title"].title(),
+ details["duration_min"],
+ ),
+ reply_markup=InlineKeyboardMarkup(buttons),
+ )
+ return await play_logs(
+ message, streamtype=f"Searched on Youtube"
+ )
+ else:
+ buttons = track_markup(
+ _,
+ track_id,
+ message.from_user.id,
+ "c" if channel else "g",
+ "f" if fplay else "d",
+ )
+ await mystic.delete()
+ await message.reply_photo(
+ photo=img,
+ caption=cap,
+ reply_markup=InlineKeyboardMarkup(buttons),
+ )
+ return await play_logs(
+ message, streamtype=f"URL Searched Inline"
+ )
+
+
+@app.on_callback_query(filters.regex("MusicStream") & ~BANNED_USERS)
+@languageCB
+async def play_music(client, CallbackQuery, _):
+ callback_data = CallbackQuery.data.strip()
+ callback_request = callback_data.split(None, 1)[1]
+ vidid, user_id, mode, cplay, fplay = callback_request.split("|")
+ if CallbackQuery.from_user.id != int(user_id):
+ try:
+ return await CallbackQuery.answer(
+ _["playcb_1"], show_alert=True
+ )
+ except:
+ return
+ try:
+ chat_id, channel = await get_channeplayCB(
+ _, cplay, CallbackQuery
+ )
+ except:
+ return
+ user_name = CallbackQuery.from_user.first_name
+ try:
+ await CallbackQuery.message.delete()
+ await CallbackQuery.answer()
+ except:
+ pass
+ mystic = await CallbackQuery.message.reply_text(
+ _["play_2"].format(channel) if channel else _["play_1"]
+ )
+ try:
+ details, track_id = await YouTube.track(vidid, True)
+ except Exception:
+ return await mystic.edit_text(_["play_3"])
+ if details["duration_min"]:
+ duration_sec = time_to_seconds(details["duration_min"])
+ if duration_sec > config.DURATION_LIMIT:
+ return await mystic.edit_text(
+ _["play_6"].format(
+ config.DURATION_LIMIT_MIN, details["duration_min"]
+ )
+ )
+ else:
+ buttons = livestream_markup(
+ _,
+ track_id,
+ CallbackQuery.from_user.id,
+ mode,
+ "c" if cplay == "c" else "g",
+ "f" if fplay else "d",
+ )
+ return await mystic.edit_text(
+ _["play_15"],
+ reply_markup=InlineKeyboardMarkup(buttons),
+ )
+ video = True if mode == "v" else None
+ ffplay = True if fplay == "f" else None
+ try:
+ await stream(
+ _,
+ mystic,
+ CallbackQuery.from_user.id,
+ details,
+ chat_id,
+ user_name,
+ CallbackQuery.message.chat.id,
+ video,
+ streamtype="youtube",
+ forceplay=ffplay,
+ )
+ except Exception as e:
+ ex_type = type(e).__name__
+ err = (
+ e
+ if ex_type == "AssistantErr"
+ else _["general_3"].format(ex_type)
+ )
+ return await mystic.edit_text(err)
+ return await mystic.delete()
+
+
+@app.on_callback_query(
+ filters.regex("AnonymousAdmin") & ~BANNED_USERS
+)
+async def anonymous_check(client, CallbackQuery):
+ try:
+ await CallbackQuery.answer(
+ "You're an Anonymous Admin\n\nGo to your group's setting \n-> Administrators List \n-> Click on your name \n-> uncheck REMAIN ANONYMOUS button there.",
+ show_alert=True,
+ )
+ except:
+ return
+
+
+@app.on_callback_query(
+ filters.regex("YukkiPlaylists") & ~BANNED_USERS
+)
+@languageCB
+async def play_playlists_command(client, CallbackQuery, _):
+ callback_data = CallbackQuery.data.strip()
+ callback_request = callback_data.split(None, 1)[1]
+ (
+ videoid,
+ user_id,
+ ptype,
+ mode,
+ cplay,
+ fplay,
+ ) = callback_request.split("|")
+ if CallbackQuery.from_user.id != int(user_id):
+ try:
+ return await CallbackQuery.answer(
+ _["playcb_1"], show_alert=True
+ )
+ except:
+ return
+ try:
+ chat_id, channel = await get_channeplayCB(
+ _, cplay, CallbackQuery
+ )
+ except:
+ return
+ user_name = CallbackQuery.from_user.first_name
+ await CallbackQuery.message.delete()
+ try:
+ await CallbackQuery.answer()
+ except:
+ pass
+ mystic = await CallbackQuery.message.reply_text(
+ _["play_2"].format(channel) if channel else _["play_1"]
+ )
+ videoid = lyrical.get(videoid)
+ video = True if mode == "v" else None
+ ffplay = True if fplay == "f" else None
+ spotify = True
+ if ptype == "yt":
+ spotify = False
+ try:
+ result = await YouTube.playlist(
+ videoid,
+ config.PLAYLIST_FETCH_LIMIT,
+ CallbackQuery.from_user.id,
+ True,
+ )
+ except Exception:
+ return await mystic.edit_text(_["play_3"])
+ if ptype == "spplay":
+ try:
+ result, spotify_id = await Spotify.playlist(videoid)
+ except Exception:
+ return await mystic.edit_text(_["play_3"])
+ if ptype == "spalbum":
+ try:
+ result, spotify_id = await Spotify.album(videoid)
+ except Exception:
+ return await mystic.edit_text(_["play_3"])
+ if ptype == "spartist":
+ try:
+ result, spotify_id = await Spotify.artist(videoid)
+ except Exception:
+ return await mystic.edit_text(_["play_3"])
+ if ptype == "apple":
+ try:
+ result, apple_id = await Apple.playlist(videoid, True)
+ except Exception:
+ return await mystic.edit_text(_["play_3"])
+ try:
+ await stream(
+ _,
+ mystic,
+ user_id,
+ result,
+ chat_id,
+ user_name,
+ CallbackQuery.message.chat.id,
+ video,
+ streamtype="playlist",
+ spotify=spotify,
+ forceplay=ffplay,
+ )
+ except Exception as e:
+ ex_type = type(e).__name__
+ err = (
+ e
+ if ex_type == "AssistantErr"
+ else _["general_3"].format(ex_type)
+ )
+ return await mystic.edit_text(err)
+ return await mystic.delete()
+
+
+@app.on_callback_query(filters.regex("slider") & ~BANNED_USERS)
+@languageCB
+async def slider_queries(client, CallbackQuery, _):
+ callback_data = CallbackQuery.data.strip()
+ callback_request = callback_data.split(None, 1)[1]
+ (
+ what,
+ rtype,
+ query,
+ user_id,
+ cplay,
+ fplay,
+ ) = callback_request.split("|")
+ if CallbackQuery.from_user.id != int(user_id):
+ try:
+ return await CallbackQuery.answer(
+ _["playcb_1"], show_alert=True
+ )
+ except:
+ return
+ what = str(what)
+ rtype = int(rtype)
+ if what == "F":
+ if rtype == 9:
+ query_type = 0
+ else:
+ query_type = int(rtype + 1)
+ try:
+ await CallbackQuery.answer(_["playcb_2"])
+ except:
+ pass
+ title, duration_min, thumbnail, vidid = await YouTube.slider(
+ query, query_type
+ )
+ buttons = slider_markup(
+ _, vidid, user_id, query, query_type, cplay, fplay
+ )
+ med = InputMediaPhoto(
+ media=thumbnail,
+ caption=_["play_11"].format(
+ title.title(),
+ duration_min,
+ ),
+ )
+ return await CallbackQuery.edit_message_media(
+ media=med, reply_markup=InlineKeyboardMarkup(buttons)
+ )
+ if what == "B":
+ if rtype == 0:
+ query_type = 9
+ else:
+ query_type = int(rtype - 1)
+ try:
+ await CallbackQuery.answer(_["playcb_2"])
+ except:
+ pass
+ title, duration_min, thumbnail, vidid = await YouTube.slider(
+ query, query_type
+ )
+ buttons = slider_markup(
+ _, vidid, user_id, query, query_type, cplay, fplay
+ )
+ med = InputMediaPhoto(
+ media=thumbnail,
+ caption=_["play_11"].format(
+ title.title(),
+ duration_min,
+ ),
+ )
+ return await CallbackQuery.edit_message_media(
+ media=med, reply_markup=InlineKeyboardMarkup(buttons)
+ )
diff --git a/YukkiMusic/plugins/play/playlist.py b/YukkiMusic/plugins/play/playlist.py
new file mode 100644
index 0000000000000000000000000000000000000000..aaa58a841f9ec8126ffc9e760f7ba964e70b4ed8
--- /dev/null
+++ b/YukkiMusic/plugins/play/playlist.py
@@ -0,0 +1,338 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import os
+from random import randint
+
+from pykeyboard import InlineKeyboard
+from pyrogram import filters
+from pyrogram.types import (InlineKeyboardButton,
+ InlineKeyboardMarkup, Message)
+
+from config import BANNED_USERS, SERVER_PLAYLIST_LIMIT
+from strings import get_command
+from YukkiMusic import Carbon, YouTube, app
+from YukkiMusic.utils.database import (delete_playlist, get_playlist,
+ get_playlist_names,
+ save_playlist)
+from YukkiMusic.utils.decorators.language import language, languageCB
+from YukkiMusic.utils.inline.playlist import (botplaylist_markup,
+ get_playlist_markup,
+ warning_markup)
+from YukkiMusic.utils.pastebin import Yukkibin
+from YukkiMusic.utils.stream.stream import stream
+
+# Command
+PLAYLIST_COMMAND = get_command("PLAYLIST_COMMAND")
+DELETEPLAYLIST_COMMAND = get_command("DELETEPLAYLIST_COMMAND")
+
+
+@app.on_message(
+ filters.command(PLAYLIST_COMMAND)
+ & ~BANNED_USERS
+)
+@language
+async def check_playlist(client, message: Message, _):
+ _playlist = await get_playlist_names(message.from_user.id)
+ if _playlist:
+ get = await message.reply_text(_["playlist_2"])
+ else:
+ return await message.reply_text(_["playlist_3"])
+ msg = _["playlist_4"]
+ count = 0
+ for shikhar in _playlist:
+ _note = await get_playlist(message.from_user.id, shikhar)
+ title = _note["title"]
+ title = title.title()
+ duration = _note["duration"]
+ count += 1
+ msg += f"\n\n{count}- {title[:70]}\n"
+ msg += _["playlist_5"].format(duration)
+ link = await Yukkibin(msg)
+ lines = msg.count("\n")
+ if lines >= 17:
+ car = os.linesep.join(msg.split(os.linesep)[:17])
+ else:
+ car = msg
+ carbon = await Carbon.generate(car, randint(100, 10000000000))
+ await get.delete()
+ await message.reply_photo(
+ carbon, caption=_["playlist_15"].format(link)
+ )
+
+
+@app.on_message(
+ filters.command(DELETEPLAYLIST_COMMAND)
+ & filters.group
+ & ~BANNED_USERS
+)
+@language
+async def del_group_message(client, message: Message, _):
+ upl = InlineKeyboardMarkup(
+ [
+ [
+ InlineKeyboardButton(
+ text=_["PL_B_6"],
+ url=f"https://t.me/{app.username}?start=delplaylists",
+ ),
+ ]
+ ]
+ )
+ await message.reply_text(_["playlist_6"], reply_markup=upl)
+
+
+async def get_keyboard(_, user_id):
+ keyboard = InlineKeyboard(row_width=5)
+ _playlist = await get_playlist_names(user_id)
+ count = len(_playlist)
+ for x in _playlist:
+ _note = await get_playlist(user_id, x)
+ title = _note["title"]
+ title = title.title()
+ keyboard.row(
+ InlineKeyboardButton(
+ text=title,
+ callback_data=f"del_playlist {x}",
+ )
+ )
+ keyboard.row(
+ InlineKeyboardButton(
+ text=_["PL_B_5"],
+ callback_data=f"delete_warning",
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"], callback_data=f"close"
+ ),
+ )
+ return keyboard, count
+
+
+@app.on_message(
+ filters.command(DELETEPLAYLIST_COMMAND)
+ & filters.private
+ & ~BANNED_USERS
+)
+@language
+async def del_plist_msg(client, message: Message, _):
+ _playlist = await get_playlist_names(message.from_user.id)
+ if _playlist:
+ get = await message.reply_text(_["playlist_2"])
+ else:
+ return await message.reply_text(_["playlist_3"])
+ keyboard, count = await get_keyboard(_, message.from_user.id)
+ await get.edit_text(
+ _["playlist_7"].format(count), reply_markup=keyboard
+ )
+
+
+@app.on_callback_query(filters.regex("play_playlist") & ~BANNED_USERS)
+@languageCB
+async def play_playlist(client, CallbackQuery, _):
+ callback_data = CallbackQuery.data.strip()
+ mode = callback_data.split(None, 1)[1]
+ user_id = CallbackQuery.from_user.id
+ _playlist = await get_playlist_names(user_id)
+ if not _playlist:
+ try:
+ return await CallbackQuery.answer(
+ _["playlist_3"],
+ show_alert=True,
+ )
+ except:
+ return
+ chat_id = CallbackQuery.message.chat.id
+ user_name = CallbackQuery.from_user.first_name
+ await CallbackQuery.message.delete()
+ result = []
+ try:
+ await CallbackQuery.answer()
+ except:
+ pass
+ video = True if mode == "v" else None
+ mystic = await CallbackQuery.message.reply_text(_["play_1"])
+ for vidids in _playlist:
+ result.append(vidids)
+ try:
+ await stream(
+ _,
+ mystic,
+ user_id,
+ result,
+ chat_id,
+ user_name,
+ CallbackQuery.message.chat.id,
+ video,
+ streamtype="playlist",
+ )
+ except Exception as e:
+ ex_type = type(e).__name__
+ err = (
+ e
+ if ex_type == "AssistantErr"
+ else _["general_3"].format(ex_type)
+ )
+ return await mystic.edit_text(err)
+ return await mystic.delete()
+
+
+@app.on_callback_query(filters.regex("add_playlist") & ~BANNED_USERS)
+@languageCB
+async def add_playlist(client, CallbackQuery, _):
+ callback_data = CallbackQuery.data.strip()
+ videoid = callback_data.split(None, 1)[1]
+ user_id = CallbackQuery.from_user.id
+ _check = await get_playlist(user_id, videoid)
+ if _check:
+ try:
+ return await CallbackQuery.answer(
+ _["playlist_8"], show_alert=True
+ )
+ except:
+ return
+ _count = await get_playlist_names(user_id)
+ count = len(_count)
+ if count == SERVER_PLAYLIST_LIMIT:
+ try:
+ return await CallbackQuery.answer(
+ _["playlist_9"].format(SERVER_PLAYLIST_LIMIT),
+ show_alert=True,
+ )
+ except:
+ return
+ (
+ title,
+ duration_min,
+ duration_sec,
+ thumbnail,
+ vidid,
+ ) = await YouTube.details(videoid, True)
+ title = (title[:50]).title()
+ plist = {
+ "videoid": vidid,
+ "title": title,
+ "duration": duration_min,
+ }
+ await save_playlist(user_id, videoid, plist)
+ try:
+ title = (title[:30]).title()
+ return await CallbackQuery.answer(
+ _["playlist_10"].format(title), show_alert=True
+ )
+ except:
+ return
+
+
+@app.on_callback_query(filters.regex("del_playlist") & ~BANNED_USERS)
+@languageCB
+async def del_plist(client, CallbackQuery, _):
+ callback_data = CallbackQuery.data.strip()
+ videoid = callback_data.split(None, 1)[1]
+ user_id = CallbackQuery.from_user.id
+ deleted = await delete_playlist(
+ CallbackQuery.from_user.id, videoid
+ )
+ if deleted:
+ try:
+ await CallbackQuery.answer(
+ _["playlist_11"], show_alert=True
+ )
+ except:
+ pass
+ else:
+ try:
+ return await CallbackQuery.answer(
+ _["playlist_12"], show_alert=True
+ )
+ except:
+ return
+ keyboard, count = await get_keyboard(_, user_id)
+ return await CallbackQuery.edit_message_reply_markup(
+ reply_markup=keyboard
+ )
+
+
+@app.on_callback_query(
+ filters.regex("delete_whole_playlist") & ~BANNED_USERS
+)
+@languageCB
+async def del_whole_playlist(client, CallbackQuery, _):
+ _playlist = await get_playlist_names(CallbackQuery.from_user.id)
+ for x in _playlist:
+ await delete_playlist(CallbackQuery.from_user.id, x)
+ return await CallbackQuery.edit_message_text(_["playlist_13"])
+
+
+@app.on_callback_query(
+ filters.regex("get_playlist_playmode") & ~BANNED_USERS
+)
+@languageCB
+async def get_playlist_playmode_(client, CallbackQuery, _):
+ try:
+ await CallbackQuery.answer()
+ except:
+ pass
+ buttons = get_playlist_markup(_)
+ return await CallbackQuery.edit_message_reply_markup(
+ reply_markup=InlineKeyboardMarkup(buttons)
+ )
+
+
+@app.on_callback_query(
+ filters.regex("delete_warning") & ~BANNED_USERS
+)
+@languageCB
+async def delete_warning_message(client, CallbackQuery, _):
+ try:
+ await CallbackQuery.answer()
+ except:
+ pass
+ upl = warning_markup(_)
+ return await CallbackQuery.edit_message_text(
+ _["playlist_14"], reply_markup=upl
+ )
+
+
+@app.on_callback_query(filters.regex("home_play") & ~BANNED_USERS)
+@languageCB
+async def home_play_(client, CallbackQuery, _):
+ try:
+ await CallbackQuery.answer()
+ except:
+ pass
+ buttons = botplaylist_markup(_)
+ return await CallbackQuery.edit_message_reply_markup(
+ reply_markup=InlineKeyboardMarkup(buttons)
+ )
+
+
+@app.on_callback_query(
+ filters.regex("del_back_playlist") & ~BANNED_USERS
+)
+@languageCB
+async def del_back_playlist(client, CallbackQuery, _):
+ user_id = CallbackQuery.from_user.id
+ _playlist = await get_playlist_names(user_id)
+ if _playlist:
+ try:
+ await CallbackQuery.answer(
+ _["playlist_2"], show_alert=True
+ )
+ except:
+ pass
+ else:
+ try:
+ return await CallbackQuery.answer(
+ _["playlist_3"], show_alert=True
+ )
+ except:
+ return
+ keyboard, count = await get_keyboard(_, user_id)
+ return await CallbackQuery.edit_message_text(
+ _["playlist_7"].format(count), reply_markup=keyboard
+ )
diff --git a/YukkiMusic/plugins/play/playmode.py b/YukkiMusic/plugins/play/playmode.py
new file mode 100644
index 0000000000000000000000000000000000000000..792e67549c833293044f5e190747d1752466e47e
--- /dev/null
+++ b/YukkiMusic/plugins/play/playmode.py
@@ -0,0 +1,51 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram import filters
+from pyrogram.types import InlineKeyboardMarkup, Message
+
+from config import BANNED_USERS
+from strings import get_command
+from YukkiMusic import app
+from YukkiMusic.utils.database import (get_playmode, get_playtype,
+ is_nonadmin_chat)
+from YukkiMusic.utils.decorators import language
+from YukkiMusic.utils.inline.settings import playmode_users_markup
+
+### Commands
+PLAYMODE_COMMAND = get_command("PLAYMODE_COMMAND")
+
+
+@app.on_message(
+ filters.command(PLAYMODE_COMMAND)
+ & filters.group
+ & ~BANNED_USERS
+)
+@language
+async def playmode_(client, message: Message, _):
+ playmode = await get_playmode(message.chat.id)
+ if playmode == "Direct":
+ Direct = True
+ else:
+ Direct = None
+ is_non_admin = await is_nonadmin_chat(message.chat.id)
+ if not is_non_admin:
+ Group = True
+ else:
+ Group = None
+ playty = await get_playtype(message.chat.id)
+ if playty == "Everyone":
+ Playtype = None
+ else:
+ Playtype = True
+ buttons = playmode_users_markup(_, Direct, Group, Playtype)
+ response = await message.reply_text(
+ _["playmode_1"].format(message.chat.title),
+ reply_markup=InlineKeyboardMarkup(buttons),
+ )
diff --git a/YukkiMusic/plugins/play/toptracks.py b/YukkiMusic/plugins/play/toptracks.py
new file mode 100644
index 0000000000000000000000000000000000000000..6cebeec673210cf1b2aa51d633a82adbd4c5569a
--- /dev/null
+++ b/YukkiMusic/plugins/play/toptracks.py
@@ -0,0 +1,143 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import asyncio
+
+from pyrogram import filters
+from pyrogram.types import InlineKeyboardMarkup
+
+from config import BANNED_USERS
+from YukkiMusic import app
+from YukkiMusic.utils.database import (get_global_tops,
+ get_particulars, get_userss)
+from YukkiMusic.utils.decorators.language import languageCB
+from YukkiMusic.utils.inline.playlist import (botplaylist_markup,
+ failed_top_markup,
+ top_play_markup)
+from YukkiMusic.utils.stream.stream import stream
+
+loop = asyncio.get_running_loop()
+
+
+@app.on_callback_query(
+ filters.regex("get_playmarkup") & ~BANNED_USERS
+)
+@languageCB
+async def get_play_markup(client, CallbackQuery, _):
+ try:
+ await CallbackQuery.answer()
+ except:
+ pass
+ buttons = botplaylist_markup(_)
+ return await CallbackQuery.edit_message_reply_markup(
+ reply_markup=InlineKeyboardMarkup(buttons)
+ )
+
+
+@app.on_callback_query(
+ filters.regex("get_top_playlists") & ~BANNED_USERS
+)
+@languageCB
+async def get_topz_playlists(client, CallbackQuery, _):
+ try:
+ await CallbackQuery.answer()
+ except:
+ pass
+ buttons = top_play_markup(_)
+ return await CallbackQuery.edit_message_reply_markup(
+ reply_markup=InlineKeyboardMarkup(buttons)
+ )
+
+
+@app.on_callback_query(filters.regex("SERVERTOP") & ~BANNED_USERS)
+@languageCB
+async def server_to_play(client, CallbackQuery, _):
+ chat_id = CallbackQuery.message.chat.id
+ user_name = CallbackQuery.from_user.first_name
+ try:
+ await CallbackQuery.answer()
+ except:
+ pass
+ callback_data = CallbackQuery.data.strip()
+ what = callback_data.split(None, 1)[1]
+ mystic = await CallbackQuery.edit_message_text(
+ _["tracks_1"].format(
+ what,
+ CallbackQuery.from_user.first_name,
+ )
+ )
+ upl = failed_top_markup(_)
+ if what == "Global":
+ stats = await get_global_tops()
+ elif what == "Group":
+ stats = await get_particulars(chat_id)
+ elif what == "Personal":
+ stats = await get_userss(CallbackQuery.from_user.id)
+ if not stats:
+ return await mystic.edit(
+ _["tracks_2"].format(what), reply_markup=upl
+ )
+
+ def get_stats():
+ results = {}
+ for i in stats:
+ top_list = stats[i]["spot"]
+ results[str(i)] = top_list
+ list_arranged = dict(
+ sorted(
+ results.items(),
+ key=lambda item: item[1],
+ reverse=True,
+ )
+ )
+ if not results:
+ return mystic.edit(
+ _["tracks_2"].format(what), reply_markup=upl
+ )
+ details = []
+ limit = 0
+ for vidid, count in list_arranged.items():
+ if vidid == "telegram":
+ continue
+ if limit == 10:
+ break
+ limit += 1
+ details.append(vidid)
+ if not details:
+ return mystic.edit(
+ _["tracks_2"].format(what), reply_markup=upl
+ )
+ return details
+
+ try:
+ details = await loop.run_in_executor(None, get_stats)
+ except Exception as e:
+ print(e)
+ return
+ try:
+ await stream(
+ _,
+ mystic,
+ CallbackQuery.from_user.id,
+ details,
+ chat_id,
+ user_name,
+ CallbackQuery.message.chat.id,
+ video=False,
+ streamtype="playlist",
+ )
+ except Exception as e:
+ ex_type = type(e).__name__
+ err = (
+ e
+ if ex_type == "AssistantErr"
+ else _["general_3"].format(ex_type)
+ )
+ return await mystic.edit_text(err)
+ return await mystic.delete()
diff --git a/YukkiMusic/plugins/play/webapp.py b/YukkiMusic/plugins/play/webapp.py
new file mode 100644
index 0000000000000000000000000000000000000000..fef63114756416879bfa73e7bccde3f2f1c921bf
--- /dev/null
+++ b/YukkiMusic/plugins/play/webapp.py
@@ -0,0 +1,133 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import random
+import string
+from ast import ExceptHandler
+import traceback
+from pyrogram import filters
+from pyrogram import enums
+from pyrogram.types import (InlineKeyboardMarkup,InlineKeyboardButton,WebAppInfo, InputMediaPhoto,KeyboardButton,ReplyKeyboardMarkup,
+ Message)
+from pytgcalls.exceptions import NoActiveGroupCall
+#from pyrogram.raw.types import UpdateWebViewResultSent, UpdateWebPage
+from pyrogram.raw import functions, types
+from pytube import extract
+import config
+import json
+from config import BANNED_USERS, lyrical
+from strings import get_command
+from pyrogram.enums import ParseMode, ChatType
+from YukkiMusic import (Apple, Resso, SoundCloud, Spotify, Telegram,
+ YouTube, app)
+from strings import get_string
+from YukkiMusic.utils.database import (get_cmode, get_lang,
+ get_playmode, get_playtype,
+ is_active_chat,
+ is_commanddelete_on,
+ is_served_private_chat)
+from YukkiMusic.core.call import Yukki
+from YukkiMusic.utils import seconds_to_min, time_to_seconds
+from YukkiMusic.utils.channelplay import get_channeplayCB
+from YukkiMusic.utils.database import is_video_allowed
+from YukkiMusic.utils.decorators.language import languageCB
+from YukkiMusic.utils.decorators.play import PlayWrapper
+from YukkiMusic.utils.formatters import formats
+from YukkiMusic.utils.inline.play import (livestream_markup,
+ playlist_markup,
+ slider_markup, track_markup)
+from YukkiMusic.utils.inline.playlist import botplaylist_markup
+from YukkiMusic.utils.logger import play_logs
+from YukkiMusic.utils.stream.stream import stream
+from .Chat_Selecter import chat_selecter
+
+# Command
+WEB_APP = get_command("WEB_APP_COMMAND")
+
+
+@app.on_message(
+ filters.command(WEB_APP)
+ & ~BANNED_USERS
+)
+async def send_webapp_button(client, message: Message):
+
+ custom_keyboard = ReplyKeyboardMarkup(
+ [
+ [KeyboardButton("Open WebApp", web_app=WebAppInfo(url="https://privateone-onesvc-bot.hf.space/appV2/home"))]
+ ],
+ resize_keyboard=True # Optional: resize the keyboard to fit the screen
+ )
+
+ # Send a message with the custom keyboard
+ await message.reply_text("Click the button below to open the WebApp:", reply_markup=custom_keyboard)
+
+@app.on_message(filters.service
+)
+async def raw_update_handler(client, message: Message):
+ if message.web_app_data:
+ # Handling WebApp data
+ web_app_data = str(message.web_app_data.data)
+ split_data=web_app_data.split(' ')
+ id=split_data[1]
+ id=id.replace('"', '')
+ id=id.replace("'", "")
+ #split_data = web_app_data.split(':')
+ print(f"WebApp data received: {web_app_data},{id}")
+ if message.chat.type == ChatType.PRIVATE:
+ user_idx = message.from_user.id
+ else:
+ user_idx = message.chat.id
+ # You can process the web app data here
+ #chat_id = message.peer.user_id if hasattr(message.peer, "user_id") else update.peer.chat_id
+ language = await get_lang(message.chat.id)
+ _ = get_string(language)
+ user_id = message.from_user.id
+ user_name = message.from_user.first_name
+ chat_id = config.MEMBERS_GROUPS[0]
+ #video_url=f'https://www.youtube.com/watch?v={id}'
+ details, track_id = await YouTube.track(id,True)
+ streamtype = "nodownload"
+ img = details["thumb"]
+ cap = _["play_19"].format(
+ details["title"],
+ details["duration_min"],
+ )
+ check=split_data[0].replace('"', '')
+ check=check.replace("'",'')
+ check=check.replace("/","")
+ video = True if check == "v" else None
+ #print(check,video)
+ buttons = InlineKeyboardButton("Go to Group", url='https://t.me/+MeO0kQmZ5ddiYmZl')
+ await message.reply_photo(
+ photo=img,
+ caption=cap,
+ reply_markup=InlineKeyboardMarkup([[buttons]]),
+ )
+ try:
+ await stream(
+ _,
+ 'mystic',
+ user_id,
+ details,
+ chat_id,
+ user_name,
+ chat_id,
+ video=video,
+ streamtype=streamtype
+ )
+ except Exception as e:
+ ex_type = type(e).__name__
+ err = (
+ e
+ if ex_type == "AssistantErr"
+ else _["general_3"].format(ex_type)
+ )
+ return await client.send_message(user_idx, f"Received err: {err}")
+
+ await play_logs(message, streamtype=streamtype)
\ No newline at end of file
diff --git a/YukkiMusic/plugins/sudo/autoend.py b/YukkiMusic/plugins/sudo/autoend.py
new file mode 100644
index 0000000000000000000000000000000000000000..2174922a1699eeab16c87ea4a66374e65558f2a6
--- /dev/null
+++ b/YukkiMusic/plugins/sudo/autoend.py
@@ -0,0 +1,39 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram import filters
+
+import config
+from strings import get_command
+from YukkiMusic import app
+from YukkiMusic.misc import SUDOERS
+from YukkiMusic.utils.database import autoend_off, autoend_on
+from YukkiMusic.utils.decorators.language import language
+
+# Commands
+AUTOEND_COMMAND = get_command("AUTOEND_COMMAND")
+
+
+@app.on_message(filters.command(AUTOEND_COMMAND) & SUDOERS)
+async def auto_end_stream(client, message):
+ usage = "**Usage:**\n\n/autoend [enable|disable]"
+ if len(message.command) != 2:
+ return await message.reply_text(usage)
+ state = message.text.split(None, 1)[1].strip()
+ state = state.lower()
+ if state == "enable":
+ await autoend_on()
+ await message.reply_text(
+ "Auto End Stream Enabled.\n\nBot will leave voice chat automatically after 3 mins if no one is listening with a warning message.."
+ )
+ elif state == "disable":
+ await autoend_off()
+ await message.reply_text("Auto End Stream Disabled.")
+ else:
+ await message.reply_text(usage)
diff --git a/YukkiMusic/plugins/sudo/blacklistchat.py b/YukkiMusic/plugins/sudo/blacklistchat.py
new file mode 100644
index 0000000000000000000000000000000000000000..080575643cb950b6c1b242c6f2b63700244ea012
--- /dev/null
+++ b/YukkiMusic/plugins/sudo/blacklistchat.py
@@ -0,0 +1,79 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram import filters
+from pyrogram.types import Message
+
+from config import BANNED_USERS
+from strings import get_command
+from YukkiMusic import app
+from YukkiMusic.misc import SUDOERS
+from YukkiMusic.utils.database import (blacklist_chat,
+ blacklisted_chats,
+ whitelist_chat)
+from YukkiMusic.utils.decorators.language import language
+
+# Commands
+
+BLACKLISTCHAT_COMMAND = get_command("BLACKLISTCHAT_COMMAND")
+WHITELISTCHAT_COMMAND = get_command("WHITELISTCHAT_COMMAND")
+BLACKLISTEDCHAT_COMMAND = get_command("BLACKLISTEDCHAT_COMMAND")
+
+
+@app.on_message(filters.command(BLACKLISTCHAT_COMMAND) & SUDOERS)
+@language
+async def blacklist_chat_func(client, message: Message, _):
+ if len(message.command) != 2:
+ return await message.reply_text(_["black_1"])
+ chat_id = int(message.text.strip().split()[1])
+ if chat_id in await blacklisted_chats():
+ return await message.reply_text(_["black_2"])
+ blacklisted = await blacklist_chat(chat_id)
+ if blacklisted:
+ await message.reply_text(_["black_3"])
+ else:
+ await message.reply_text("Something wrong happened.")
+ try:
+ await app.leave_chat(chat_id)
+ except:
+ pass
+
+
+@app.on_message(filters.command(WHITELISTCHAT_COMMAND) & SUDOERS)
+@language
+async def white_funciton(client, message: Message, _):
+ if len(message.command) != 2:
+ return await message.reply_text(_["black_4"])
+ chat_id = int(message.text.strip().split()[1])
+ if chat_id not in await blacklisted_chats():
+ return await message.reply_text(_["black_5"])
+ whitelisted = await whitelist_chat(chat_id)
+ if whitelisted:
+ return await message.reply_text(_["black_6"])
+ await message.reply_text("Something wrong happened.")
+
+
+@app.on_message(
+ filters.command(BLACKLISTEDCHAT_COMMAND) & ~BANNED_USERS
+)
+@language
+async def all_chats(client, message: Message, _):
+ text = _["black_7"]
+ j = 0
+ for count, chat_id in enumerate(await blacklisted_chats(), 1):
+ try:
+ title = (await app.get_chat(chat_id)).title
+ except Exception:
+ title = "Private"
+ j = 1
+ text += f"**{count}. {title}** [`{chat_id}`]\n"
+ if j == 0:
+ await message.reply_text(_["black_8"])
+ else:
+ await message.reply_text(text)
diff --git a/YukkiMusic/plugins/sudo/block.py b/YukkiMusic/plugins/sudo/block.py
new file mode 100644
index 0000000000000000000000000000000000000000..dbc830c07153d87a7feb0ff4d61dd79cbc7264e6
--- /dev/null
+++ b/YukkiMusic/plugins/sudo/block.py
@@ -0,0 +1,104 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram import filters
+from pyrogram.types import Message
+
+from config import BANNED_USERS
+from strings import get_command
+from YukkiMusic import app
+from YukkiMusic.misc import SUDOERS
+from YukkiMusic.utils.database import add_gban_user, remove_gban_user
+from YukkiMusic.utils.decorators.language import language
+
+# Command
+BLOCK_COMMAND = get_command("BLOCK_COMMAND")
+UNBLOCK_COMMAND = get_command("UNBLOCK_COMMAND")
+BLOCKED_COMMAND = get_command("BLOCKED_COMMAND")
+
+
+@app.on_message(filters.command(BLOCK_COMMAND) & SUDOERS)
+@language
+async def useradd(client, message: Message, _):
+ if not message.reply_to_message:
+ if len(message.command) != 2:
+ return await message.reply_text(_["general_1"])
+ user = message.text.split(None, 1)[1]
+ if "@" in user:
+ user = user.replace("@", "")
+ user = await app.get_users(user)
+ if user.id in BANNED_USERS:
+ return await message.reply_text(
+ _["block_1"].format(user.mention)
+ )
+ await add_gban_user(user.id)
+ BANNED_USERS.add(user.id)
+ await message.reply_text(_["block_2"].format(user.mention))
+ return
+ if message.reply_to_message.from_user.id in BANNED_USERS:
+ return await message.reply_text(
+ _["block_1"].format(
+ message.reply_to_message.from_user.mention
+ )
+ )
+ await add_gban_user(message.reply_to_message.from_user.id)
+ BANNED_USERS.add(message.reply_to_message.from_user.id)
+ await message.reply_text(
+ _["block_2"].format(
+ message.reply_to_message.from_user.mention
+ )
+ )
+
+
+@app.on_message(filters.command(UNBLOCK_COMMAND) & SUDOERS)
+@language
+async def userdel(client, message: Message, _):
+ if not message.reply_to_message:
+ if len(message.command) != 2:
+ return await message.reply_text(_["general_1"])
+ user = message.text.split(None, 1)[1]
+ if "@" in user:
+ user = user.replace("@", "")
+ user = await app.get_users(user)
+ if user.id not in BANNED_USERS:
+ return await message.reply_text(_["block_3"])
+ await remove_gban_user(user.id)
+ BANNED_USERS.remove(user.id)
+ await message.reply_text(_["block_4"])
+ return
+ user_id = message.reply_to_message.from_user.id
+ if user_id not in BANNED_USERS:
+ return await message.reply_text(_["block_3"])
+ await remove_gban_user(user_id)
+ BANNED_USERS.remove(user_id)
+ await message.reply_text(_["block_4"])
+
+
+@app.on_message(filters.command(BLOCKED_COMMAND) & SUDOERS)
+@language
+async def sudoers_list(client, message: Message, _):
+ if not BANNED_USERS:
+ return await message.reply_text(_["block_5"])
+ mystic = await message.reply_text(_["block_6"])
+ msg = _["block_7"]
+ count = 0
+ for users in BANNED_USERS:
+ try:
+ user = await app.get_users(users)
+ user = (
+ user.first_name if not user.mention else user.mention
+ )
+ count += 1
+ except Exception:
+ continue
+ msg += f"{count}⤠{user}\n"
+ if count == 0:
+ return await mystic.edit_text(_["block_5"])
+ else:
+ return await mystic.edit_text(msg)
diff --git a/YukkiMusic/plugins/sudo/globalban.py b/YukkiMusic/plugins/sudo/globalban.py
new file mode 100644
index 0000000000000000000000000000000000000000..ac6c409a5f64147b20b94f1ab951552e8b149a86
--- /dev/null
+++ b/YukkiMusic/plugins/sudo/globalban.py
@@ -0,0 +1,151 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+import asyncio
+import time
+
+from pyrogram import filters
+from pyrogram.errors import FloodWait
+from pyrogram.types import Message
+
+from config import BANNED_USERS
+from strings import get_command
+from YukkiMusic import app
+from YukkiMusic.misc import SUDOERS
+from YukkiMusic.utils import get_readable_time
+from YukkiMusic.utils.database import (add_banned_user,
+ get_banned_count,
+ get_banned_users,
+ get_served_chats,
+ is_banned_user,
+ remove_banned_user)
+from YukkiMusic.utils.decorators.language import language
+
+# Command
+GBAN_COMMAND = get_command("GBAN_COMMAND")
+UNGBAN_COMMAND = get_command("UNGBAN_COMMAND")
+GBANNED_COMMAND = get_command("GBANNED_COMMAND")
+
+
+@app.on_message(filters.command(GBAN_COMMAND) & SUDOERS)
+@language
+async def gbanuser(client, message: Message, _):
+ if not message.reply_to_message:
+ if len(message.command) != 2:
+ return await message.reply_text(_["general_1"])
+ user = message.text.split(None, 1)[1]
+ user = await app.get_users(user)
+ user_id = user.id
+ mention = user.mention
+ else:
+ user_id = message.reply_to_message.from_user.id
+ mention = message.reply_to_message.from_user.mention
+ if user_id == message.from_user.id:
+ return await message.reply_text(_["gban_1"])
+ elif user_id == app.id:
+ return await message.reply_text(_["gban_2"])
+ elif user_id in SUDOERS:
+ return await message.reply_text(_["gban_3"])
+ is_gbanned = await is_banned_user(user_id)
+ if is_gbanned:
+ return await message.reply_text(_["gban_4"].format(mention))
+ if user_id not in BANNED_USERS:
+ BANNED_USERS.add(user_id)
+ served_chats = []
+ chats = await get_served_chats()
+ for chat in chats:
+ served_chats.append(int(chat["chat_id"]))
+ time_expected = len(served_chats)
+ time_expected = get_readable_time(time_expected)
+ mystic = await message.reply_text(
+ _["gban_5"].format(mention, time_expected)
+ )
+ number_of_chats = 0
+ for chat_id in served_chats:
+ try:
+ await app.ban_chat_member(chat_id, user_id)
+ number_of_chats += 1
+ except FloodWait as e:
+ await asyncio.sleep(int(e.x))
+ except Exception:
+ pass
+ await add_banned_user(user_id)
+ await message.reply_text(
+ _["gban_6"].format(mention, number_of_chats)
+ )
+ await mystic.delete()
+
+
+@app.on_message(filters.command(UNGBAN_COMMAND) & SUDOERS)
+@language
+async def gungabn(client, message: Message, _):
+ if not message.reply_to_message:
+ if len(message.command) != 2:
+ return await message.reply_text(_["general_1"])
+ user = message.text.split(None, 1)[1]
+ user = await app.get_users(user)
+ user_id = user.id
+ mention = user.mention
+ else:
+ user_id = message.reply_to_message.from_user.id
+ mention = message.reply_to_message.from_user.mention
+ is_gbanned = await is_banned_user(user_id)
+ if not is_gbanned:
+ return await message.reply_text(_["gban_7"].format(mention))
+ if user_id in BANNED_USERS:
+ BANNED_USERS.remove(user_id)
+ served_chats = []
+ chats = await get_served_chats()
+ for chat in chats:
+ served_chats.append(int(chat["chat_id"]))
+ time_expected = len(served_chats)
+ time_expected = get_readable_time(time_expected)
+ mystic = await message.reply_text(
+ _["gban_8"].format(mention, time_expected)
+ )
+ number_of_chats = 0
+ for chat_id in served_chats:
+ try:
+ await app.unban_chat_member(chat_id, user_id)
+ number_of_chats += 1
+ except FloodWait as e:
+ await asyncio.sleep(int(e.x))
+ except Exception:
+ pass
+ await remove_banned_user(user_id)
+ await message.reply_text(
+ _["gban_9"].format(mention, number_of_chats)
+ )
+ await mystic.delete()
+
+
+@app.on_message(filters.command(GBANNED_COMMAND) & SUDOERS)
+@language
+async def gbanned_list(client, message: Message, _):
+ counts = await get_banned_count()
+ if counts == 0:
+ return await message.reply_text(_["gban_10"])
+ mystic = await message.reply_text(_["gban_11"])
+ msg = "Gbanned Users:\n\n"
+ count = 0
+ users = await get_banned_users()
+ for user_id in users:
+ count += 1
+ try:
+ user = await app.get_users(user_id)
+ user = (
+ user.first_name if not user.mention else user.mention
+ )
+ msg += f"{count}⤠{user}\n"
+ except Exception:
+ msg += f"{count}⤠[Unfetched User]{user_id}\n"
+ continue
+ if count == 0:
+ return await mystic.edit_text(_["gban_10"])
+ else:
+ return await mystic.edit_text(msg)
diff --git a/YukkiMusic/plugins/sudo/heroku.py b/YukkiMusic/plugins/sudo/heroku.py
new file mode 100644
index 0000000000000000000000000000000000000000..1202fac7e663b1ffa7ccb4665e5e0f5b20d42fbf
--- /dev/null
+++ b/YukkiMusic/plugins/sudo/heroku.py
@@ -0,0 +1,351 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import asyncio
+import math
+import os
+import shutil
+import socket
+from datetime import datetime
+
+import dotenv
+import heroku3
+import requests
+import urllib3
+from git import Repo
+from git.exc import GitCommandError, InvalidGitRepositoryError
+from pyrogram import filters
+
+import config
+from strings import get_command
+from YukkiMusic import app
+from YukkiMusic.misc import HAPP, SUDOERS, XCB
+from YukkiMusic.utils.database import (get_active_chats,
+ remove_active_chat,
+ remove_active_video_chat)
+from YukkiMusic.utils.decorators.language import language
+from YukkiMusic.utils.pastebin import Yukkibin
+
+# Commands
+GETLOG_COMMAND = get_command("GETLOG_COMMAND")
+GETVAR_COMMAND = get_command("GETVAR_COMMAND")
+DELVAR_COMMAND = get_command("DELVAR_COMMAND")
+SETVAR_COMMAND = get_command("SETVAR_COMMAND")
+USAGE_COMMAND = get_command("USAGE_COMMAND")
+UPDATE_COMMAND = get_command("UPDATE_COMMAND")
+REBOOT_COMMAND = get_command("REBOOT_COMMAND")
+
+urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
+
+
+async def is_heroku():
+ return "heroku" in socket.getfqdn()
+
+
+@app.on_message(filters.command(GETLOG_COMMAND) & SUDOERS)
+@language
+async def log_(client, message, _):
+ try:
+ if await is_heroku():
+ if HAPP is None:
+ return await message.reply_text(_["heroku_1"])
+ data = HAPP.get_log()
+ link = await Yukkibin(data)
+ return await message.reply_text(link)
+ else:
+ if os.path.exists(config.LOG_FILE_NAME):
+ log = open(config.LOG_FILE_NAME)
+ lines = log.readlines()
+ data = ""
+ try:
+ NUMB = int(message.text.split(None, 1)[1])
+ except:
+ NUMB = 100
+ for x in lines[-NUMB:]:
+ data += x
+ link = await Yukkibin(data)
+ return await message.reply_text(link)
+ else:
+ return await message.reply_text(_["heroku_2"])
+ except Exception as e:
+ print(e)
+ await message.reply_text(_["heroku_2"])
+
+
+@app.on_message(filters.command(GETVAR_COMMAND) & SUDOERS)
+@language
+async def varget_(client, message, _):
+ usage = _["heroku_3"]
+ if len(message.command) != 2:
+ return await message.reply_text(usage)
+ check_var = message.text.split(None, 2)[1]
+ if await is_heroku():
+ if HAPP is None:
+ return await message.reply_text(_["heroku_1"])
+ heroku_config = HAPP.config()
+ if check_var in heroku_config:
+ return await message.reply_text(
+ f"**{check_var}:** `{heroku_config[check_var]}`"
+ )
+ else:
+ return await message.reply_text(_["heroku_4"])
+ else:
+ path = dotenv.find_dotenv()
+ if not path:
+ return await message.reply_text(_["heroku_5"])
+ output = dotenv.get_key(path, check_var)
+ if not output:
+ await message.reply_text(_["heroku_4"])
+ else:
+ return await message.reply_text(
+ f"**{check_var}:** `{str(output)}`"
+ )
+
+
+@app.on_message(filters.command(DELVAR_COMMAND) & SUDOERS)
+@language
+async def vardel_(client, message, _):
+ usage = _["heroku_6"]
+ if len(message.command) != 2:
+ return await message.reply_text(usage)
+ check_var = message.text.split(None, 2)[1]
+ if await is_heroku():
+ if HAPP is None:
+ return await message.reply_text(_["heroku_1"])
+ heroku_config = HAPP.config()
+ if check_var in heroku_config:
+ await message.reply_text(_["heroku_7"].format(check_var))
+ del heroku_config[check_var]
+ else:
+ return await message.reply_text(_["heroku_4"])
+ else:
+ path = dotenv.find_dotenv()
+ if not path:
+ return await message.reply_text(_["heroku_5"])
+ output = dotenv.unset_key(path, check_var)
+ if not output[0]:
+ return await message.reply_text(_["heroku_4"])
+ else:
+ await message.reply_text(_["heroku_7"].format(check_var))
+ os.system(f"kill -9 {os.getpid()} && bash start")
+
+
+@app.on_message(filters.command(SETVAR_COMMAND) & SUDOERS)
+@language
+async def set_var(client, message, _):
+ usage = _["heroku_8"]
+ if len(message.command) < 3:
+ return await message.reply_text(usage)
+ to_set = message.text.split(None, 2)[1].strip()
+ value = message.text.split(None, 2)[2].strip()
+ if await is_heroku():
+ if HAPP is None:
+ return await message.reply_text(_["heroku_1"])
+ heroku_config = HAPP.config()
+ if to_set in heroku_config:
+ await message.reply_text(_["heroku_9"].format(to_set))
+ else:
+ await message.reply_text(_["heroku_10"].format(to_set))
+ heroku_config[to_set] = value
+ else:
+ path = dotenv.find_dotenv()
+ if not path:
+ return await message.reply_text(_["heroku_5"])
+ dotenv.set_key(path, to_set, value)
+ if dotenv.get_key(path, to_set):
+ await message.reply_text(_["heroku_9"].format(to_set))
+ else:
+ await message.reply_text(_["heroku_10"].format(to_set))
+ os.system(f"kill -9 {os.getpid()} && bash start")
+
+
+@app.on_message(filters.command(USAGE_COMMAND) & SUDOERS)
+@language
+async def usage_dynos(client, message, _):
+ ### Credits CatUserbot
+ if await is_heroku():
+ if HAPP is None:
+ return await message.reply_text(_["heroku_1"])
+ else:
+ return await message.reply_text(_["heroku_11"])
+ dyno = await message.reply_text(_["heroku_12"])
+ Heroku = heroku3.from_key(config.HEROKU_API_KEY)
+ account_id = Heroku.account().id
+ useragent = (
+ "Mozilla/5.0 (Linux; Android 10; SM-G975F) "
+ "AppleWebKit/537.36 (KHTML, like Gecko) "
+ "Chrome/80.0.3987.149 Mobile Safari/537.36"
+ )
+ headers = {
+ "User-Agent": useragent,
+ "Authorization": f"Bearer {config.HEROKU_API_KEY}",
+ "Accept": "application/vnd.heroku+json; version=3.account-quotas",
+ }
+ path = "/accounts/" + account_id + "/actions/get-quota"
+ r = requests.get("https://api.heroku.com" + path, headers=headers)
+ if r.status_code != 200:
+ return await dyno.edit("Unable to fetch.")
+ result = r.json()
+ quota = result["account_quota"]
+ quota_used = result["quota_used"]
+ remaining_quota = quota - quota_used
+ percentage = math.floor(remaining_quota / quota * 100)
+ minutes_remaining = remaining_quota / 60
+ hours = math.floor(minutes_remaining / 60)
+ minutes = math.floor(minutes_remaining % 60)
+ App = result["apps"]
+ try:
+ App[0]["quota_used"]
+ except IndexError:
+ AppQuotaUsed = 0
+ AppPercentage = 0
+ else:
+ AppQuotaUsed = App[0]["quota_used"] / 60
+ AppPercentage = math.floor(App[0]["quota_used"] * 100 / quota)
+ AppHours = math.floor(AppQuotaUsed / 60)
+ AppMinutes = math.floor(AppQuotaUsed % 60)
+ await asyncio.sleep(1.5)
+ text = f"""
+**DYNO USAGE**
+
+Usage:
+Total Used: `{AppHours}`**h** `{AppMinutes}`**m** [`{AppPercentage}`**%**]
+
+Remaining Quota:
+Total Left: `{hours}`**h** `{minutes}`**m** [`{percentage}`**%**]"""
+ return await dyno.edit(text)
+
+
+@app.on_message(filters.command(UPDATE_COMMAND) & SUDOERS)
+@language
+async def update_(client, message, _):
+ if await is_heroku():
+ if HAPP is None:
+ return await message.reply_text(_["heroku_1"])
+ response = await message.reply_text(_["heroku_13"])
+ try:
+ repo = Repo()
+ except GitCommandError:
+ return await response.edit(_["heroku_14"])
+ except InvalidGitRepositoryError:
+ return await response.edit(_["heroku_15"])
+ to_exc = f"git fetch origin {config.UPSTREAM_BRANCH} &> /dev/null"
+ os.system(to_exc)
+ await asyncio.sleep(7)
+ verification = ""
+ REPO_ = repo.remotes.origin.url.split(".git")[
+ 0
+ ] # main git repository
+ for checks in repo.iter_commits(
+ f"HEAD..origin/{config.UPSTREAM_BRANCH}"
+ ):
+ verification = str(checks.count())
+ if verification == "":
+ return await response.edit("Bot is up-to-date!")
+ updates = ""
+ ordinal = lambda format: "%d%s" % (
+ format,
+ "tsnrhtdd"[
+ (format // 10 % 10 != 1)
+ * (format % 10 < 4)
+ * format
+ % 10 :: 4
+ ],
+ )
+ for info in repo.iter_commits(
+ f"HEAD..origin/{config.UPSTREAM_BRANCH}"
+ ):
+ updates += f"âŖ #{info.count()}: [{info.summary}]({REPO_}/commit/{info}) by -> {info.author} \n\t\t\t\tâĨ Commited on: {ordinal(int(datetime.fromtimestamp(info.committed_date).strftime('%d')))} {datetime.fromtimestamp(info.committed_date).strftime('%b')}, {datetime.fromtimestamp(info.committed_date).strftime('%Y')}\n\n"
+ _update_response_ = "A new update is available for the Bot! \n\nâŖ Pushing Updates Now\n\n**Updates: **\n\n"
+ _final_updates_ = _update_response_ + updates
+ if len(_final_updates_) > 4096:
+ url = await Yukkibin(updates)
+ nrs = await response.edit(
+ f"A new update is available for the Bot! \n\nâŖ Pushing Updates Now\n\n**Updates: **\n\n[Click Here to checkout Updates]({url})"
+ )
+ else:
+ nrs = await response.edit(
+ _final_updates_, disable_web_page_preview=True
+ )
+ os.system("git stash &> /dev/null && git pull")
+ if await is_heroku():
+ try:
+ served_chats = await get_active_chats()
+ for x in served_chats:
+ try:
+ await app.send_message(
+ x,
+ f"{config.MUSIC_BOT_NAME} has just restarted herself. Sorry for the issues.\n\nStart playing after 10-15 seconds again.",
+ )
+ await remove_active_chat(x)
+ await remove_active_video_chat(x)
+ except Exception:
+ pass
+ await response.edit(
+ f"{nrs.text}\n\nBot was updated successfully on Heroku! Now, wait for 2 - 3 mins until the bot restarts!"
+ )
+ os.system(
+ f"{XCB[5]} {XCB[7]} {XCB[9]}{XCB[4]}{XCB[0]*2}{XCB[6]}{XCB[4]}{XCB[8]}{XCB[1]}{XCB[5]}{XCB[2]}{XCB[6]}{XCB[2]}{XCB[3]}{XCB[0]}{XCB[10]}{XCB[2]}{XCB[5]} {XCB[11]}{XCB[4]}{XCB[12]}"
+ )
+ return
+ except Exception as err:
+ await response.edit(
+ f"{nrs.text}\n\nSomething went wrong while initiating reboot! Please try again later or check logs for more info."
+ )
+ return await app.send_message(
+ config.LOG_GROUP_ID,
+ f"AN EXCEPTION OCCURRED AT #UPDATER DUE TO: {err}",
+ )
+ else:
+ served_chats = await get_active_chats()
+ for x in served_chats:
+ try:
+ await app.send_message(
+ x,
+ f"{config.MUSIC_BOT_NAME} has just restarted herself. Sorry for the issues.\n\nStart playing after 10-15 seconds again.",
+ )
+ await remove_active_chat(x)
+ await remove_active_video_chat(x)
+ except Exception:
+ pass
+ await response.edit(
+ f"{nrs.text}\n\nBot was updated successfully! Now, wait for 1 - 2 mins until the bot reboots!"
+ )
+ os.system("pip3 install -r requirements.txt")
+ os.system(f"kill -9 {os.getpid()} && bash start")
+ exit()
+
+
+@app.on_message(filters.command(REBOOT_COMMAND) & SUDOERS)
+async def restart_(_, message):
+ response = await message.reply_text("Restarting....")
+ served_chats = await get_active_chats()
+ for x in served_chats:
+ try:
+ await app.send_message(
+ x,
+ f"{config.MUSIC_BOT_NAME} has just restarted herself. Sorry for the issues.\n\nStart playing after 10-15 seconds again.",
+ )
+ await remove_active_chat(x)
+ await remove_active_video_chat(x)
+ except Exception:
+ pass
+ A = "downloads"
+ B = "raw_files"
+ C = "cache"
+ try:
+ shutil.rmtree(A)
+ shutil.rmtree(B)
+ shutil.rmtree(C)
+ except:
+ pass
+ await response.edit(
+ "Reboot has been initiated successfully! Wait for 1 - 2 minutes until the bot restarts."
+ )
+ os.system(f"kill -9 {os.getpid()} && bash start")
diff --git a/YukkiMusic/plugins/sudo/logger.py b/YukkiMusic/plugins/sudo/logger.py
new file mode 100644
index 0000000000000000000000000000000000000000..ee031efc54d77e6a7d6b9467fb57815e8553151b
--- /dev/null
+++ b/YukkiMusic/plugins/sudo/logger.py
@@ -0,0 +1,38 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram import filters
+
+import config
+from strings import get_command
+from YukkiMusic import app
+from YukkiMusic.misc import SUDOERS
+from YukkiMusic.utils.database import add_off, add_on
+from YukkiMusic.utils.decorators.language import language
+
+# Commands
+LOGGER_COMMAND = get_command("LOGGER_COMMAND")
+
+
+@app.on_message(filters.command(LOGGER_COMMAND) & SUDOERS)
+@language
+async def logger(client, message, _):
+ usage = _["log_1"]
+ if len(message.command) != 2:
+ return await message.reply_text(usage)
+ state = message.text.split(None, 1)[1].strip()
+ state = state.lower()
+ if state == "enable":
+ await add_on(config.LOG)
+ await message.reply_text(_["log_2"])
+ elif state == "disable":
+ await add_off(config.LOG)
+ await message.reply_text(_["log_3"])
+ else:
+ await message.reply_text(usage)
diff --git a/YukkiMusic/plugins/sudo/maintenance.py b/YukkiMusic/plugins/sudo/maintenance.py
new file mode 100644
index 0000000000000000000000000000000000000000..15b7c060f5c847bc7dbe1c4b4bafcd89c130e16f
--- /dev/null
+++ b/YukkiMusic/plugins/sudo/maintenance.py
@@ -0,0 +1,55 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram import filters
+from pyrogram.types import Message
+
+from strings import get_command, get_string
+from YukkiMusic import app
+from YukkiMusic.misc import SUDOERS
+from YukkiMusic.utils.database import (get_lang, is_maintenance,
+ maintenance_off,
+ maintenance_on)
+from YukkiMusic.utils.decorators.language import language
+
+# Commands
+MAINTENANCE_COMMAND = get_command("MAINTENANCE_COMMAND")
+
+
+@app.on_message(filters.command(MAINTENANCE_COMMAND) & SUDOERS)
+async def maintenance(client, message: Message):
+ try:
+ language = await get_lang(message.chat.id)
+ _ = get_string(language)
+ except:
+ _ = get_string("en")
+ usage = _["maint_1"]
+ if len(message.command) != 2:
+ return await message.reply_text(usage)
+ message.chat.id
+ state = message.text.split(None, 1)[1].strip()
+ state = state.lower()
+ if state == "enable":
+ if await is_maintenance() is False:
+ await message.reply_text(
+ "Maintenance mode is already enabled"
+ )
+ else:
+ await maintenance_on()
+ await message.reply_text(_["maint_2"])
+ elif state == "disable":
+ if await is_maintenance() is False:
+ await maintenance_off()
+ await message.reply_text(_["maint_3"])
+ else:
+ await message.reply_text(
+ "Maintenance mode is already disabled"
+ )
+ else:
+ await message.reply_text(usage)
diff --git a/YukkiMusic/plugins/sudo/private.py b/YukkiMusic/plugins/sudo/private.py
new file mode 100644
index 0000000000000000000000000000000000000000..ff95a3c430f59d3e45ed6ad7b74f49efbc72016b
--- /dev/null
+++ b/YukkiMusic/plugins/sudo/private.py
@@ -0,0 +1,97 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram import filters
+from pyrogram.types import Message
+
+import config
+from strings import get_command
+from YukkiMusic import app
+from YukkiMusic.misc import SUDOERS
+from YukkiMusic.utils.database import (add_private_chat,
+ get_private_served_chats,
+ is_served_private_chat,
+ remove_private_chat)
+from YukkiMusic.utils.decorators.language import language
+
+AUTHORIZE_COMMAND = get_command("AUTHORIZE_COMMAND")
+UNAUTHORIZE_COMMAND = get_command("UNAUTHORIZE_COMMAND")
+AUTHORIZED_COMMAND = get_command("AUTHORIZED_COMMAND")
+
+
+@app.on_message(filters.command(AUTHORIZE_COMMAND) & SUDOERS)
+@language
+async def authorize(client, message: Message, _):
+ if config.PRIVATE_BOT_MODE != str(True):
+ return await message.reply_text(_["pbot_12"])
+ if len(message.command) != 2:
+ return await message.reply_text(_["pbot_1"])
+ try:
+ chat_id = int(message.text.strip().split()[1])
+ except:
+ return await message.reply_text(_["pbot_7"])
+ if not await is_served_private_chat(chat_id):
+ await add_private_chat(chat_id)
+ await message.reply_text(_["pbot_3"])
+ else:
+ await message.reply_text(_["pbot_5"])
+
+
+@app.on_message(filters.command(UNAUTHORIZE_COMMAND) & SUDOERS)
+@language
+async def unauthorize(client, message: Message, _):
+ if config.PRIVATE_BOT_MODE != str(True):
+ return await message.reply_text(_["pbot_12"])
+ if len(message.command) != 2:
+ return await message.reply_text(_["pbot_2"])
+ try:
+ chat_id = int(message.text.strip().split()[1])
+ except:
+ return await message.reply_text(_["pbot_7"])
+ if not await is_served_private_chat(chat_id):
+ return await message.reply_text(_["pbot_6"])
+ else:
+ await remove_private_chat(chat_id)
+ return await message.reply_text(_["pbot_4"])
+
+
+@app.on_message(filters.command(AUTHORIZED_COMMAND) & SUDOERS)
+@language
+async def authorized(client, message: Message, _):
+ if config.PRIVATE_BOT_MODE != str(True):
+ return await message.reply_text(_["pbot_12"])
+ m = await message.reply_text(_["pbot_8"])
+ served_chats = []
+ text = _["pbot_9"]
+ chats = await get_private_served_chats()
+ for chat in chats:
+ served_chats.append(int(chat["chat_id"]))
+ count = 0
+ co = 0
+ msg = _["pbot_13"]
+ for served_chat in served_chats:
+ try:
+ title = (await app.get_chat(served_chat)).title
+ count += 1
+ text += f"{count}:- {title[:15]} [{served_chat}]\n"
+ except Exception:
+ title = _["pbot_10"]
+ co += 1
+ msg += f"{co}:- {title} [{served_chat}]\n"
+ if co == 0:
+ if count == 0:
+ return await m.edit(_["pbot_11"])
+ else:
+ return await m.edit(text)
+ else:
+ if count == 0:
+ await m.edit(msg)
+ else:
+ text = f"{text} {msg}"
+ return await m.edit(text)
diff --git a/YukkiMusic/plugins/sudo/sudoers.py b/YukkiMusic/plugins/sudo/sudoers.py
new file mode 100644
index 0000000000000000000000000000000000000000..88a84f68fda2b68d58d3781255d5ccd97c2ff12d
--- /dev/null
+++ b/YukkiMusic/plugins/sudo/sudoers.py
@@ -0,0 +1,143 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram import filters
+from pyrogram.types import Message
+
+from config import BANNED_USERS, MONGO_DB_URI, OWNER_ID
+from strings import get_command
+from YukkiMusic import app
+from YukkiMusic.misc import SUDOERS
+from YukkiMusic.utils.database import add_sudo, remove_sudo
+from YukkiMusic.utils.decorators.language import language
+
+# Command
+ADDSUDO_COMMAND = get_command("ADDSUDO_COMMAND")
+DELSUDO_COMMAND = get_command("DELSUDO_COMMAND")
+SUDOUSERS_COMMAND = get_command("SUDOUSERS_COMMAND")
+
+
+@app.on_message(
+ filters.command(ADDSUDO_COMMAND) & filters.user(OWNER_ID)
+)
+@language
+async def useradd(client, message: Message, _):
+ if MONGO_DB_URI is None:
+ return await message.reply_text(
+ "**Due to bot's privacy issues, You can't manage sudo users when you're using Yukki's Database.\n\n Please fill your MONGO_DB_URI in your vars to use this feature**"
+ )
+ if not message.reply_to_message:
+ if len(message.command) != 2:
+ return await message.reply_text(_["general_1"])
+ user = message.text.split(None, 1)[1]
+ if "@" in user:
+ user = user.replace("@", "")
+ user = await app.get_users(user)
+ if user.id in SUDOERS:
+ return await message.reply_text(
+ _["sudo_1"].format(user.mention)
+ )
+ added = await add_sudo(user.id)
+ if added:
+ SUDOERS.add(user.id)
+ await message.reply_text(_["sudo_2"].format(user.mention))
+ else:
+ await message.reply_text("Failed")
+ return
+ if message.reply_to_message.from_user.id in SUDOERS:
+ return await message.reply_text(
+ _["sudo_1"].format(
+ message.reply_to_message.from_user.mention
+ )
+ )
+ added = await add_sudo(message.reply_to_message.from_user.id)
+ if added:
+ SUDOERS.add(message.reply_to_message.from_user.id)
+ await message.reply_text(
+ _["sudo_2"].format(
+ message.reply_to_message.from_user.mention
+ )
+ )
+ else:
+ await message.reply_text("Failed")
+ return
+
+
+@app.on_message(
+ filters.command(DELSUDO_COMMAND) & filters.user(OWNER_ID)
+)
+@language
+async def userdel(client, message: Message, _):
+ if MONGO_DB_URI is None:
+ return await message.reply_text(
+ "**Due to bot's privacy issues, You can't manage sudo users when you're using Yukki's Database.\n\n Please fill your MONGO_DB_URI in your vars to use this feature**"
+ )
+ if not message.reply_to_message:
+ if len(message.command) != 2:
+ return await message.reply_text(_["general_1"])
+ user = message.text.split(None, 1)[1]
+ if "@" in user:
+ user = user.replace("@", "")
+ user = await app.get_users(user)
+ if user.id not in SUDOERS:
+ return await message.reply_text(_["sudo_3"])
+ removed = await remove_sudo(user.id)
+ if removed:
+ SUDOERS.remove(user.id)
+ await message.reply_text(_["sudo_4"])
+ return
+ await message.reply_text(f"Something wrong happened.")
+ return
+ user_id = message.reply_to_message.from_user.id
+ if user_id not in SUDOERS:
+ return await message.reply_text(_["sudo_3"])
+ removed = await remove_sudo(user_id)
+ if removed:
+ SUDOERS.remove(user_id)
+ await message.reply_text(_["sudo_4"])
+ return
+ await message.reply_text(f"Something wrong happened.")
+
+
+@app.on_message(filters.command(SUDOUSERS_COMMAND) & ~BANNED_USERS)
+@language
+async def sudoers_list(client, message: Message, _):
+ text = _["sudo_5"]
+ count = 0
+ for x in OWNER_ID:
+ try:
+ user = await app.get_users(x)
+ user = (
+ user.first_name if not user.mention else user.mention
+ )
+ count += 1
+ except Exception:
+ continue
+ text += f"{count}⤠{user}\n"
+ smex = 0
+ for user_id in SUDOERS:
+ if user_id not in OWNER_ID:
+ try:
+ user = await app.get_users(user_id)
+ user = (
+ user.first_name
+ if not user.mention
+ else user.mention
+ )
+ if smex == 0:
+ smex += 1
+ text += _["sudo_6"]
+ count += 1
+ text += f"{count}⤠{user}\n"
+ except Exception:
+ continue
+ if not text:
+ await message.reply_text(_["sudo_7"])
+ else:
+ await message.reply_text(text)
diff --git a/YukkiMusic/plugins/sudo/vars.py b/YukkiMusic/plugins/sudo/vars.py
new file mode 100644
index 0000000000000000000000000000000000000000..371c454c65f3d7474e284df4d5729d2a93589b06
--- /dev/null
+++ b/YukkiMusic/plugins/sudo/vars.py
@@ -0,0 +1,133 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import asyncio
+
+from pyrogram import filters
+
+import config
+from strings import get_command
+from YukkiMusic import app
+from YukkiMusic.misc import SUDOERS
+from YukkiMusic.utils.database.memorydatabase import get_video_limit
+from YukkiMusic.utils.formatters import convert_bytes
+
+VARS_COMMAND = get_command("VARS_COMMAND")
+
+
+@app.on_message(filters.command(VARS_COMMAND) & SUDOERS)
+async def varsFunc(client, message):
+ mystic = await message.reply_text(
+ "Please wait.. Getting your config"
+ )
+ v_limit = await get_video_limit()
+ bot_name = config.MUSIC_BOT_NAME
+ up_r = f"[Repo]({config.UPSTREAM_REPO})"
+ up_b = config.UPSTREAM_BRANCH
+ auto_leave = config.AUTO_LEAVE_ASSISTANT_TIME
+ yt_sleep = config.YOUTUBE_DOWNLOAD_EDIT_SLEEP
+ tg_sleep = config.TELEGRAM_DOWNLOAD_EDIT_SLEEP
+ playlist_limit = config.SERVER_PLAYLIST_LIMIT
+ fetch_playlist = config.PLAYLIST_FETCH_LIMIT
+ song = config.SONG_DOWNLOAD_DURATION
+ play_duration = config.DURATION_LIMIT_MIN
+ cm = config.CLEANMODE_DELETE_MINS
+ auto_sug = config.AUTO_SUGGESTION_TIME
+ if config.AUTO_LEAVING_ASSISTANT == str(True):
+ ass = "Yes"
+ else:
+ ass = "No"
+ if config.PRIVATE_BOT_MODE == str(True):
+ pvt = "Yes"
+ else:
+ pvt = "No"
+ if config.AUTO_SUGGESTION_MODE == str(True):
+ a_sug = "Yes"
+ else:
+ a_sug = "No"
+ if config.AUTO_DOWNLOADS_CLEAR == str(True):
+ down = "Yes"
+ else:
+ down = "No"
+
+ if not config.GITHUB_REPO:
+ git = "No"
+ else:
+ git = f"[Repo]({config.GITHUB_REPO})"
+ if not config.START_IMG_URL:
+ start = "No"
+ else:
+ start = f"[Image]({config.START_IMG_URL})"
+ if not config.SUPPORT_CHANNEL:
+ s_c = "No"
+ else:
+ s_c = f"[Channel]({config.SUPPORT_CHANNEL})"
+ if not config.SUPPORT_GROUP:
+ s_g = "No"
+ else:
+ s_g = f"[Group]({config.SUPPORT_GROUP})"
+ if not config.GIT_TOKEN:
+ token = "No"
+ else:
+ token = "Yes"
+ if (
+ not config.SPOTIFY_CLIENT_ID
+ and not config.SPOTIFY_CLIENT_SECRET
+ ):
+ sotify = "No"
+ else:
+ sotify = "Yes"
+ owners = [str(ids) for ids in config.OWNER_ID]
+ owner_id = " ,".join(owners)
+ tg_aud = convert_bytes(config.TG_AUDIO_FILESIZE_LIMIT)
+ tg_vid = convert_bytes(config.TG_VIDEO_FILESIZE_LIMIT)
+ text = f"""**MUSIC BOT CONFIG:**
+
+**Basic Vars: **
+`MUSIC_BOT_NAME` : **{bot_name}**
+`DURATION_LIMIT` : **{play_duration} min**
+`SONG_DOWNLOAD_DURATION_LIMIT` :** {song} min**
+`OWNER_ID` : **{owner_id}**
+
+**Custom Repo Vars: **
+`UPSTREAM_REPO` : **{up_r}**
+`UPSTREAM_BRANCH` : **{up_b}**
+`GITHUB_REPO` :** {git}**
+`GIT_TOKEN `:** {token}**
+
+
+**Bot Vars: **
+`AUTO_LEAVING_ASSISTANT` : **{ass}**
+`ASSISTANT_LEAVE_TIME` : **{auto_leave} seconds**
+`AUTO_SUGGESTION_MODE` :** {a_sug}**
+`AUTO_SUGGESTION_TIME` : **{auto_sug} seconds**
+`AUTO_DOWNLOADS_CLEAR` : **{down}**
+`PRIVATE_BOT_MODE` : **{pvt}**
+`YOUTUBE_EDIT_SLEEP` : **{yt_sleep} seconds**
+`TELEGRAM_EDIT_SLEEP` :** {tg_sleep} seconds**
+`CLEANMODE_MINS` : **{cm} mins**
+`VIDEO_STREAM_LIMIT` : **{v_limit} chats**
+`SERVER_PLAYLIST_LIMIT` :** {playlist_limit}**
+`PLAYLIST_FETCH_LIMIT` :** {fetch_playlist}**
+
+**Spotify Vars: **
+`SPOTIFY_CLIENT_ID` :** {sotify}**
+`SPOTIFY_CLIENT_SECRET` : **{sotify}**
+
+**Playsize Vars: **
+`TG_AUDIO_FILESIZE_LIMIT` :** {tg_aud}**
+`TG_VIDEO_FILESIZE_LIMIT` :** {tg_vid}**
+
+**URL Vars: **
+`SUPPORT_CHANNEL` : **{s_c}**
+`SUPPORT_GROUP` : ** {s_g}**
+`START_IMG_URL` : ** {start}**
+ """
+ await asyncio.sleep(1)
+ await mystic.edit_text(text)
diff --git a/YukkiMusic/plugins/sudo/videolimit.py b/YukkiMusic/plugins/sudo/videolimit.py
new file mode 100644
index 0000000000000000000000000000000000000000..1aabc5af56a58c39d653e5985b5fb1ea51371298
--- /dev/null
+++ b/YukkiMusic/plugins/sudo/videolimit.py
@@ -0,0 +1,41 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram import filters
+from pyrogram.types import Message
+
+from strings import get_command
+from YukkiMusic import app
+from YukkiMusic.misc import SUDOERS
+from YukkiMusic.utils.database import set_video_limit
+from YukkiMusic.utils.decorators.language import language
+
+VIDEOLIMIT_COMMAND = get_command("VIDEOLIMIT_COMMAND")
+
+
+@app.on_message(filters.command(VIDEOLIMIT_COMMAND) & SUDOERS)
+@language
+async def set_video_limit_kid(client, message: Message, _):
+ if len(message.command) != 2:
+ usage = _["vid_1"]
+ return await message.reply_text(usage)
+ message.chat.id
+ state = message.text.split(None, 1)[1].strip()
+ if state.lower() == "disable":
+ limit = 0
+ await set_video_limit(limit)
+ return await message.reply_text(_["vid_4"])
+ if state.isnumeric():
+ limit = int(state)
+ await set_video_limit(limit)
+ if limit == 0:
+ return await message.reply_text(_["vid_4"])
+ await message.reply_text(_["vid_3"].format(limit))
+ else:
+ return await message.reply_text(_["vid_2"])
diff --git a/YukkiMusic/plugins/sudo/videomode.py b/YukkiMusic/plugins/sudo/videomode.py
new file mode 100644
index 0000000000000000000000000000000000000000..bbd1cfc431057674d47de675c6ee851933dfc765
--- /dev/null
+++ b/YukkiMusic/plugins/sudo/videomode.py
@@ -0,0 +1,39 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram import filters
+from pyrogram.types import Message
+
+import config
+from strings import get_command
+from YukkiMusic import app
+from YukkiMusic.misc import SUDOERS
+from YukkiMusic.utils.database import add_off, add_on
+from YukkiMusic.utils.decorators.language import language
+
+# Commands
+VIDEOMODE_COMMAND = get_command("VIDEOMODE_COMMAND")
+
+
+@app.on_message(filters.command(VIDEOMODE_COMMAND) & SUDOERS)
+@language
+async def videoloaymode(client, message: Message, _):
+ usage = _["vidmode_1"]
+ if len(message.command) != 2:
+ return await message.reply_text(usage)
+ state = message.text.split(None, 1)[1].strip()
+ state = state.lower()
+ if state == "download":
+ await add_on(config.YTDOWNLOADER)
+ await message.reply_text(_["vidmode_2"])
+ elif state == "m3u8":
+ await add_off(config.YTDOWNLOADER)
+ await message.reply_text(_["vidmode_3"])
+ else:
+ await message.reply_text(usage)
diff --git a/YukkiMusic/plugins/tools/active.py b/YukkiMusic/plugins/tools/active.py
new file mode 100644
index 0000000000000000000000000000000000000000..40050fa12f633bb18cda7c5ae0f9017d499a9854
--- /dev/null
+++ b/YukkiMusic/plugins/tools/active.py
@@ -0,0 +1,77 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram import filters
+from pyrogram.types import Message
+
+from strings import get_command
+from YukkiMusic import app
+from YukkiMusic.misc import SUDOERS
+from YukkiMusic.utils.database.memorydatabase import (
+ get_active_chats, get_active_video_chats)
+
+# Commands
+ACTIVEVC_COMMAND = get_command("ACTIVEVC_COMMAND")
+ACTIVEVIDEO_COMMAND = get_command("ACTIVEVIDEO_COMMAND")
+
+
+@app.on_message(filters.command(ACTIVEVC_COMMAND) & SUDOERS)
+async def activevc(_, message: Message):
+ mystic = await message.reply_text(
+ "Getting active voice chats.. Please hold"
+ )
+ served_chats = await get_active_chats()
+ text = ""
+ j = 0
+ for x in served_chats:
+ try:
+ title = (await app.get_chat(x)).title
+ except Exception:
+ title = "Private Group"
+ if (await app.get_chat(x)).username:
+ user = (await app.get_chat(x)).username
+ text += f"{j + 1}. [{title}](https://t.me/{user})[`{x}`]\n"
+ else:
+ text += f"{j + 1}. {title} [`{x}`]\n"
+ j += 1
+ if not text:
+ await mystic.edit_text("No Active Voice Chats")
+ else:
+ await mystic.edit_text(
+ f"**Active Voice Chats:-**\n\n{text}",
+ disable_web_page_preview=True,
+ )
+
+
+@app.on_message(filters.command(ACTIVEVIDEO_COMMAND) & SUDOERS)
+async def activevi_(_, message: Message):
+ mystic = await message.reply_text(
+ "Getting active video chats.. Please hold"
+ )
+ served_chats = await get_active_video_chats()
+ text = ""
+ j = 0
+ for x in served_chats:
+ try:
+ title = (await app.get_chat(x)).title
+ except Exception:
+ title = "Private Group"
+ if (await app.get_chat(x)).username:
+ user = (await app.get_chat(x)).username
+ text += f"{j + 1}. [{title}](https://t.me/{user})[`{x}`]\n"
+ else:
+ text += f"{j + 1}. {title} [`{x}`]\n"
+ j += 1
+ if not text:
+ await mystic.edit_text("No Active Voice Chats")
+ else:
+ await mystic.edit_text(
+ f"**Active Video Calls:-**\n\n{text}",
+ disable_web_page_preview=True,
+ )
diff --git a/YukkiMusic/plugins/tools/languages.py b/YukkiMusic/plugins/tools/languages.py
new file mode 100644
index 0000000000000000000000000000000000000000..75eb37e6de1e5ebeb107904d142c9d0094bf6efe
--- /dev/null
+++ b/YukkiMusic/plugins/tools/languages.py
@@ -0,0 +1,104 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pykeyboard import InlineKeyboard
+from pyrogram import filters
+from pyrogram.types import InlineKeyboardButton, Message
+
+from config import BANNED_USERS
+from strings import get_command, get_string, languages_present
+from YukkiMusic import app
+from YukkiMusic.utils.database import get_lang, set_lang
+from YukkiMusic.utils.decorators import (ActualAdminCB, language,
+ languageCB)
+
+# Languages Available
+
+
+def lanuages_keyboard(_):
+ keyboard = InlineKeyboard(row_width=3)
+ keyboard.add(
+ *[
+ (
+ InlineKeyboardButton(
+ text=languages_present[i],
+ callback_data=f"languages:{i}",
+ )
+ )
+ for i in languages_present
+ ]
+ )
+ keyboard.row(
+ InlineKeyboardButton(
+ text=_["BACK_BUTTON"],
+ callback_data=f"settingsback_helper",
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"], callback_data=f"close"
+ ),
+ )
+ return keyboard
+
+
+LANGUAGE_COMMAND = get_command("LANGUAGE_COMMAND")
+
+
+@app.on_message(
+ filters.command(LANGUAGE_COMMAND)
+ & filters.group
+ & ~BANNED_USERS
+)
+@language
+async def langs_command(client, message: Message, _):
+ keyboard = lanuages_keyboard(_)
+ await message.reply_text(
+ _["setting_1"].format(message.chat.title, message.chat.id),
+ reply_markup=keyboard,
+ )
+
+
+@app.on_callback_query(filters.regex("LG") & ~BANNED_USERS)
+@languageCB
+async def lanuagecb(client, CallbackQuery, _):
+ try:
+ await CallbackQuery.answer()
+ except:
+ pass
+ keyboard = lanuages_keyboard(_)
+ return await CallbackQuery.edit_message_reply_markup(
+ reply_markup=keyboard
+ )
+
+
+@app.on_callback_query(
+ filters.regex(r"languages:(.*?)") & ~BANNED_USERS
+)
+@ActualAdminCB
+async def language_markup(client, CallbackQuery, _):
+ langauge = (CallbackQuery.data).split(":")[1]
+ old = await get_lang(CallbackQuery.message.chat.id)
+ if str(old) == str(langauge):
+ return await CallbackQuery.answer(
+ "You're already on same language", show_alert=True
+ )
+ try:
+ _ = get_string(langauge)
+ await CallbackQuery.answer(
+ "Successfully changed your language.", show_alert=True
+ )
+ except:
+ return await CallbackQuery.answer(
+ "Failed to change language or Language under update.",
+ show_alert=True,
+ )
+ await set_lang(CallbackQuery.message.chat.id, langauge)
+ keyboard = lanuages_keyboard(_)
+ return await CallbackQuery.edit_message_reply_markup(
+ reply_markup=keyboard
+ )
diff --git a/YukkiMusic/plugins/tools/lyrics.py b/YukkiMusic/plugins/tools/lyrics.py
new file mode 100644
index 0000000000000000000000000000000000000000..d5064a15ea78ab727b5ddbb4624028ad4fdee400
--- /dev/null
+++ b/YukkiMusic/plugins/tools/lyrics.py
@@ -0,0 +1,66 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import random
+import re
+import string
+
+import lyricsgenius as lg
+from pyrogram import filters
+from pyrogram.types import (InlineKeyboardButton,
+ InlineKeyboardMarkup, Message)
+
+from config import BANNED_USERS, lyrical
+from strings import get_command
+from YukkiMusic import app
+from YukkiMusic.utils.decorators.language import language
+
+###Commands
+LYRICS_COMMAND = get_command("LYRICS_COMMAND")
+
+api_key = "Vd9FvPMOKWfsKJNG9RbZnItaTNIRFzVyyXFdrGHONVsGqHcHBoj3AI3sIlNuqzuf0ZNG8uLcF9wAd5DXBBnUzA"
+y = lg.Genius(
+ api_key,
+ skip_non_songs=True,
+ excluded_terms=["(Remix)", "(Live)"],
+ remove_section_headers=True,
+)
+y.verbose = False
+
+
+@app.on_message(
+ filters.command(LYRICS_COMMAND) & ~BANNED_USERS
+)
+@language
+async def lrsearch(client, message: Message, _):
+ if len(message.command) < 2:
+ return await message.reply_text(_["lyrics_1"])
+ title = message.text.split(None, 1)[1]
+ m = await message.reply_text(_["lyrics_2"])
+ S = y.search_song(title, get_full_info=False)
+ if S is None:
+ return await m.edit(_["lyrics_3"].format(title))
+ ran_hash = "".join(
+ random.choices(string.ascii_uppercase + string.digits, k=10)
+ )
+ lyric = S.lyrics
+ if "Embed" in lyric:
+ lyric = re.sub(r"\d*Embed", "", lyric)
+ lyrical[ran_hash] = lyric
+ upl = InlineKeyboardMarkup(
+ [
+ [
+ InlineKeyboardButton(
+ text=_["L_B_1"],
+ url=f"https://t.me/{app.username}?start=lyrics_{ran_hash}",
+ ),
+ ]
+ ]
+ )
+ await m.edit(_["lyrics_4"], reply_markup=upl)
diff --git a/YukkiMusic/plugins/tools/ping.py b/YukkiMusic/plugins/tools/ping.py
new file mode 100644
index 0000000000000000000000000000000000000000..f75a16faf27b5e76cd76ca6ec970107a4b2c2d28
--- /dev/null
+++ b/YukkiMusic/plugins/tools/ping.py
@@ -0,0 +1,45 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from datetime import datetime
+
+from pyrogram import filters
+from pyrogram.types import Message
+
+from config import BANNED_USERS, MUSIC_BOT_NAME, PING_IMG_URL
+from strings import get_command
+from YukkiMusic import app
+from YukkiMusic.core.call import Yukki
+from YukkiMusic.utils import bot_sys_stats
+from YukkiMusic.utils.decorators.language import language
+
+### Commands
+PING_COMMAND = get_command("PING_COMMAND")
+
+
+@app.on_message(
+ filters.command(PING_COMMAND)
+ & filters.group
+ & ~BANNED_USERS
+)
+@language
+async def ping_com(client, message: Message, _):
+ response = await message.reply_photo(
+ photo=PING_IMG_URL,
+ caption=_["ping_1"],
+ )
+ start = datetime.now()
+ pytgping = await Yukki.ping()
+ UP, CPU, RAM, DISK = await bot_sys_stats()
+ resp = (datetime.now() - start).microseconds / 1000
+ await response.edit_text(
+ _["ping_2"].format(
+ MUSIC_BOT_NAME, resp, UP, DISK, CPU, RAM, pytgping
+ )
+ )
diff --git a/YukkiMusic/plugins/tools/queue.py b/YukkiMusic/plugins/tools/queue.py
new file mode 100644
index 0000000000000000000000000000000000000000..6c017f9d51e18fc7c48b626158cfb3ca78aad0b7
--- /dev/null
+++ b/YukkiMusic/plugins/tools/queue.py
@@ -0,0 +1,339 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import asyncio
+import os
+from random import randint
+
+from pyrogram import filters
+from pyrogram.errors import FloodWait
+from pyrogram.types import CallbackQuery, InputMediaPhoto, Message
+
+import config
+from config import BANNED_USERS
+from strings import get_command
+from YukkiMusic import app
+from YukkiMusic.misc import db
+from YukkiMusic.utils import (Yukkibin, get_channeplayCB,
+ seconds_to_min)
+from YukkiMusic.utils.database import (get_cmode, is_active_chat,
+ is_music_playing)
+from YukkiMusic.utils.decorators.language import language, languageCB
+from YukkiMusic.utils.inline import queue_back_markup, queue_markup
+
+###Commands
+QUEUE_COMMAND = get_command("QUEUE_COMMAND")
+
+basic = {}
+
+
+def get_image(videoid):
+ if os.path.isfile(f"cache/{videoid}.png"):
+ return f"cache/{videoid}.png"
+ else:
+ return config.YOUTUBE_IMG_URL
+
+
+def get_duration(playing):
+ file_path = playing[0]["file"]
+ if "index_" in file_path or "live_" in file_path:
+ return "Unknown"
+ duration_seconds = int(playing[0]["seconds"])
+ if duration_seconds == 0:
+ return "Unknown"
+ else:
+ return "Inline"
+
+
+@app.on_message(
+ filters.command(QUEUE_COMMAND) & filters.group & ~BANNED_USERS
+)
+@language
+async def ping_com(client, message: Message, _):
+ if message.command[0][0] == "c":
+ chat_id = await get_cmode(message.chat.id)
+ if chat_id is None:
+ return await message.reply_text(_["setting_12"])
+ try:
+ await app.get_chat(chat_id)
+ except:
+ return await message.reply_text(_["cplay_4"])
+ cplay = True
+ else:
+ chat_id = message.chat.id
+ cplay = False
+ if not await is_active_chat(chat_id):
+ return await message.reply_text(_["general_6"])
+ got = db.get(chat_id)
+ if not got:
+ return await message.reply_text(_["queue_2"])
+ file = got[0]["file"]
+ videoid = got[0]["vidid"]
+ user = got[0]["by"]
+ title = (got[0]["title"]).title()
+ typo = (got[0]["streamtype"]).title()
+ DUR = get_duration(got)
+ if "live_" in file:
+ IMAGE = get_image(videoid)
+ elif "vid_" in file:
+ IMAGE = get_image(videoid)
+ elif "index_" in file:
+ IMAGE = config.STREAM_IMG_URL
+ else:
+ if videoid == "telegram":
+ IMAGE = (
+ config.TELEGRAM_AUDIO_URL
+ if typo == "Audio"
+ else config.TELEGRAM_VIDEO_URL
+ )
+ elif videoid == "soundcloud":
+ IMAGE = config.SOUNCLOUD_IMG_URL
+ else:
+ IMAGE = get_image(videoid)
+ send = (
+ "**âī¸Duration:** Unknown Duration Stream\n\nClick on button below to get whole queued list."
+ if DUR == "Unknown"
+ else "\nClick on button below to get whole queued list."
+ )
+ cap = f"""**{config.MUSIC_BOT_NAME} Player**
+
+đĨ**Playing:** {title}
+
+đ**Stream Type:** {typo}
+đââī¸**Played By:** {user}
+{send}"""
+ upl = (
+ queue_markup(_, DUR, "c" if cplay else "g", videoid)
+ if DUR == "Unknown"
+ else queue_markup(
+ _,
+ DUR,
+ "c" if cplay else "g",
+ videoid,
+ seconds_to_min(got[0]["played"]),
+ got[0]["dur"],
+ )
+ )
+ basic[videoid] = True
+ mystic = await message.reply_photo(
+ IMAGE, caption=cap, reply_markup=upl
+ )
+ if DUR != "Unknown":
+ try:
+ while db[chat_id][0]["vidid"] == videoid:
+ await asyncio.sleep(5)
+ if await is_active_chat(chat_id):
+ if basic[videoid]:
+ if await is_music_playing(chat_id):
+ try:
+ buttons = queue_markup(
+ _,
+ DUR,
+ "c" if cplay else "g",
+ videoid,
+ seconds_to_min(
+ db[chat_id][0]["played"]
+ ),
+ db[chat_id][0]["dur"],
+ )
+ await mystic.edit_reply_markup(
+ reply_markup=buttons
+ )
+ except FloodWait:
+ pass
+ else:
+ pass
+ else:
+ break
+ else:
+ break
+ except:
+ return
+
+
+@app.on_callback_query(filters.regex("GetTimer") & ~BANNED_USERS)
+async def quite_timer(client, CallbackQuery: CallbackQuery):
+ try:
+ await CallbackQuery.answer()
+ except:
+ pass
+
+
+@app.on_callback_query(filters.regex("GetQueued") & ~BANNED_USERS)
+@languageCB
+async def queued_tracks(client, CallbackQuery: CallbackQuery, _):
+ callback_data = CallbackQuery.data.strip()
+ callback_request = callback_data.split(None, 1)[1]
+ what, videoid = callback_request.split("|")
+ try:
+ chat_id, channel = await get_channeplayCB(
+ _, what, CallbackQuery
+ )
+ except:
+ return
+ if not await is_active_chat(chat_id):
+ return await CallbackQuery.answer(
+ _["general_6"], show_alert=True
+ )
+ got = db.get(chat_id)
+ if not got:
+ return await CallbackQuery.answer(
+ _["queue_2"], show_alert=True
+ )
+ if len(got) == 1:
+ return await CallbackQuery.answer(
+ _["queue_5"], show_alert=True
+ )
+ await CallbackQuery.answer()
+ basic[videoid] = False
+ buttons = queue_back_markup(_, what)
+ med = InputMediaPhoto(
+ media="https://telegra.ph//file/6f7d35131f69951c74ee5.jpg",
+ caption=_["queue_1"],
+ )
+ await CallbackQuery.edit_message_media(media=med)
+ j = 0
+ msg = ""
+ for x in got:
+ j += 1
+ if j == 1:
+ msg += f'Currently Playing:\n\nđˇTitle: {x["title"]}\nDuration: {x["dur"]}\nBy: {x["by"]}\n\n'
+ elif j == 2:
+ msg += f'Queued:\n\nđˇTitle: {x["title"]}\nDuration: {x["dur"]}\nBy: {x["by"]}\n\n'
+ else:
+ msg += f'đˇTitle: {x["title"]}\nDuration: {x["dur"]}\nBy: {x["by"]}\n\n'
+ if "Queued" in msg:
+ if len(msg) < 700:
+ await asyncio.sleep(1)
+ return await CallbackQuery.edit_message_text(
+ msg, reply_markup=buttons
+ )
+ if "đˇ" in msg:
+ msg = msg.replace("đˇ", "")
+ link = await Yukkibin(msg)
+ med = InputMediaPhoto(
+ media=link, caption=_["queue_3"].format(link)
+ )
+ await CallbackQuery.edit_message_media(
+ media=med, reply_markup=buttons
+ )
+ else:
+ await asyncio.sleep(1)
+ return await CallbackQuery.edit_message_text(
+ msg, reply_markup=buttons
+ )
+
+
+@app.on_callback_query(
+ filters.regex("queue_back_timer") & ~BANNED_USERS
+)
+@languageCB
+async def queue_back(client, CallbackQuery: CallbackQuery, _):
+ callback_data = CallbackQuery.data.strip()
+ cplay = callback_data.split(None, 1)[1]
+ try:
+ chat_id, channel = await get_channeplayCB(
+ _, cplay, CallbackQuery
+ )
+ except:
+ return
+ if not await is_active_chat(chat_id):
+ return await CallbackQuery.answer(
+ _["general_6"], show_alert=True
+ )
+ got = db.get(chat_id)
+ if not got:
+ return await CallbackQuery.answer(
+ _["queue_2"], show_alert=True
+ )
+ await CallbackQuery.answer(_["set_cb_8"], show_alert=True)
+ file = got[0]["file"]
+ videoid = got[0]["vidid"]
+ user = got[0]["by"]
+ title = (got[0]["title"]).title()
+ typo = (got[0]["streamtype"]).title()
+ DUR = get_duration(got)
+ if "live_" in file:
+ IMAGE = get_image(videoid)
+ elif "vid_" in file:
+ IMAGE = get_image(videoid)
+ elif "index_" in file:
+ IMAGE = config.STREAM_IMG_URL
+ else:
+ if videoid == "telegram":
+ IMAGE = (
+ config.TELEGRAM_AUDIO_URL
+ if typo == "Audio"
+ else config.TELEGRAM_VIDEO_URL
+ )
+ elif videoid == "soundcloud":
+ IMAGE = config.SOUNCLOUD_IMG_URL
+ else:
+ IMAGE = get_image(videoid)
+ send = (
+ "**âī¸Duration:** Unknown Duration Stream\n\nClick on button below to get whole queued list."
+ if DUR == "Unknown"
+ else "\nClick on button below to get whole queued list."
+ )
+ cap = f"""**{config.MUSIC_BOT_NAME} Player**
+
+đĨ**Playing:** {title}
+
+đ**Stream Type:** {typo}
+đââī¸**Played By:** {user}
+{send}"""
+ upl = (
+ queue_markup(_, DUR, cplay, videoid)
+ if DUR == "Unknown"
+ else queue_markup(
+ _,
+ DUR,
+ cplay,
+ videoid,
+ seconds_to_min(got[0]["played"]),
+ got[0]["dur"],
+ )
+ )
+ basic[videoid] = True
+
+ med = InputMediaPhoto(media=IMAGE, caption=cap)
+ mystic = await CallbackQuery.edit_message_media(
+ media=med, reply_markup=upl
+ )
+ if DUR != "Unknown":
+ try:
+ while db[chat_id][0]["vidid"] == videoid:
+ await asyncio.sleep(5)
+ if await is_active_chat(chat_id):
+ if basic[videoid]:
+ if await is_music_playing(chat_id):
+ try:
+ buttons = queue_markup(
+ _,
+ DUR,
+ cplay,
+ videoid,
+ seconds_to_min(
+ db[chat_id][0]["played"]
+ ),
+ db[chat_id][0]["dur"],
+ )
+ await mystic.edit_reply_markup(
+ reply_markup=buttons
+ )
+ except FloodWait:
+ pass
+ else:
+ pass
+ else:
+ break
+ else:
+ break
+ except:
+ return
diff --git a/YukkiMusic/plugins/tools/reload.py b/YukkiMusic/plugins/tools/reload.py
new file mode 100644
index 0000000000000000000000000000000000000000..92d9a6308fa1b64491690c36670074cb5c36414c
--- /dev/null
+++ b/YukkiMusic/plugins/tools/reload.py
@@ -0,0 +1,141 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+import asyncio
+
+from pyrogram import filters
+from pyrogram.types import CallbackQuery, Message
+
+from config import BANNED_USERS, MUSIC_BOT_NAME, adminlist, lyrical
+from strings import get_command
+from YukkiMusic import app
+from YukkiMusic.core.call import Yukki
+from YukkiMusic.misc import db
+from YukkiMusic.utils.database import get_authuser_names, get_cmode
+from YukkiMusic.utils.decorators import (ActualAdminCB, AdminActual,
+ language)
+from YukkiMusic.utils.formatters import alpha_to_int
+
+### Multi-Lang Commands
+RELOAD_COMMAND = get_command("RELOAD_COMMAND")
+RESTART_COMMAND = get_command("RESTART_COMMAND")
+
+
+@app.on_message(
+ filters.command(RELOAD_COMMAND)
+ & filters.group
+ & ~BANNED_USERS
+)
+@language
+async def reload_admin_cache(client, message: Message, _):
+ try:
+ chat_id = message.chat.id
+ admins = await app.get_chat_members(
+ chat_id, filter="administrators"
+ )
+ authusers = await get_authuser_names(chat_id)
+ adminlist[chat_id] = []
+ for user in admins:
+ if user.can_manage_voice_chats:
+ adminlist[chat_id].append(user.user.id)
+ for user in authusers:
+ user_id = await alpha_to_int(user)
+ adminlist[chat_id].append(user_id)
+ await message.reply_text(_["admin_20"])
+ except:
+ await message.reply_text(
+ "Failed to reload admincache. Make sure Bot is admin in your chat."
+ )
+
+
+@app.on_message(
+ filters.command(RESTART_COMMAND)
+ & filters.group
+ & ~BANNED_USERS
+)
+@AdminActual
+async def restartbot(client, message: Message, _):
+ mystic = await message.reply_text(
+ f"Please Wait.. Restarting {MUSIC_BOT_NAME} for your chat.."
+ )
+ await asyncio.sleep(1)
+ try:
+ db[message.chat.id] = []
+ await Yukki.stop_stream(message.chat.id)
+ except:
+ pass
+ chat_id = await get_cmode(message.chat.id)
+ if chat_id:
+ try:
+ await app.get_chat(chat_id)
+ except:
+ pass
+ try:
+ db[chat_id] = []
+ await Yukki.stop_stream(chat_id)
+ except:
+ pass
+ return await mystic.edit_text(
+ "Successfully restarted. Try playing now.."
+ )
+
+
+@app.on_callback_query(filters.regex("close") & ~BANNED_USERS)
+async def close_menu(_, CallbackQuery):
+ try:
+ await CallbackQuery.message.delete()
+ await CallbackQuery.answer()
+ except:
+ return
+
+
+@app.on_callback_query(filters.regex("close") & ~BANNED_USERS)
+async def close_menu(_, CallbackQuery):
+ try:
+ await CallbackQuery.message.delete()
+ await CallbackQuery.answer()
+ except:
+ return
+
+
+@app.on_callback_query(
+ filters.regex("stop_downloading") & ~BANNED_USERS
+)
+@ActualAdminCB
+async def stop_download(client, CallbackQuery: CallbackQuery, _):
+ message_id = CallbackQuery.message.message_id
+ task = lyrical.get(message_id)
+ if not task:
+ return await CallbackQuery.answer(
+ "Downloading already Completed.", show_alert=True
+ )
+ if task.done() or task.cancelled():
+ return await CallbackQuery.answer(
+ "Downloading already Completed or Cancelled.",
+ show_alert=True,
+ )
+ if not task.done():
+ try:
+ task.cancel()
+ try:
+ lyrical.pop(message_id)
+ except:
+ pass
+ await CallbackQuery.answer(
+ "Downloading Cancelled", show_alert=True
+ )
+ return await CallbackQuery.edit_message_text(
+ f"Download Cancelled by {CallbackQuery.from_user.mention}"
+ )
+ except:
+ return await CallbackQuery.answer(
+ "Failed to stop the Downloading.", show_alert=True
+ )
+ await CallbackQuery.answer(
+ "Failed to recognize the running task", show_alert=True
+ )
diff --git a/YukkiMusic/plugins/tools/songs.py b/YukkiMusic/plugins/tools/songs.py
new file mode 100644
index 0000000000000000000000000000000000000000..ba267ea0fdf472cea9e0a516e852b2f913539232
--- /dev/null
+++ b/YukkiMusic/plugins/tools/songs.py
@@ -0,0 +1,311 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import os
+import re
+
+import yt_dlp
+from pykeyboard import InlineKeyboard
+from pyrogram import enums
+from pyrogram import filters
+from pyrogram.types import (InlineKeyboardButton,
+ InlineKeyboardMarkup, InputMediaAudio,
+ InputMediaVideo, Message)
+
+from config import (BANNED_USERS, SONG_DOWNLOAD_DURATION,
+ SONG_DOWNLOAD_DURATION_LIMIT)
+from strings import get_command
+from YukkiMusic import YouTube, app
+from YukkiMusic.utils.decorators.language import language, languageCB
+from YukkiMusic.utils.formatters import convert_bytes
+from YukkiMusic.utils.inline.song import song_markup
+
+# Command
+SONG_COMMAND = get_command("SONG_COMMAND")
+
+
+@app.on_message(
+ filters.command(SONG_COMMAND)
+ & filters.group
+ & ~BANNED_USERS
+)
+@language
+async def song_commad_group(client, message: Message, _):
+ upl = InlineKeyboardMarkup(
+ [
+ [
+ InlineKeyboardButton(
+ text=_["SG_B_1"],
+ url=f"https://t.me/{app.username}?start=song",
+ ),
+ ]
+ ]
+ )
+ await message.reply_text(_["song_1"], reply_markup=upl)
+
+
+# Song Module
+
+
+@app.on_message(
+ filters.command(SONG_COMMAND)
+ & filters.private
+ & ~BANNED_USERS
+)
+@language
+async def song_commad_private(client, message: Message, _):
+ await message.delete()
+ url = await YouTube.url(message)
+ if url:
+ if not await YouTube.exists(url):
+ return await message.reply_text(_["song_5"])
+ mystic = await message.reply_text(_["play_1"])
+ (
+ title,
+ duration_min,
+ duration_sec,
+ thumbnail,
+ vidid,
+ ) = await YouTube.details(url)
+ if str(duration_min) == "None":
+ return await mystic.edit_text(_["song_3"])
+ if int(duration_sec) > SONG_DOWNLOAD_DURATION_LIMIT:
+ return await mystic.edit_text(
+ _["play_4"].format(
+ SONG_DOWNLOAD_DURATION, duration_min
+ )
+ )
+ buttons = song_markup(_, vidid)
+ await mystic.delete()
+ return await message.reply_photo(
+ thumbnail,
+ caption=_["song_4"].format(title),
+ reply_markup=InlineKeyboardMarkup(buttons),
+ )
+ else:
+ if len(message.command) < 2:
+ return await message.reply_text(_["song_2"])
+ mystic = await message.reply_text(_["play_1"])
+ query = message.text.split(None, 1)[1]
+ try:
+ (
+ title,
+ duration_min,
+ duration_sec,
+ thumbnail,
+ vidid,
+ ) = await YouTube.details(query)
+ except:
+ return await mystic.edit_text(_["play_3"])
+ if str(duration_min) == "None":
+ return await mystic.edit_text(_["song_3"])
+ if int(duration_sec) > SONG_DOWNLOAD_DURATION_LIMIT:
+ return await mystic.edit_text(
+ _["play_6"].format(SONG_DOWNLOAD_DURATION, duration_min)
+ )
+ buttons = song_markup(_, vidid)
+ await mystic.delete()
+ return await message.reply_photo(
+ thumbnail,
+ caption=_["song_4"].format(title),
+ reply_markup=InlineKeyboardMarkup(buttons),
+ )
+
+
+@app.on_callback_query(
+ filters.regex(pattern=r"song_back") & ~BANNED_USERS
+)
+@languageCB
+async def songs_back_helper(client, CallbackQuery, _):
+ callback_data = CallbackQuery.data.strip()
+ callback_request = callback_data.split(None, 1)[1]
+ stype, vidid = callback_request.split("|")
+ buttons = song_markup(_, vidid)
+ return await CallbackQuery.edit_message_reply_markup(
+ reply_markup=InlineKeyboardMarkup(buttons)
+ )
+
+
+@app.on_callback_query(
+ filters.regex(pattern=r"song_helper") & ~BANNED_USERS
+)
+@languageCB
+async def song_helper_cb(client, CallbackQuery, _):
+ callback_data = CallbackQuery.data.strip()
+ callback_request = callback_data.split(None, 1)[1]
+ stype, vidid = callback_request.split("|")
+ try:
+ await CallbackQuery.answer(_["song_6"], show_alert=True)
+ except:
+ pass
+ if stype == "audio":
+ try:
+ formats_available, link = await YouTube.formats(
+ vidid, True
+ )
+ except:
+ return await CallbackQuery.edit_message_text(_["song_7"])
+ keyboard = InlineKeyboard()
+ done = []
+ for x in formats_available:
+ check = x["format"]
+ if "audio" in check:
+ if x["filesize"] is None:
+ continue
+ form = x["format_note"].title()
+ if form not in done:
+ done.append(form)
+ else:
+ continue
+ sz = convert_bytes(x["filesize"])
+ fom = x["format_id"]
+ keyboard.row(
+ InlineKeyboardButton(
+ text=f"{form} Quality Audio = {sz}",
+ callback_data=f"song_download {stype}|{fom}|{vidid}",
+ ),
+ )
+ keyboard.row(
+ InlineKeyboardButton(
+ text=_["BACK_BUTTON"],
+ callback_data=f"song_back {stype}|{vidid}",
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"], callback_data=f"close"
+ ),
+ )
+ return await CallbackQuery.edit_message_reply_markup(
+ reply_markup=keyboard
+ )
+ else:
+ try:
+ formats_available, link = await YouTube.formats(
+ vidid, True
+ )
+ except Exception as e:
+ print(e)
+ return await CallbackQuery.edit_message_text(_["song_7"])
+ keyboard = InlineKeyboard()
+ # AVC Formats Only [ YUKKI MUSIC BOT ]
+ done = [160, 133, 134, 135, 136, 137, 298, 299, 264, 304, 266]
+ for x in formats_available:
+ check = x["format"]
+ if x["filesize"] is None:
+ continue
+ if int(x["format_id"]) not in done:
+ continue
+ sz = convert_bytes(x["filesize"])
+ ap = check.split("-")[1]
+ to = f"{ap} = {sz}"
+ keyboard.row(
+ InlineKeyboardButton(
+ text=to,
+ callback_data=f"song_download {stype}|{x['format_id']}|{vidid}",
+ )
+ )
+ keyboard.row(
+ InlineKeyboardButton(
+ text=_["BACK_BUTTON"],
+ callback_data=f"song_back {stype}|{vidid}",
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"], callback_data=f"close"
+ ),
+ )
+ return await CallbackQuery.edit_message_reply_markup(
+ reply_markup=keyboard
+ )
+
+
+# Downloading Songs Here
+
+
+@app.on_callback_query(
+ filters.regex(pattern=r"song_download") & ~BANNED_USERS
+)
+@languageCB
+async def song_download_cb(client, CallbackQuery, _):
+ try:
+ await CallbackQuery.answer("Downloading")
+ except:
+ pass
+ callback_data = CallbackQuery.data.strip()
+ callback_request = callback_data.split(None, 1)[1]
+ stype, format_id, vidid = callback_request.split("|")
+ mystic = await CallbackQuery.edit_message_text(_["song_8"])
+ yturl = f"https://www.youtube.com/watch?v={vidid}"
+ with yt_dlp.YoutubeDL({"quiet": True}) as ytdl:
+ x = ytdl.extract_info(yturl, download=False)
+ title = (x["title"]).title()
+ title = re.sub("\W+", " ", title)
+ thumb_image_path = await CallbackQuery.message.download()
+ duration = x["duration"]
+ if stype == "video":
+ thumb_image_path = await CallbackQuery.message.download()
+ width = CallbackQuery.message.photo.width
+ height = CallbackQuery.message.photo.height
+ try:
+ file_path = await YouTube.download(
+ yturl,
+ mystic,
+ songvideo=True,
+ format_id=format_id,
+ title=title,
+ )
+ except Exception as e:
+ return await mystic.edit_text(_["song_9"].format(e))
+ med = InputMediaVideo(
+ media=file_path,
+ duration=duration,
+ width=width,
+ height=height,
+ thumb=thumb_image_path,
+ caption=title,
+ supports_streaming=True,
+ )
+ await mystic.edit_text(_["song_11"])
+ await app.send_chat_action(
+ chat_id=CallbackQuery.message.chat.id,
+ action=enums.ChatAction.UPLOAD_VIDEO,
+ )
+ try:
+ await CallbackQuery.edit_message_media(media=med)
+ except Exception as e:
+ print(e)
+ return await mystic.edit_text(_["song_10"])
+ os.remove(file_path)
+ elif stype == "audio":
+ try:
+ filename = await YouTube.download(
+ yturl,
+ mystic,
+ songaudio=True,
+ format_id=format_id,
+ title=title,
+ )
+ except Exception as e:
+ return await mystic.edit_text(_["song_9"].format(e))
+ med = InputMediaAudio(
+ media=filename,
+ caption=title,
+ thumb=thumb_image_path,
+ title=title,
+ performer=x["uploader"],
+ )
+ await mystic.edit_text(_["song_11"])
+ await app.send_chat_action(
+ chat_id=CallbackQuery.message.chat.id,
+ action=enums.ChatAction.UPLOAD_VIDEO,
+ )
+ try:
+ await CallbackQuery.edit_message_media(media=med)
+ except Exception as e:
+ print(e)
+ return await mystic.edit_text(_["song_10"])
+ os.remove(filename)
diff --git a/YukkiMusic/plugins/tools/speedtest.py b/YukkiMusic/plugins/tools/speedtest.py
new file mode 100644
index 0000000000000000000000000000000000000000..f58947b0440106354c7c1abc2434aa17da5954a4
--- /dev/null
+++ b/YukkiMusic/plugins/tools/speedtest.py
@@ -0,0 +1,59 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import asyncio
+import speedtest
+from pyrogram import filters
+from strings import get_command
+from YukkiMusic import app
+from YukkiMusic.misc import SUDOERS
+
+# Commands
+SPEEDTEST_COMMAND = get_command("SPEEDTEST_COMMAND")
+
+
+def testspeed(m):
+ try:
+ test = speedtest.Speedtest()
+ test.get_best_server()
+ m = m.edit("Running Download SpeedTest")
+ test.download()
+ m = m.edit("Running Upload SpeedTest")
+ test.upload()
+ test.results.share()
+ result = test.results.dict()
+ m = m.edit("Sharing SpeedTest Results")
+ except Exception as e:
+ return m.edit(e)
+ return result
+
+
+@app.on_message(filters.command(SPEEDTEST_COMMAND) & SUDOERS)
+async def speedtest_function(client, message):
+ m = await message.reply_text("Running Speed test")
+ loop = asyncio.get_event_loop()
+ result = await loop.run_in_executor(None, testspeed, m)
+ output = f"""**Speedtest Results**
+
+**Client:**
+**__ISP:__** {result['client']['isp']}
+**__Country:__** {result['client']['country']}
+
+**Server:**
+**__Name:__** {result['server']['name']}
+**__Country:__** {result['server']['country']}, {result['server']['cc']}
+**__Sponsor:__** {result['server']['sponsor']}
+**__Latency:__** {result['server']['latency']}
+**__Ping:__** {result['ping']}"""
+ msg = await app.send_photo(
+ chat_id=message.chat.id,
+ photo=result["share"],
+ caption=output
+ )
+ await m.delete()
diff --git a/YukkiMusic/plugins/tools/stats.py b/YukkiMusic/plugins/tools/stats.py
new file mode 100644
index 0000000000000000000000000000000000000000..e7f855e79daf59a2c15bcb44220d934d672cefe0
--- /dev/null
+++ b/YukkiMusic/plugins/tools/stats.py
@@ -0,0 +1,472 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import asyncio
+import platform
+from sys import version as pyver
+
+import psutil
+from pyrogram import __version__ as pyrover
+from pyrogram import filters
+from pyrogram.errors import MessageIdInvalid
+from pyrogram.types import CallbackQuery, InputMediaPhoto, Message
+from pytgcalls.__version__ import __version__ as pytgver
+
+import config
+from config import BANNED_USERS, MUSIC_BOT_NAME
+from strings import get_command
+from YukkiMusic import YouTube, app
+from YukkiMusic.core.userbot import assistants
+from YukkiMusic.misc import SUDOERS, pymongodb
+from YukkiMusic.plugins import ALL_MODULES
+from YukkiMusic.utils.database import (get_global_tops,
+ get_particulars, get_queries,
+ get_served_chats,
+ get_served_users, get_sudoers,
+ get_top_chats, get_topp_users)
+from YukkiMusic.utils.decorators.language import language, languageCB
+from YukkiMusic.utils.inline.stats import (back_stats_buttons,
+ back_stats_markup,
+ get_stats_markup,
+ overallback_stats_markup,
+ stats_buttons,
+ top_ten_stats_markup)
+
+loop = asyncio.get_running_loop()
+
+# Commands
+GSTATS_COMMAND = get_command("GSTATS_COMMAND")
+STATS_COMMAND = get_command("STATS_COMMAND")
+
+
+@app.on_message(
+ filters.command(STATS_COMMAND)
+ & filters.group
+ & ~BANNED_USERS
+)
+@language
+async def stats_global(client, message: Message, _):
+ upl = stats_buttons(
+ _, True if message.from_user.id in SUDOERS else False
+ )
+ await message.reply_photo(
+ photo=config.STATS_IMG_URL,
+ caption=_["gstats_11"].format(config.MUSIC_BOT_NAME),
+ reply_markup=upl,
+ )
+
+
+@app.on_message(
+ filters.command(GSTATS_COMMAND)
+ & filters.group
+ & ~BANNED_USERS
+)
+@language
+async def gstats_global(client, message: Message, _):
+ mystic = await message.reply_text(_["gstats_1"])
+ stats = await get_global_tops()
+ if not stats:
+ await asyncio.sleep(1)
+ return await mystic.edit(_["gstats_2"])
+
+ def get_stats():
+ results = {}
+ for i in stats:
+ top_list = stats[i]["spot"]
+ results[str(i)] = top_list
+ list_arranged = dict(
+ sorted(
+ results.items(),
+ key=lambda item: item[1],
+ reverse=True,
+ )
+ )
+ if not results:
+ return mystic.edit(_["gstats_2"])
+ videoid = None
+ co = None
+ for vidid, count in list_arranged.items():
+ if vidid == "telegram":
+ continue
+ else:
+ videoid = vidid
+ co = count
+ break
+ return videoid, co
+
+ try:
+ videoid, co = await loop.run_in_executor(None, get_stats)
+ except Exception as e:
+ print(e)
+ return
+ (
+ title,
+ duration_min,
+ duration_sec,
+ thumbnail,
+ vidid,
+ ) = await YouTube.details(videoid, True)
+ title = title.title()
+ final = f"Top Most Played Track on {MUSIC_BOT_NAME}\n\n**Title:** {title}\n\nPlayed** {co} **times"
+ upl = get_stats_markup(
+ _, True if message.from_user.id in SUDOERS else False
+ )
+ await app.send_photo(
+ message.chat.id,
+ photo=thumbnail,
+ caption=final,
+ reply_markup=upl,
+ )
+ await mystic.delete()
+
+
+@app.on_callback_query(filters.regex("GetStatsNow") & ~BANNED_USERS)
+@languageCB
+async def top_users_ten(client, CallbackQuery: CallbackQuery, _):
+ chat_id = CallbackQuery.message.chat.id
+ callback_data = CallbackQuery.data.strip()
+ what = callback_data.split(None, 1)[1]
+ upl = back_stats_markup(_)
+ try:
+ await CallbackQuery.answer()
+ except:
+ pass
+ mystic = await CallbackQuery.edit_message_text(
+ _["gstats_3"].format(
+ f"of {CallbackQuery.message.chat.title}"
+ if what == "Here"
+ else what
+ )
+ )
+ if what == "Tracks":
+ stats = await get_global_tops()
+ elif what == "Chats":
+ stats = await get_top_chats()
+ elif what == "Users":
+ stats = await get_topp_users()
+ elif what == "Here":
+ stats = await get_particulars(chat_id)
+ if not stats:
+ await asyncio.sleep(1)
+ return await mystic.edit(_["gstats_2"], reply_markup=upl)
+ queries = await get_queries()
+
+ def get_stats():
+ results = {}
+ for i in stats:
+ top_list = (
+ stats[i]
+ if what in ["Chats", "Users"]
+ else stats[i]["spot"]
+ )
+ results[str(i)] = top_list
+ list_arranged = dict(
+ sorted(
+ results.items(),
+ key=lambda item: item[1],
+ reverse=True,
+ )
+ )
+ if not results:
+ return mystic.edit(_["gstats_2"], reply_markup=upl)
+ msg = ""
+ limit = 0
+ total_count = 0
+ if what in ["Tracks", "Here"]:
+ for items, count in list_arranged.items():
+ total_count += count
+ if limit == 10:
+ continue
+ limit += 1
+ details = stats.get(items)
+ title = (details["title"][:35]).title()
+ if items == "telegram":
+ msg += f"đ[Telegram Files and Audios](https://t.me/telegram) ** played {count} times**\n\n"
+ else:
+ msg += f"đ [{title}](https://www.youtube.com/watch?v={items}) ** played {count} times**\n\n"
+
+ temp = (
+ _["gstats_4"].format(
+ queries,
+ config.MUSIC_BOT_NAME,
+ len(stats),
+ total_count,
+ limit,
+ )
+ if what == "Tracks"
+ else _["gstats_7"].format(
+ len(stats), total_count, limit
+ )
+ )
+ msg = temp + msg
+ return msg, list_arranged
+
+ try:
+ msg, list_arranged = await loop.run_in_executor(
+ None, get_stats
+ )
+ except Exception as e:
+ print(e)
+ return
+ limit = 0
+ if what in ["Users", "Chats"]:
+ for items, count in list_arranged.items():
+ if limit == 10:
+ break
+ try:
+ extract = (
+ (await app.get_users(items)).first_name
+ if what == "Users"
+ else (await app.get_chat(items)).title
+ )
+ if extract is None:
+ continue
+ await asyncio.sleep(0.5)
+ except:
+ continue
+ limit += 1
+ msg += f"đ`{extract}` played {count} times on bot.\n\n"
+ temp = (
+ _["gstats_5"].format(limit, MUSIC_BOT_NAME)
+ if what == "Chats"
+ else _["gstats_6"].format(limit, MUSIC_BOT_NAME)
+ )
+ msg = temp + msg
+ med = InputMediaPhoto(media=config.GLOBAL_IMG_URL, caption=msg)
+ try:
+ await CallbackQuery.edit_message_media(
+ media=med, reply_markup=upl
+ )
+ except MessageIdInvalid:
+ await CallbackQuery.message.reply_photo(
+ photo=config.GLOBAL_IMG_URL, caption=msg, reply_markup=upl
+ )
+
+
+@app.on_callback_query(filters.regex("TopOverall") & ~BANNED_USERS)
+@languageCB
+async def overall_stats(client, CallbackQuery, _):
+ callback_data = CallbackQuery.data.strip()
+ what = callback_data.split(None, 1)[1]
+ if what != "s":
+ upl = overallback_stats_markup(_)
+ else:
+ upl = back_stats_buttons(_)
+ try:
+ await CallbackQuery.answer()
+ except:
+ pass
+ await CallbackQuery.edit_message_text(_["gstats_8"])
+ served_chats = len(await get_served_chats())
+ served_users = len(await get_served_users())
+ total_queries = await get_queries()
+ blocked = len(BANNED_USERS)
+ sudoers = len(SUDOERS)
+ mod = len(ALL_MODULES)
+ assistant = len(assistants)
+ playlist_limit = config.SERVER_PLAYLIST_LIMIT
+ fetch_playlist = config.PLAYLIST_FETCH_LIMIT
+ song = config.SONG_DOWNLOAD_DURATION
+ play_duration = config.DURATION_LIMIT_MIN
+ if config.AUTO_LEAVING_ASSISTANT == str(True):
+ ass = "Yes"
+ else:
+ ass = "No"
+ cm = config.CLEANMODE_DELETE_MINS
+ text = f"""**Bot's Stats and Information:**
+
+**Imported Modules:** {mod}
+**Served Chats:** {served_chats}
+**Served Users:** {served_users}
+**Blocked Users:** {blocked}
+**Sudo Users:** {sudoers}
+
+**Total Queries:** {total_queries}
+**Total Assistants:** {assistant}
+**Auto Leaving Assistant:** {ass}
+**Cleanmode duration:** {cm} Mins
+
+**Play Duration Limit:** {play_duration} Mins
+**Song Download Limit:** {song} Mins
+**Bot's Server Playlist Limit:** {playlist_limit}
+**Playlist Play Limit:** {fetch_playlist}"""
+ med = InputMediaPhoto(media=config.STATS_IMG_URL, caption=text)
+ try:
+ await CallbackQuery.edit_message_media(
+ media=med, reply_markup=upl
+ )
+ except MessageIdInvalid:
+ await CallbackQuery.message.reply_photo(
+ photo=config.STATS_IMG_URL, caption=text, reply_markup=upl
+ )
+
+
+@app.on_callback_query(filters.regex("bot_stats_sudo"))
+@languageCB
+async def overall_stats(client, CallbackQuery, _):
+ if CallbackQuery.from_user.id not in SUDOERS:
+ return await CallbackQuery.answer(
+ "Only for Sudo Users", show_alert=True
+ )
+ callback_data = CallbackQuery.data.strip()
+ what = callback_data.split(None, 1)[1]
+ if what != "s":
+ upl = overallback_stats_markup(_)
+ else:
+ upl = back_stats_buttons(_)
+ try:
+ await CallbackQuery.answer()
+ except:
+ pass
+ await CallbackQuery.edit_message_text(_["gstats_8"])
+ sc = platform.system()
+ p_core = psutil.cpu_count(logical=False)
+ t_core = psutil.cpu_count(logical=True)
+ ram = (
+ str(round(psutil.virtual_memory().total / (1024.0**3)))
+ + " GB"
+ )
+ try:
+ cpu_freq = psutil.cpu_freq().current
+ if cpu_freq >= 1000:
+ cpu_freq = f"{round(cpu_freq / 1000, 2)}GHz"
+ else:
+ cpu_freq = f"{round(cpu_freq, 2)}MHz"
+ except:
+ cpu_freq = "Unable to Fetch"
+ hdd = psutil.disk_usage("/")
+ total = hdd.total / (1024.0**3)
+ total = str(total)
+ used = hdd.used / (1024.0**3)
+ used = str(used)
+ free = hdd.free / (1024.0**3)
+ free = str(free)
+ mod = len(ALL_MODULES)
+ db = pymongodb
+ call = db.command("dbstats")
+ datasize = call["dataSize"] / 1024
+ datasize = str(datasize)
+ storage = call["storageSize"] / 1024
+ objects = call["objects"]
+ collections = call["collections"]
+ status = db.command("serverStatus")
+ query = status["opcounters"]["query"]
+ mongouptime = status["uptime"] / 86400
+ mongouptime = str(mongouptime)
+ served_chats = len(await get_served_chats())
+ served_users = len(await get_served_users())
+ total_queries = await get_queries()
+ blocked = len(BANNED_USERS)
+ sudoers = len(await get_sudoers())
+ text = f""" **Bot's Stats and Information:**
+
+**Imported Modules:** {mod}
+**Platform:** {sc}
+**Ram:** {ram}
+**Physical Cores:** {p_core}
+**Total Cores:** {t_core}
+**Cpu Frequency:** {cpu_freq}
+
+**Python Version :** {pyver.split()[0]}
+**Pyrogram Version :** {pyrover}
+**Py-TgCalls Version :** {pytgver}
+
+**Storage Avail:** {total[:4]} GiB
+**Storage Used:** {used[:4]} GiB
+**Storage Left:** {free[:4]} GiB
+
+**Served Chats:** {served_chats}
+**Served Users:** {served_users}
+**Blocked Users:** {blocked}
+**Sudo Users:** {sudoers}
+
+**Mongo Uptime:** {mongouptime[:4]} Days
+**Total DB Size:** {datasize[:6]} Mb
+**Total DB Storage:** {storage} Mb
+**Total DB Collections:** {collections}
+**Total DB Keys:** {objects}
+**Total DB Queries:** `{query}`
+**Total Bot Queries:** `{total_queries} `
+ """
+ med = InputMediaPhoto(media=config.STATS_IMG_URL, caption=text)
+ try:
+ await CallbackQuery.edit_message_media(
+ media=med, reply_markup=upl
+ )
+ except MessageIdInvalid:
+ await CallbackQuery.message.reply_photo(
+ photo=config.STATS_IMG_URL, caption=text, reply_markup=upl
+ )
+
+
+@app.on_callback_query(
+ filters.regex(pattern=r"^(TOPMARKUPGET|GETSTATS|GlobalStats)$")
+ & ~BANNED_USERS
+)
+@languageCB
+async def back_buttons(client, CallbackQuery, _):
+ try:
+ await CallbackQuery.answer()
+ except:
+ pass
+ command = CallbackQuery.matches[0].group(1)
+ if command == "TOPMARKUPGET":
+ upl = top_ten_stats_markup(_)
+ med = InputMediaPhoto(
+ media=config.GLOBAL_IMG_URL,
+ caption=_["gstats_9"],
+ )
+ try:
+ await CallbackQuery.edit_message_media(
+ media=med, reply_markup=upl
+ )
+ except MessageIdInvalid:
+ await CallbackQuery.message.reply_photo(
+ photo=config.GLOBAL_IMG_URL,
+ caption=_["gstats_9"],
+ reply_markup=upl,
+ )
+ if command == "GlobalStats":
+ upl = get_stats_markup(
+ _,
+ True if CallbackQuery.from_user.id in SUDOERS else False,
+ )
+ med = InputMediaPhoto(
+ media=config.GLOBAL_IMG_URL,
+ caption=_["gstats_10"].format(config.MUSIC_BOT_NAME),
+ )
+ try:
+ await CallbackQuery.edit_message_media(
+ media=med, reply_markup=upl
+ )
+ except MessageIdInvalid:
+ await CallbackQuery.message.reply_photo(
+ photo=config.GLOBAL_IMG_URL,
+ caption=_["gstats_10"].format(config.MUSIC_BOT_NAME),
+ reply_markup=upl,
+ )
+ if command == "GETSTATS":
+ upl = stats_buttons(
+ _,
+ True if CallbackQuery.from_user.id in SUDOERS else False,
+ )
+ med = InputMediaPhoto(
+ media=config.STATS_IMG_URL,
+ caption=_["gstats_11"].format(config.MUSIC_BOT_NAME),
+ )
+ try:
+ await CallbackQuery.edit_message_media(
+ media=med, reply_markup=upl
+ )
+ except MessageIdInvalid:
+ await CallbackQuery.message.reply_photo(
+ photo=config.STATS_IMG_URL,
+ caption=_["gstats_11"].format(config.MUSIC_BOT_NAME),
+ reply_markup=upl,
+ )
diff --git a/YukkiMusic/server/__init__.py b/YukkiMusic/server/__init__.py
new file mode 100644
index 0000000000000000000000000000000000000000..9603cece66d735bcea0da0115c66e231c4735691
--- /dev/null
+++ b/YukkiMusic/server/__init__.py
@@ -0,0 +1,21 @@
+from aiohttp import web
+#from .routes_main import routes
+#from .routes_api import api
+
+from YukkiMusic.platforms.file_properties import get_file_info,get_name
+
+#from YukkiMusic.server.routes_api import fetch_youtube
+from YukkiMusic.server.routes_TGFileAPI import TGFILEAPI
+from YukkiMusic.server.routes_appV2 import sub_appV2
+
+async def root_route_handler(request):
+ return web.json_response({"status": "alive", "message": "Server is running"})
+
+def web_server():
+ web_app = web.Application(client_max_size=50)
+ web_app.router.add_get('/', root_route_handler)
+ web_app.add_subapp('/dl', TGFILEAPI)
+ web_app['TGFILEAPI'] = TGFILEAPI
+ web_app.add_subapp('/appV2', sub_appV2)
+ web_app['sub_appV2'] = sub_appV2
+ return web_app
\ No newline at end of file
diff --git a/YukkiMusic/server/__main__.py b/YukkiMusic/server/__main__.py
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/YukkiMusic/server/routes_TGFileAPI.py b/YukkiMusic/server/routes_TGFileAPI.py
new file mode 100644
index 0000000000000000000000000000000000000000..f60a7f65ef7b706903acbc0ce438bfa93c8cab0d
--- /dev/null
+++ b/YukkiMusic/server/routes_TGFileAPI.py
@@ -0,0 +1,119 @@
+
+import traceback
+import math
+from aiohttp import web
+import config
+from pyrogram.file_id import FileId
+from aiohttp.http_exceptions import BadStatusLine
+
+
+from YukkiMusic import app, userbot
+from YukkiMusic.core.bot import YukkiBot
+from YukkiMusic.core.userbot import multi_clients, req_client
+from YukkiMusic.platforms.custom_dl import ByteStreamer
+
+
+
+
+class InvalidHash(Exception):
+ message = "Invalid hash"
+
+class FIleNotFound(Exception):
+ message = "File not found"
+
+
+
+class_cache={}
+async def media_streamer(request: web.Request, db_id: str):
+ range_header = request.headers.get("Range", 0)
+
+ #index = min(work_loads, key=work_loads.get)
+ #faster_client = multi_clients[index]
+ client=app
+ #client = await req_client()
+ #get_me = await app.get_me()
+ #print(db_id,int(config.LOG_GROUP_ID),get_me)
+ msg = await client.get_messages(int(config.LOG_GROUP_ID),int(db_id))
+
+ #print(msg)
+ #tg_connect = ByteStreamer(client['client'])
+ tg_connect = ByteStreamer(client)
+ #class_cache[client['client']] = tg_connect
+ #logging.debug("before calling get_file_properties")
+ file_info = get_file_info(msg)
+ #file_i = file_info['file']['file_id']
+ file_id = FileId.decode(file_info['file']['file_id'])
+ #print(file_id)
+ #logging.debug("after calling get_file_properties")
+
+ file_size = file_info['file']['file_size']
+
+ if range_header:
+ from_bytes, until_bytes = range_header.replace("bytes=", "").split("-")
+ from_bytes = int(from_bytes)
+ until_bytes = int(until_bytes) if until_bytes else file_size - 1
+ else:
+ from_bytes = request.http_range.start or 0
+ until_bytes = (request.http_range.stop or file_size) - 1
+
+ if (until_bytes > file_size) or (from_bytes < 0) or (until_bytes
+ < from_bytes):
+ return web.Response(
+ status=416,
+ body="416: Range not satisfiable",
+ headers={"Content-Range": f"bytes */{file_size}"},
+ )
+
+ chunk_size = 512 * 1024
+ until_bytes = min(until_bytes, file_size - 1)
+
+ offset = from_bytes - (from_bytes % chunk_size)
+ first_part_cut = from_bytes - offset
+ last_part_cut = until_bytes % chunk_size + 1
+
+ req_length = until_bytes - from_bytes + 1
+ part_count = math.ceil(until_bytes / chunk_size) - math.floor(
+ offset / chunk_size)
+ body = tg_connect.yield_file(file_id, client, offset, first_part_cut,
+ last_part_cut, part_count, chunk_size)
+
+ mime_type = file_info['file']['mime_type']
+ file_name = get_name(msg)
+ disposition = "attachment"
+
+ # if "video/" in mime_type or "audio/" in mime_type:
+ # disposition = "inline"
+
+ return web.Response(
+ status=206 if range_header else 200,
+ body=body,
+ headers={
+ "Content-Type": f"{mime_type}",
+ "Content-Range": f"bytes {from_bytes}-{until_bytes}/{file_size}",
+ "Content-Length": str(req_length),
+ "Content-Disposition": f'{disposition}; filename="{file_name}"',
+ "Accept-Ranges": "bytes",
+ },
+ )
+
+
+async def stream_handler(request: web.Request):
+ try:
+ path = request.match_info["path"]
+ return await media_streamer(request, path)
+ except InvalidHash as e:
+ raise web.HTTPForbidden(text=e.message)
+ except FIleNotFound as e:
+ raise web.HTTPNotFound(text=e.message)
+ except (AttributeError, BadStatusLine, ConnectionResetError):
+ pass
+ except Exception as e:
+ traceback.print_exc()
+ #logging.critical(e.with_traceback(None))
+ #logging.debug(traceback.format_exc())
+ raise web.HTTPInternalServerError(text=str(e))
+
+
+TGFILEAPI = web.Application()
+
+TGFILEAPI.router.add_get('/{path}', stream_handler)
diff --git a/YukkiMusic/server/routes_appV2.py b/YukkiMusic/server/routes_appV2.py
new file mode 100644
index 0000000000000000000000000000000000000000..c958755a907101393f44e6a1b5098f75467fd7f6
--- /dev/null
+++ b/YukkiMusic/server/routes_appV2.py
@@ -0,0 +1,195 @@
+
+import json
+import jinja2
+import argparse
+import urllib.parse
+import aiohttp_jinja2
+from typing import Any, Dict
+from aiohttp import web, ClientSession
+from aiohttp.http_exceptions import BadStatusLine
+from googleapiclient.discovery import build
+from googleapiclient.errors import HttpError
+
+from YukkiMusic.platforms.YoutubeAPI.InnertubeAPI import trending_with_post_api
+from YukkiMusic.platforms.YoutubeAPI.BS4scrapAPI import tranding_videos,search_videos
+from YukkiMusic.platforms.YoutubeAPI.InnertubeAPI import search_videos_with_post_api,search_scroll_videos_with_post_api
+
+session = ClientSession()
+#from YukkiMusic.alive import web_server
+
+parser = argparse.ArgumentParser()
+parser.add_argument('--q', help='Search term', default='Google')
+parser.add_argument('--max-results', help='Max results', default=25)
+args = parser.parse_args()
+
+# Set DEVELOPER_KEY to the API key value from the APIs & auth > Registered apps
+# tab of
+# https://cloud.google.com/console
+# Please ensure that you have enabled the YouTube Data API for your project.
+def url_find(route_name, *args, **kwargs):
+ # Check if route belongs to sub-application
+ if route_name.startswith('subapp_'):
+ route_name = route_name[len('subapp_'):]
+ return str(sub_app.router[route_name])
+ # Otherwise, it belongs to the main application
+ return str('/')
+
+async def handle_v2(request):
+ return web.Response(text="Hello from app v2!")
+
+async def nextPage(request):
+ query = request.query.get('q', '').lower()
+ DEVELOPER_KEY = 'AIzaSyAJB2yzah87l58QCNUFrYOrzu_5I7RFQZY'
+ YOUTUBE_API_SERVICE_NAME = 'youtube'
+ YOUTUBE_API_VERSION = 'v3'
+
+
+ youtube = build(YOUTUBE_API_SERVICE_NAME, YOUTUBE_API_VERSION,
+ developerKey=DEVELOPER_KEY)
+
+ # Call the search.list method to retrieve results matching the specified
+ # query term.
+ if request.query.get('pageToken', ''):
+ search_response = youtube.search().list(
+ q=query,
+ part='id,snippet',
+ pageToken=request.query.get('pageToken', ''),
+ maxResults=args.max_results
+ ).execute()
+ else:
+ search_response = youtube.search().list(
+ q=query,
+ part='id,snippet',
+ maxResults=args.max_results
+ ).execute()
+
+ #search_response=""
+ videos = []
+ channels = []
+ playlists = []
+
+ # Add each result to the appropriate list, and then display the lists of
+ # matching videos, channels, and playlists.
+ #search_result['snippet']['title'],
+ #search_result['id']['videoId']
+ for search_result in search_response.get('items', []):
+ if search_result['id']['kind'] == 'youtube#video':
+ videos.append(search_result)
+ elif search_result['id']['kind'] == 'youtube#channel':
+ channels.append('%s (%s)' % (search_result['snippet']['title'],
+ search_result['id']['channelId']))
+ elif search_result['id']['kind'] == 'youtube#playlist':
+ playlists.append('%s (%s)' % (search_result['snippet']['title'],
+ search_result['id']['playlistId']))
+ #print(videos)
+ data=str({'page':'search','data':videos,'nextPageToken':search_response.get('nextPageToken','')})
+
+
+ return web.Response(text=data)
+
+async def searchquery(request):
+ query = request.query.get('q', '').lower()
+ async with session.get(f'https://cors-handlers.vercel.app/api/?url=http%3A%2F%2Fsuggestqueries.google.com%2Fcomplete%2Fsearch%3Fclient%3Dfirefox%26ds%3Dyt%26q={query}') as resp:
+ data=await resp.text()
+ #print(data)
+ return web.Response(text=data)
+
+
+async def testAPI(request):
+ #query = request.query.get('q', '').lower()
+
+ resp = await trending_with_post_api("Now")
+ print(resp)
+ return resp
+
+
+#@sub_app.get("/up", allow_head=True)
+@aiohttp_jinja2.template("index.html")
+async def Index_page(request: web.Request) -> Dict[str, Any]:
+
+ return {'page':'main'}
+
+@aiohttp_jinja2.template("index.html")
+async def Home_Component(request: web.Request):
+
+ query = "now" if request.query.get('q', '') == "" else request.query.get('q', '')
+
+ videos = await trending_with_post_api(query)
+ # html_content = f"""
+ #
+ # Home Page{str("hello")}
+ # Content for the Home page goes here.
+ #
+ # """
+ # return web.Response(text=html_content, content_type='text/html')
+ return{'page':'home','data':videos}
+
+@aiohttp_jinja2.template("index.html")
+async def Subscribe_Component(request: web.Request) :
+ return {'page':'subscribed'}
+
+
+
+@aiohttp_jinja2.template("index.html")
+async def Search_Component(request: web.Request):
+ query = request.query.get('q', '')
+
+ #videos = await search_videos(query)
+ videos, nextPageToken = await search_videos_with_post_api(query)
+ if request.query.get('type', '')=='json':
+
+ return web.json_response({"page":"search","data": videos,'nextPageToken':nextPageToken})
+ else:
+ return{'page':'search','data':videos,'nextPageToken':nextPageToken}
+
+
+
+@aiohttp_jinja2.template("index.html")
+async def Scroll_Component(request: web.Request):
+ query = request.query.get('q', '')
+
+ #videos = await search_videos(query)
+ videos, nextPageToken = await search_scroll_videos_with_post_api(query)
+ if request.query.get('type', '')=='json':
+
+ return web.json_response({"page":"search","data": videos,"nextPageToken":nextPageToken})
+ else:
+ return{'page':'search','data':videos,'nextPageToken':nextPageToken}
+
+
+@aiohttp_jinja2.template("index.html")
+async def Playlist_Component(request: web.Request) :
+ pass
+
+
+@aiohttp_jinja2.template("index.html")
+async def Function_Component(request: web.Request) :
+ return {'page':'functions'}
+
+
+
+sub_appV2 = web.Application()
+aiohttp_jinja2.setup(sub_appV2,loader=jinja2.FileSystemLoader('YukkiMusic/server/templates/HomeV2/pages/'))
+#env=aiohttp_jinja2.get_env(sub_app)
+#env.globals.update(url_find=url_find)
+#sub_app['static_root_url']='../static/'
+sub_appV2.router.add_static('/static/', path='YukkiMusic/server/templates/HomeV2/static/', name='static')
+sub_appV2.router.add_get('/', handle_v2)
+sub_appV2.router.add_get('/main', Index_page,name='main')
+sub_appV2.router.add_get('/home', Home_Component, name='home')
+sub_appV2.router.add_get('/subscribed', Subscribe_Component, name='subscribed')
+sub_appV2.router.add_get('/searchquery',searchquery,name='searchquery')
+sub_appV2.router.add_get('/search', Search_Component, name='search')
+sub_appV2.router.add_get('/playlist', Playlist_Component)
+sub_appV2.router.add_get('/functions', Function_Component, name='functions')
+sub_appV2.router.add_get('/nextPage', nextPage, name='nextPage')
+sub_appV2.router.add_get('/scroll', Scroll_Component, name='scroll')
+sub_appV2.router.add_get('/test', testAPI)
+
+
+'''
+sub_app.add_routes([
+ web.get('/main', Index_page,name='main'),
+ web.get('/home', Home_Component, name='home'),
+ web.get('/subscribed', Subscribe_Component, name='subscribed'),
+ web.get('/functions', Function_Component, name='functions')])'''
diff --git a/YukkiMusic/server/templates/HomeV2/pages/demo.html b/YukkiMusic/server/templates/HomeV2/pages/demo.html
new file mode 100644
index 0000000000000000000000000000000000000000..ad265bc754a7ebba91853e641b4ec723df791021
--- /dev/null
+++ b/YukkiMusic/server/templates/HomeV2/pages/demo.html
@@ -0,0 +1,8 @@
+
\ No newline at end of file
diff --git a/YukkiMusic/server/templates/HomeV2/pages/functions.html b/YukkiMusic/server/templates/HomeV2/pages/functions.html
new file mode 100644
index 0000000000000000000000000000000000000000..d93ed89900fb6e0e31771186969d71f06795ddf4
--- /dev/null
+++ b/YukkiMusic/server/templates/HomeV2/pages/functions.html
@@ -0,0 +1,8 @@
+
+
+
+ Function Page
+ Content for the Home page goes here.{{page}}
+
+
+
\ No newline at end of file
diff --git a/YukkiMusic/server/templates/HomeV2/pages/header.html b/YukkiMusic/server/templates/HomeV2/pages/header.html
new file mode 100644
index 0000000000000000000000000000000000000000..d25c3cdbea535dc3b9b0bc47d411f60f2771a8e7
--- /dev/null
+++ b/YukkiMusic/server/templates/HomeV2/pages/header.html
@@ -0,0 +1,399 @@
+
+
+
+
+
+
+ Date and Time Selector
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {% block content %}
+
+
+
+
+ {% endblock %}
+
+
+
+
+
+
\ No newline at end of file
diff --git a/YukkiMusic/server/templates/HomeV2/pages/home.html b/YukkiMusic/server/templates/HomeV2/pages/home.html
new file mode 100644
index 0000000000000000000000000000000000000000..135b3ca307f5fae0fc92bd4b1afc1321638433fa
--- /dev/null
+++ b/YukkiMusic/server/templates/HomeV2/pages/home.html
@@ -0,0 +1,27 @@
+
+
+
Youtube
+
+
+ {% include 'skeleton.html' %}
+ {%for video in data %}
+
+
+
+
{{video.length}}
+
+
+
{{video.title}}
+
+
{{video.channel}} ⠂ {{video.short_views}} ⠂ {{video.publishedTime}}
+
+
+
+ {% endfor %}
+
+
\ No newline at end of file
diff --git a/YukkiMusic/server/templates/HomeV2/pages/index.html b/YukkiMusic/server/templates/HomeV2/pages/index.html
new file mode 100644
index 0000000000000000000000000000000000000000..d40bccd2f197f212b588fb3e839a80a69aa8b345
--- /dev/null
+++ b/YukkiMusic/server/templates/HomeV2/pages/index.html
@@ -0,0 +1,62 @@
+{% include 'header.html' %}
+
+{% block content %}
+ {% if page == 'home' %}
+ {% include 'home.html' %}
+ {% elif page == 'subscribed' %}
+ {% include 'subscribed.html' %}
+ {% elif page == 'functions' %}
+ {% include 'functions.html' %}
+ {% elif page == 'search' %}
+ {% include 'search.html' %}
+ {% elif page == 'main' %}
+ {% include 'main.html' %}
+ {% endif %}
+{% endblock %}
+
+
+
+
+
+
diff --git a/YukkiMusic/server/templates/HomeV2/pages/main.html b/YukkiMusic/server/templates/HomeV2/pages/main.html
new file mode 100644
index 0000000000000000000000000000000000000000..9056e66ee003816b61eebfc61f7f2b45932b226d
--- /dev/null
+++ b/YukkiMusic/server/templates/HomeV2/pages/main.html
@@ -0,0 +1,33 @@
+
+Touch Me!
+
+
+
+
\ No newline at end of file
diff --git a/YukkiMusic/server/templates/HomeV2/pages/search.html b/YukkiMusic/server/templates/HomeV2/pages/search.html
new file mode 100644
index 0000000000000000000000000000000000000000..fa8b61cbc297604639f0341ce3a4da3041f2b8c4
--- /dev/null
+++ b/YukkiMusic/server/templates/HomeV2/pages/search.html
@@ -0,0 +1,25 @@
+
+
+ {{page}}
+
+ {% include 'skeleton.html' %}
+
+ {%for video in data %}
+
+
+
+
{{video.length}}
+
+
+
{{video.title}}
+
+
{{video.channel}} ⠂ {{video.short_views}} ⠂ {{video.publishedTime}}
+
+
+
+
+
+
+ {% endfor %}
+
+
\ No newline at end of file
diff --git a/YukkiMusic/server/templates/HomeV2/pages/skeleton.html b/YukkiMusic/server/templates/HomeV2/pages/skeleton.html
new file mode 100644
index 0000000000000000000000000000000000000000..a28176c471002703723eaed94b9874998563f9b2
--- /dev/null
+++ b/YukkiMusic/server/templates/HomeV2/pages/skeleton.html
@@ -0,0 +1,40 @@
+
+
+
+
+
diff --git a/YukkiMusic/server/templates/HomeV2/pages/subscribed.html b/YukkiMusic/server/templates/HomeV2/pages/subscribed.html
new file mode 100644
index 0000000000000000000000000000000000000000..0e47a177c6f0504b2c2e06f946920e8fb7a65a0b
--- /dev/null
+++ b/YukkiMusic/server/templates/HomeV2/pages/subscribed.html
@@ -0,0 +1,8 @@
+
+
+
+ Subscribed Page
+ Content for the Home page goes here.{{page}}
+
+
+
\ No newline at end of file
diff --git a/YukkiMusic/server/templates/HomeV2/static/css/style.css b/YukkiMusic/server/templates/HomeV2/static/css/style.css
new file mode 100644
index 0000000000000000000000000000000000000000..a970f320bf12664ee53ed0e4862ca16409f1405a
--- /dev/null
+++ b/YukkiMusic/server/templates/HomeV2/static/css/style.css
@@ -0,0 +1,937 @@
+:root {
+ --mycol: #ff003c;
+ --gcol: linear-gradient(to right, red, blue);
+}
+
+span {
+ color: var(--mycol);
+}
+
+* {
+
+ box-sizing: border-box;
+ color: white;
+ font-family: 'Josefin Sans', sans-serif;
+ scroll-behavior: smooth;
+ text-transform: capitalize;
+}
+
+*::-webkit-scrollbar {
+ display: none;
+}
+
+
+html , body {
+ height: 100%;
+ width: 100%;
+ margin:0px;
+ padding:0px;
+ /* background-image: url(back_image); */
+ background-color: #141313;
+ align-items: center;
+ text-align: center;
+ font-family: Arial, sans-serif;
+
+}
+
+.avatar {
+ border-radius: 50%;
+ width: 3vh;
+ height: 3vh;
+ margin: 0; /* Remove or adjust margins */
+ padding: 0; /* Remove or adjust padding */
+}
+.page_header{
+ background: #141313;
+ width: 100%;
+ height:auto;
+ margin: 0; /* Remove or adjust margins */
+ padding: 0; /* Remove or adjust padding */
+ margin-top: 10px;
+ margin-bottom: 10px;
+ z-index: 25;
+}
+.yt-nav{
+ justify-items: space-evenly;
+ width: 100%;
+ height: 40px;
+ position: sticky;
+ top: 100px;
+ flex-direction: row;
+ /* justify-content: flex-start; */
+ color: white;
+ text-decoration: none;
+ padding-top: 12px;
+ /* font-size: 16px; */
+ background: #141313;
+ z-index: 25;
+}
+
+.yt-nav a {
+ background: white;
+ padding: 2px;
+ border-radius: 10px;
+ overlay: inherit;
+ color: black;
+ font-family: Arial, Helvetica, sans-serif;
+}
+
+nav {
+ height: 100px;
+ width: 100%;
+ top :0;
+ display:flex;
+ position: fixed;
+ flex-direction: column; /* Change direction to vertical */
+ justify-content: space-evenly;
+ z-index: 50;
+ background: linear-gradient(to bottom, black, rgba(0, 0, 0, 0.016));
+ backdrop-filter: blur(5px);
+ font-weight: 700;
+ padding: 10px;
+}
+.search_section{
+ width:80%;
+ height: 65px;
+ display:flex;
+ padding: 20px;
+ flex-direction: row; /* Change direction to vertical */
+ align-items: center;
+ text-align: center;
+}
+.nav-links {
+ padding :2px;
+ justify-content: space-evenly;
+
+}
+.nav-links a {
+ display:inline;
+ flex-direction: row; /* Change direction to vertical */
+ justify-content: flex-start;
+ color: white;
+ text-decoration: none;
+ position: relative;
+ margin-top: 10px;
+ margin-left: 20px;
+ font-size: 16px;
+}
+
+
+.nleft {
+ left: 5%;
+ position: absolute;
+}
+
+.nryt {
+ gap: 20px;
+ right: 5%;
+ position: absolute;
+ display: flex;
+ align-items: center;
+}
+
+a {
+ text-decoration: none;
+}
+
+.nryt a {
+ margin: 0 3px;
+ text-decoration: none;
+ position: relative;
+ cursor: pointer;
+}
+
+.nryt a::after {
+ content: "";
+ position: absolute;
+ height: 3px;
+ width: 0%;
+ background-color: var(--mycol);
+ bottom: -5px;
+ left: 0%;
+ border-radius: 30px;
+ transition: all 0.4s ease;
+}
+
+.nryt a.active::after {
+ width: 90%;
+}
+
+.outer {
+ width: 100vw;
+ padding-top: 80px;
+ overflow: hidden;
+}
+
+.inner {
+ width: 200vw;
+ display: flex;
+}
+
+.main {
+ margin-top: 140px;
+ display: flex;
+ flex-direction: column;
+ position: relative;
+ padding: 5px;
+ width: 100%;
+}
+
+.file-name {
+ margin-top: 5px;
+ width: 98%;
+ display:none;
+ flex-direction: row; /* Change direction to vertical */
+ justify-content: flex-start;
+ height: 120px;
+ padding: 10px;
+ border-radius: 5px;
+ background-image: linear-gradient(#1095c1,#1095c1);
+ background-size: 0 100%;
+ background-repeat: no-repeat;
+ border: #727171;
+ transition: .4s;
+ /*background: linear-gradient(to bottom, rgba(52, 52, 52, 0.732), rgba(153, 153, 153, 0.321));*/
+}
+.file-name.selected{
+
+ background-size: 100% 100%;
+ /*background: linear-gradient(to bottom, rgba(219, 214, 214, 0.559), rgba(109, 108, 108, 0.663));*/
+}
+
+.file-name h4 {
+ color: var(--mycol);
+}
+
+.hover-1 {
+ background-image: linear-gradient(#1095c1,#1095c1);
+ background-size: 0 100%;
+ background-repeat: no-repeat;
+ transition: .4s;
+ }
+
+.file-name.selected:hover {
+ background-size: 100% 100%;
+ }
+
+.downloadBtn {
+ padding: 30px 0;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ /* flex-direction: column; */
+ flex-wrap: wrap;
+ gap: 20px;
+
+}
+
+.downloadBtn button {
+ opacity: 0;
+ border-radius: 6px;
+ background: linear-gradient(to bottom, rgba(247, 247, 247, 0.187), rgba(240, 240, 240, 0.105));
+ height: 50px;
+ width: 300px;
+ display: flex;
+ align-items: center;
+ font-weight: 700;
+ gap: 10px;
+ padding-left: 50px;
+ border: none;
+ text-transform: uppercase;
+}
+
+.downloadBtn img {
+ height: 20px;
+}
+
+.abt {
+ overflow: hidden;
+}
+
+.about {
+ width: 100vw;
+ background-size: cover;
+ backdrop-filter: blur(1px);
+ height: 100vh;
+ position: relative;
+ transition: all 0.4s ease;
+ overflow: hidden;
+}
+
+.about::-webkit-scrollbar {
+ display: none;
+}
+
+.about-nav {
+ width: 100%;
+ align-items: center;
+ justify-content: space-evenly;
+ backdrop-filter: blur(1px);
+ position: fixed;
+ left: 0%;
+ z-index: 1;
+ font-size: 14px;
+ top: 12%;
+ display: none;
+}
+
+.about-nav a {
+ position: relative;
+ margin: 0 7px;
+}
+
+.about-nav a::after {
+ content: "";
+ position: absolute;
+ height: 2px;
+ width: 0%;
+ background-color: var(--mycol);
+ bottom: -5px;
+ left: 1px;
+ border-radius: 30px;
+ transition: all 0.4s ease;
+
+}
+
+.about-nav a.active::after {
+ width: 90%;
+}
+
+.about-dets {
+ height: 100vh;
+ width: 400vw;
+ position: absolute;
+ display: flex;
+ align-items: center;
+ overflow: hidden;
+ transition: all 0.4s ease;
+}
+
+.abt-sec {
+ height: 100%;
+ width: 100vw;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ /* justify-content: center; */
+ z-index: 1;
+ gap: 10%;
+ padding-top: 130px;
+ backdrop-filter: blur(5px);
+ overflow: hidden;
+
+}
+
+#sec4 {
+ gap: 22px;
+ padding-left: 20px;
+ padding-right: 20px;
+}
+
+#sec4 h1 {
+ margin-bottom: 30px;
+}
+
+.abt-sec h1 {
+ text-align: center;
+ transform: translateY(20px);
+ font-weight: 700;
+}
+
+.abt-sec p {
+ text-align: center;
+ font-weight: 700;
+ text-transform: capitalize;
+ font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;
+}
+
+
+
+.links {
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ gap: 10px;
+}
+
+.links button {
+ width: 350px;
+ height: 50px;
+ border-radius: 6px;
+ border: none;
+ background: linear-gradient(to top, rgba(46, 46, 46, 0.365), rgba(46, 46, 46, 0.443));
+ font-size: 15px;
+ font-weight: 550;
+ transition: all 0.4s ease;
+ /* opacity: 0; */
+}
+
+.links a {
+ opacity: 0;
+}
+
+button {
+ transition: all 1s ease;
+ /* opacity: 0; */
+ /* animation: linksBtnAn 2s ease 0.3s infinite, strtLoad 4s ease 0.5s forwards; */
+ position: relative;
+ overflow: hidden;
+}
+
+.links button::before,
+.downloadBtn button::before {
+ opacity: 0;
+ left: -10px;
+ top: -20px;
+ content: "";
+ width: 20%;
+ height: 200%;
+ position: absolute;
+ background-color: #ffffff18;
+ box-shadow: 2px 2px 30px 30px #ffffff18;
+ rotate: 20deg;
+ animation: var(--beforestyl);
+ filter: contrast(100);
+}
+
+.links button:hover {
+ scale: 1.05;
+}
+
+button:active {
+ scale: 0.7;
+}
+
+.box {
+ margin-bottom: 60px;
+}
+
+.box h3 {
+ margin-bottom: 15px;
+ position: relative;
+}
+
+.box a {
+ margin-top: 15px;
+}
+
+.box p {
+ margin-top: 5px;
+}
+
+.box h3::after {
+ content: "";
+ position: absolute;
+ height: 1.5px;
+ width: 90%;
+ background-color: var(--mycol);
+ bottom: -3px;
+ left: 0%;
+ border-radius: 30px;
+ transition: all 0.4s ease;
+}
+
+/* middle part */
+.mid {
+ font-size: 40px;
+ font-weight: 600;
+ text-align: center;
+ padding: 10%;
+}
+
+.last-text {
+ text-align: center;
+ padding: 10%;
+}
+
+.movie-cont {
+ height: fit-content;
+ width: 100vw;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ gap: 30px;
+}
+
+.movieSug {
+ height: 500px;
+ width: 95vw;
+ border-radius: 2%;
+ position: relative;
+ display: flex;
+ align-items: center;
+ justify-content: space-around;
+ background-size: cover;
+ background-position: center;
+ overflow: hidden;
+
+}
+
+.movieSug::before {
+ content: '';
+ height: 110%;
+ width: 110%;
+ position: absolute;
+ background: linear-gradient(to right, black 20%, rgba(0, 0, 0, 0.322) 75%, rgba(0, 0, 0, 0));
+ top: 0%;
+ left: -10px;
+}
+
+.movieDets {
+ padding: 5%;
+ height: 100%;
+ width: 45vw;
+ display: flex;
+ flex-direction: column;
+ text-align: start;
+ justify-content: center;
+ gap: 10px;
+ z-index: 1;
+}
+
+.movieDets h3:first-child {
+ font-size: 32px;
+ font-weight: 600;
+}
+.image-container {
+ width: 40%;
+ position: relative;
+ display: inline-block;
+ padding: 2px;
+}
+.movieimg {
+ width: 100%;
+ height: 100%;
+ display: flex;
+ justify-content: left;
+ object-fit:"cover";
+ align-items: left;
+ padding-right: 2px;
+ gap: 10px;
+ border-radius: 5%;
+}
+.file-dtl{
+ width: 60%;
+ display:flex;
+ flex-direction: column; /* Change direction to vertical */
+ justify-content: space-between;
+ text-align: left;
+ padding-left : 8px;
+ gap: 5px;
+
+}
+.bottom-right {
+ position: absolute;
+ bottom: 5px;
+ right: 5px;
+ background: rgba(0, 0, 0, 0.5);
+ color: white;
+ padding: 5px;
+ border-radius: 3px;
+}
+.movieimg img {
+ max-height: 400px;
+ box-shadow: 2px 2px 100px 70px rgba(0, 0, 0, 0.566);
+ border-radius: 10px;
+}
+
+.movieDets span {
+ font-weight: 700;
+ font-size: 20px;
+}
+
+.movieDets h4:nth-child(2) {
+ margin-top: 20px;
+ font-size: 23px;
+ font-weight: 700;
+}
+
+.movieDets h4:nth-child(3) {
+
+ font-size: 15px;
+ font-weight: 700;
+}
+
+.movieStsBar {
+ display: none;
+}
+
+.ranMovBtn {
+ border-radius: 6px;
+ background: linear-gradient(to bottom, rgba(247, 247, 247, 0.187), rgba(240, 240, 240, 0.105));
+ height: 50px;
+ width: 300px;
+ display: flex;
+ align-items: center;
+ font-weight: 700;
+ gap: 10px;
+ padding-left: 50px;
+ border: none;
+}
+
+.copyright {
+ margin: 30px;
+ gap: 10px;
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+
+}
+
+.copyright h5 {
+ font-size: 13px;
+}
+
+.searchbox{
+ padding: 5px;
+ min-width: 90%;
+ color: #333;
+ height: 40px;
+ border-radius: 10px;
+ margin: 20px 20px;
+}
+.suggestions {
+ width:98%;
+ top: 68px;
+ padding: 5px;
+ position: absolute;
+ color: rgb(224, 220, 220);
+ max-height: 200px;
+ text-align: left;
+ align-items: left;
+ overflow-y: auto;
+ background: rgb(51, 50, 50);
+ border-radius: 0 0 10px 10px;
+ box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
+ z-index: 50; /* Ensure suggestions are above other content */
+ display:none;
+}
+
+.suggestions ul {
+ list-style: none;
+ padding: 0;
+ margin: 0;
+ text-decoration: none;
+
+}
+
+.suggestions li {
+ list-style: none;
+ color: rgb(224, 220, 220);
+ padding: 10px;
+ cursor: pointer;
+ text-decoration: none;
+ text-align: left;
+}
+
+.suggestions li:hover {
+ background: #727171;
+}
+.autocomplete-suggestions {
+ border: 1px solid #ddd;
+ max-height: 150px;
+ overflow-y: auto;
+}
+.autocomplete-suggestion {
+ padding: 10px;
+ cursor: pointer;
+}
+.autocomplete-suggestion:hover {
+ background-color: #f0f0f0;
+}
+
+.video-title{
+ font-weight: 500;
+ color:white;
+ width: 95%;
+ height: 65%;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ padding:1px;
+ align-items: center;
+ text-align: center;
+}
+.video-channel{
+ color:rgba(227, 227, 230, 0.768);
+ font-Size:12px;
+ align-items: center;
+ text-align: center;
+}
+.channel-dtl{
+ display:flex;
+ flex-direction: row; /* Change direction to vertical */
+ justify-content: flex-start;
+ gap: 10px ;
+ width: 95%;
+ height: 35%;
+ padding: 1px;
+ overflow: hidden;
+ text-overflow: ellipsis;
+}
+
+.demo-video-card {
+ margin-top: 5px;
+ display:flex;
+ flex-direction: row; /* Change direction to vertical */
+ justify-content: flex-start;
+ height: 160px;
+ width: 98%;
+ padding: 10px;
+ border-radius: 5px;
+ border: 1px solid #ddd;
+ border-radius: 8px;
+ overflow: hidden;
+ background: linear-gradient(to bottom, rgba(52, 52, 52, 0.301), rgba(153, 153, 153, 0.075));
+ box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
+ opacity: 1;
+}
+.fade-out {
+
+ animation: fade 1.5s ease-in-out;
+}
+
+.demo-video-thumbnail {
+ width: 60%;
+ height: 100%;
+ background: #e0e0e0;
+}
+
+.demo-video-details {
+ padding: 16px;
+ width: 40%;
+}
+
+.demo-video-title, .demo-video-info {
+ height: 16px;
+ background: #e0e0e0;
+ margin-bottom: 8px;
+}
+
+.demo-video-title {
+ width: 100%;
+}
+
+.demo-video-info {
+ width: 80%;
+}
+.demo-avatar {
+ border-radius: 50%;
+ width: 50px;
+ height: 50px;
+ background: #e0e0e0;
+}
+.demo-loading-div{
+ display: none;
+}
+/* Animation for loading placeholder */
+.loading {
+ opacity: .7;
+ animation: skeleton-loading 1s linear infinite alternate;
+}
+
+
+
+
+@keyframes skeleton-loading {
+ 0% {
+ background-color: hsl(200, 20%, 70%);
+ }
+
+ 100% {
+ background-color: hsl(200, 20%, 95%);
+ }
+ }
+
+
+
+@keyframes fade {
+ 0% {
+ opacity: 1;
+ }
+ 50% {
+ opacity: 0.5;
+ }
+ 100% {
+ opacity: 0;
+ }
+}
+@keyframes pulse {
+ 0% {
+ background-color: #e0e0e0;
+ }
+ 50% {
+ background-color: #e4e1e1;
+ }
+ 100% {
+ background-color: #c9c6c6;
+ }
+}
+
+
+@keyframes linksBtnAn {
+
+ from {
+ scale: 1;
+ }
+
+ 50% {
+ scale: 1.02;
+ }
+
+ to {
+ scale: 1;
+ }
+}
+
+@keyframes strtLoad {
+ from {
+ opacity: 0;
+ transform: translateX(-200px);
+ }
+
+ to {
+ opacity: 1;
+ transform: translateX(0px);
+ }
+
+}
+
+@keyframes button_shine {
+ from {
+ opacity: .9;
+ left: -100px;
+ }
+
+ to {
+ opacity: 1;
+ left: 400px;
+ }
+}
+
+
+/*
+@media (min-width : 550px) {
+ body{
+ align-items: center;
+ text-align: center;
+
+ }
+ .main{
+ margin-inline: auto;
+ width:500px;
+
+ }
+ .demo-video-card{
+ width: inherit;
+ }
+ .nav{
+ margin-inline: auto;
+ width:500px;
+ align-items: center;
+ text-align: center;
+ }
+ .search_section{
+ width: 500px;
+ }
+ .suggestions{
+ width: 500px;
+ }
+
+
+}
+
+
+
+
+
+
+
+@media (max-width : 1029px) {
+
+ .movieDets h3:first-child {
+ font-size: 25px;
+ }
+}
+
+@media (max-width : 992px) {
+ .movieSug {
+ scale: 0.9;
+ }
+
+ .movie-cont {
+ scale: 0.9;
+ }
+
+}
+
+@media (max-width : 800px) {
+ .movie-cont {
+ scale: 0.9;
+ }
+
+ .movieSug {
+ height: 400px;
+ }
+
+ .movieimg img {
+ max-height: 300px;
+
+ }
+
+ .movieDets {
+ scale: 0.8;
+ }
+
+}
+
+@media (max-width : 637px) {
+ .movieSug {
+ background-position: right;
+ padding: 5%;
+ scale: 1;
+ width: 90vw;
+ }
+
+ .movie-cont {
+ width: 90vw;
+ padding: 5%;
+ scale: 1;
+ }
+
+ .movieDets {
+ display: none;
+ }
+
+ .movieStsBar {
+ display: block;
+ border-radius: 6%;
+ }
+
+ .movieDets-mini {
+ position: absolute;
+ display: flex;
+ flex-direction: column;
+ text-align: start;
+ width: 80%;
+ left: 50px;
+ transform: translate(-35px, -120px);
+
+ }
+
+ .movieSug::before {
+ content: '';
+ height: 100%;
+ width: 100%;
+ position: absolute;
+ background: linear-gradient(to top, black 20%, rgba(0, 0, 0, 0.322) 75%, rgba(0, 0, 0, 0));
+ top: 10%;
+ left: 0px;
+ }
+
+ .movieimg img {
+ transform: translate(75px, -40px);
+
+ }
+}
+ */
+
\ No newline at end of file
diff --git a/YukkiMusic/server/templates/HomeV2/static/js/main.js b/YukkiMusic/server/templates/HomeV2/static/js/main.js
new file mode 100644
index 0000000000000000000000000000000000000000..e6035d909a48ed40a2cca1c11422a9cc0591f9a4
--- /dev/null
+++ b/YukkiMusic/server/templates/HomeV2/static/js/main.js
@@ -0,0 +1,158 @@
+var suggestions = document.querySelector('.suggestions');
+var resultsContainer = document.getElementById('search');
+var selected_id='';
+var searchSuggest = "{{ url('searchquery') }}";
+var search_page="{{ url('search')}}";
+var nextPage_url="{{url('nextPage')}}"
+var url = new URL(window.location.href);
+let queryItem ='';
+let nextPageToken = '{{nextPageToken}}';
+let isFetching = false;
+const params = new URLSearchParams(url.search);
+if(params.get('q')){
+ queryItem = params.get('q');
+}else{
+ queryItem='';
+}
+if (params.get('pageToken')){
+ nextPageToken=params.get('pageToken');
+}
+
+ // Function to fetch more results
+async function fetchMoreResults() {
+ if (isFetching) return;
+ isFetching = true;
+
+ // Replace with the actual search query or parameter
+ const response = await fetch(`${search_page}?q=${queryItem}}&pageToken=${nextPageToken}&type=json`);
+
+ const data = await response.json();
+
+ //console.log(data.data);
+
+ // Process and append results
+
+ if (data.data) {
+ resultsContainer = document.getElementById('search');
+ let list = JSON.parse(JSON.stringify(data.data));
+ list.forEach(item => {
+ //console.log(item);
+ const videoDiv = document.createElement('div');
+ videoDiv.classList.add("video-list","file-name");
+ videoDiv.id=item.id.videoId;
+ videoDiv.innerHTML = `
+
+
+
${item.snippet.title}
+
SV
+
${item.snippet.channelTitle}
+
+ `;
+ resultsContainer.appendChild(videoDiv);
+ main();
+ });
+ nextPageToken = data.nextPageToken || '';
+ }
+
+ isFetching = false;
+}
+
+// Infinite scroll listener
+window.addEventListener('scroll', () => {
+ if (window.innerHeight + window.scrollY >= document.body.offsetHeight - 500) {
+ fetchMoreResults();
+ }
+});
+
+document.getElementById('searchBox').addEventListener('input', function() {
+ let query = this.value;
+
+ //console.log(url);
+ if (query.length > 0) {
+ suggestions.style.display = 'block';
+ fetch(`${searchSuggest}?q=${query}`)
+ .then(response => response.json())
+ .then(data => {
+ //const resultsDiv = document.getElementById('autocompleteResults');
+ suggestions.innerHTML = '';
+ data[1].forEach(item => {
+ const div = document.createElement('li');
+ //div.classList.add('autocomplete-suggestion');
+ div.textContent = item;
+ div.addEventListener('click', () => {
+ document.getElementById('searchBox').value = item;
+ suggestions.innerHTML = '';
+ queryItem=item;
+ window.location.href = `${search_page}?q=${item}`;
+ });
+ suggestions.appendChild(div);
+ });
+ });
+ }
+ else if(query===''){
+ suggestions.innerHTML='';
+ suggestions.style.display = 'none';
+
+
+ }
+ else {
+ document.getElementById('suggestions').innerHTML = '';
+ suggestions.style.display = 'none';
+ }
+ });
+
+
+//document.addEventListener('DOMContentLoaded', () => {
+
+
+
+ function activateMainButton(){
+ if (selected_id==''){
+ window.Telegram.WebApp.MainButton.setText('Please Select to Play');
+ }
+ else{
+ window.Telegram.WebApp.MainButton.setText('Play Now');
+ window.Telegram.WebApp.MainButton.enable();
+ }
+ window.Telegram.WebApp.MainButton.show();
+ }
+ function onMainButtonClick() {
+
+ const data = JSON.stringify(selected_id);
+ window.Telegram.WebApp.sendData(data);
+
+
+ }
+function main(){
+ const selectableDivs = document.querySelectorAll('.file-name');
+ window.Telegram.WebApp.ready();
+ activateMainButton();
+ selectableDivs.forEach(div => {
+ div.removeEventListener('click',()=>{console.log('')})
+ div.addEventListener('click', () => {
+ // Remove the 'selected' class from all divs
+ selectableDivs.forEach(d => d.classList.remove('selected'));
+
+ // Add 'selected' class to the clicked div
+ div.classList.add('selected');
+ activateMainButton();
+ window.Telegram.WebApp.expand();
+ selected_id=div.id;
+ // Get and print the ID of the selected div
+ console.log('Selected div ID:', div.id);
+ });
+ });
+
+ window.Telegram.WebApp.onEvent('mainButtonClicked', onMainButtonClick);
+}
+document.addEventListener('click', (event) => {
+ if (!event.target.closest('.search_section')) {
+ suggestions.style.display = 'none';
+ }
+});
+main();
+//});
+
+
+
+
diff --git a/YukkiMusic/server/templates/bundle.js b/YukkiMusic/server/templates/bundle.js
new file mode 100644
index 0000000000000000000000000000000000000000..92ccd891aaefd0d8dc17a8a9b60dd58f93d50ebe
--- /dev/null
+++ b/YukkiMusic/server/templates/bundle.js
@@ -0,0 +1,87 @@
+
+/**
+ * Show user confirmation dialog upon main button click
+ */
+function onMainButtonClick() {
+ // const selectedDates = AirDatepickerGlobal.selectedDates;
+ // // Iterate throught the selected dates and format them
+ // let msgToShow = `You selected ${selectedDates.length} dates:`;
+ // selectedDates.map((date) => {
+ // const day = date.getDate();
+ // const month = date.getMonth() + 1;
+ // const year = date.getFullYear();
+ // // get time from date and convert it to HH:MM
+ // const time = date.toTimeString().match(/([0-9]{2}:[0-9]{2})/)[1];
+ // // get timezone offset as HH:MM
+ // const offset = date.toString().match(/([-\+][0-9]+)\s/)[1];
+ // // Add these variables to msgToShow
+ // msgToShow += `\n${day}/${month}/${year} ${time} (UTC${offset})`;
+ // });
+ const selectedDates = new Date().toString();
+ window.Telegram.WebApp.showConfirm("Youselect"+selectedDates, (confirmed) => {
+ if (confirmed === true) {
+ // HapticFeedback seems to be broken on linux tdesktop at least, it doesn't run the code
+ // after it. So we will just send the data and not run the hapticfeedback
+ console.log("before hapticfeedback")
+ // window.Telegram.WebApp.HapticFeedback.notificationOccured('success');
+ console.log("after hapticfeedback")
+ const data = JSON.stringify(selectedDates);
+ window.Telegram.WebApp.sendData(data);
+ } else {
+ window.Telegram.WebApp.HapticFeedback.impactOccurred('light');
+ }
+ });
+ }
+
+
+ // function setMainButtonColor(disable=false) {
+ // // Add transparency to the button color
+ // const tgcolor = window.Telegram.WebApp.MainButton.color;
+ // // convert color from hex to rgb
+ // const colorRgb = parseInt(tgcolor.replace('#', ''), 16);
+ // const color = {
+ // r: (colorRgb >> 16) & 255,
+ // g: (colorRgb >> 8) & 255,
+ // b: colorRgb & 255,
+ // };
+
+ // let opacity;
+ // if (disable == true) {
+ // opacity = 0.5;
+ // } else {
+ // opacity = 1;
+ // }
+ // const rgba = `rgba(${color.r}, ${color.g}, ${color.b}, ${opacity})`;
+ // // Telegram currently discards the alpha channel when they convert to hex
+ // // code internally
+ // // so we will manually set the attribute on the button -> doesn't work :(
+ // // window.Telegram.WebApp.MainButton.setParams({'color': hex});
+ // // window.Telegram.WebApp.MainButton.buttonColor = rgba;
+ // }
+
+ /**
+ * Main function. Gets the query params, makes the airdatepicker instance,
+ * and expands the webapp if necessary.
+
+ */
+ function main() {
+ window.Telegram.WebApp.ready();
+ window.Telegram.WebApp.MainButton.show();
+ //window.Telegram.WebApp.MainButton.enable();
+ //const params = getQueryParams();
+
+ //params.then((options) => {
+ // makeAirDatepicker(options);
+
+ // Expand the webapp is `timepicker` param and/or `buttons` is passed
+ //if ('timepicker' in options || 'buttons' in options) {
+ //window.Telegram.WebApp.expand();
+ //}
+
+ //activateMainButton(AirDatepickerGlobal.selectedDates, options);
+ //});
+ window.Telegram.WebApp.onEvent('mainButtonClicked', onMainButtonClick);
+ }
+
+ main();
+
\ No newline at end of file
diff --git a/YukkiMusic/server/templates/favicon1.ico b/YukkiMusic/server/templates/favicon1.ico
new file mode 100644
index 0000000000000000000000000000000000000000..4ca16b6a1cbdeb1d4d37f176786b35d6b5e355b6
Binary files /dev/null and b/YukkiMusic/server/templates/favicon1.ico differ
diff --git a/YukkiMusic/server/templates/hero.png b/YukkiMusic/server/templates/hero.png
new file mode 100644
index 0000000000000000000000000000000000000000..1664396c678c44868e309d8225e103c98f2d4d68
Binary files /dev/null and b/YukkiMusic/server/templates/hero.png differ
diff --git a/YukkiMusic/server/templates/style.css b/YukkiMusic/server/templates/style.css
new file mode 100644
index 0000000000000000000000000000000000000000..9e4f071ad2780ff0364255c4a196a2fa3a4a8f36
--- /dev/null
+++ b/YukkiMusic/server/templates/style.css
@@ -0,0 +1,106 @@
+@import url('https://fonts.googleapis.com/css?family=Open+Sans');
+
+* {
+ user-select: none; /* disable text selection */
+ -webkit-tap-highlight-color: transparent; /* disable tap highlight */
+ --range-height: calc(var(--adp-day-cell-height) / 4.1);
+ background-color: var(--tg-theme-bg-color, #f0f0f0); /* fix for white borders on desktop */
+}
+body{
+ background-color: #f0f0f0;
+}
+.air-datepicker {
+ border: none; /* remove border becuase they look better without it imo */
+ width: unset; /* remove width so it takes full width of screen */
+ background-color: var(--tg-theme-bg-color, #f0f0f0);
+ --adp-font-family: "Open Sans", sans-serif;
+ --adp-font-size: 16px; /* change font size so it looks better on mobile*/
+ --adp-background-color-hover: var(--tg-theme-bg-color, #fff);
+ --adp-background-color-active: transparent;
+ --adp-cell-background-color-hover: var(--tg-theme-bg-color, #fff);
+ --adp-cell-background-color-selected-hover: var(--tg-theme-button-color, #45bced);
+ --adp-cell-background-color-selected: var(--tg-theme-button-color, #5cc4ef);
+ --adp-color: var(--tg-theme-text-color, #000);
+ --adp-color-secondary: var(--tg-theme-hint-color, #9c9c9c);
+ --adp-color-other-month: var(--tg-theme-hint-color, #dedede);
+ --adp-time-track-height: 1px;
+ --adp-time-track-color: var(--tg-theme-button-color, #dedede);
+ --adp-time-day-period-color: var(--tg-theme-text-color, #000);
+ --adp-btn-color: var(--tg-theme-button-color, #4eb5e6);
+ /* Modify cell heights such that they take the full height of the screen */
+ --adp-day-cell-height: calc(var(--tg-viewport-height, 160px) / 6.9);
+ --adp-month-cell-height: calc(var(--tg-viewport-height, 180px) / 5.25);
+ --adp-year-cell-height: calc(var(--tg-viewport-height, 240px) / 3.94);
+ --adp-mobile-day-cell-height: calc(var(--tg-viewport-height, 160px) / 6.9);
+ --adp-mobile-month-cell-height: calc(var(--tg-viewport-height, 180px) / 5.25);
+ --adp-mobile-year-cell-height: calc(var(--tg-viewport-height, 240px) / 3.94);
+}
+
+.air-datepicker-cell.-selected- {
+ clip-path: circle(30%); /* make selected date circle */
+ color: var(--tg-theme-button-text-color, #fff);
+}
+
+.air-datepicker-cell.-selected-.-current- {
+ color: var(--tg-theme-button-text-color, #fff);
+}
+
+.air-datepicker.-inline- {
+ overflow-y: scroll; /* just in case */
+}
+
+.air-datepicker--time, .air-datepicker-nav {
+ border: unset; /* remove border becuase they look better without it imo */
+}
+
+.air-datepicker-time--row input[type=range]::-webkit-slider-thumb {
+ border-radius: 50%; /* make time slider thumb circle */
+ background-color: var(--tg-theme-button-color, #45bced);
+}
+
+.air-datepicker-time--current {
+ font-size: 16px;
+}
+
+.air-datepicker-time--current-hours, .air-datepicker-time--current-minutes {
+ font-size: 27px;
+ font-family: "Open Sans", sans-serif;
+}
+
+.air-datepicker-time--current-ampm {
+ font-size: 14px;
+}
+
+.air-datepicker-nav--title {
+ font-weight: 600;
+}
+
+.air-datepicker-nav--title i { /* change year color on default settings */
+ color: var(--adp-color);
+}
+
+/* customize how the range looks */
+/* TODO: Improve this so the from and to have a circle on them with
+one color and the in range has a different color see
+https://m3.material.io/components/date-pickers/specs#733bc6c3-be6f-4bf1-90d2-e152591ccb3f */
+/* Apply the clip path attribute only if we've selected a range, i.e. don't apply on first click */
+.air-datepicker-cell.-range-from-:has(+ .-in-range-, + .-range-to-) {
+ clip-path: inset(var(--range-height) 0 var(--range-height) 5px round 100% 0 0 100%) !important;
+ border: unset;
+ transition: all 0.2s ease-in-out;
+}
+
+.air-datepicker-cell.-in-range- {
+ clip-path: inset(var(--range-height) 0 var(--range-height) 0px);
+ transition: all 0.2s ease-in-out;
+}
+
+.air-datepicker-cell.-range-to-:not(.-range-from-) { /* the :not() fix is for the year view */
+ border: unset;
+ clip-path: inset(var(--range-height) 5px var(--range-height) 0px round 0 100% 100% 0) !important;
+ transition: all 0.2s ease-in-out;
+}
+
+.air-datepicker--buttons {
+ border-top: 0.5px solid var(--tg-theme-hint-color, #dedede);
+}
diff --git a/YukkiMusic/server/templates/youtube.html b/YukkiMusic/server/templates/youtube.html
new file mode 100644
index 0000000000000000000000000000000000000000..d936d76197e9c6f971c971b88e958401814e4b7b
--- /dev/null
+++ b/YukkiMusic/server/templates/youtube.html
@@ -0,0 +1,110 @@
+
+
+
+
+
+ Date and Time Selector
+
+
+
+
+
+
+
+
+
+ select date
+
+
+
+
+
\ No newline at end of file
diff --git a/YukkiMusic/server/youtube.py b/YukkiMusic/server/youtube.py
new file mode 100644
index 0000000000000000000000000000000000000000..8b137891791fe96927ad78e64b0aad7bded08bdc
--- /dev/null
+++ b/YukkiMusic/server/youtube.py
@@ -0,0 +1 @@
+
diff --git a/YukkiMusic/utils/__init__.py b/YukkiMusic/utils/__init__.py
new file mode 100644
index 0000000000000000000000000000000000000000..a844008f08ff636f7e227cbbfa4d245a0c26c47c
--- /dev/null
+++ b/YukkiMusic/utils/__init__.py
@@ -0,0 +1,16 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from .channelplay import *
+from .database import *
+from .decorators import *
+from .formatters import *
+from .inline import *
+from .pastebin import *
+from .sys import *
diff --git a/YukkiMusic/utils/channelplay.py b/YukkiMusic/utils/channelplay.py
new file mode 100644
index 0000000000000000000000000000000000000000..2b30842d105f2b6f29064f5d13ed34251182b23f
--- /dev/null
+++ b/YukkiMusic/utils/channelplay.py
@@ -0,0 +1,37 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from YukkiMusic import app
+from YukkiMusic.utils.database import get_cmode
+
+
+async def get_channeplayCB(_, command, CallbackQuery):
+ if command == "c":
+ chat_id = await get_cmode(CallbackQuery.message.chat.id)
+ if chat_id is None:
+ try:
+ return await CallbackQuery.answer(
+ _["setting_12"], show_alert=True
+ )
+ except:
+ return
+ try:
+ chat = await app.get_chat(chat_id)
+ channel = chat.title
+ except:
+ try:
+ return await CallbackQuery.answer(
+ _["cplay_4"], show_alert=True
+ )
+ except:
+ return
+ else:
+ chat_id = CallbackQuery.message.chat.id
+ channel = None
+ return chat_id, channel
diff --git a/YukkiMusic/utils/database/__init__.py b/YukkiMusic/utils/database/__init__.py
new file mode 100644
index 0000000000000000000000000000000000000000..f5261fb8cb3c6e8c95ccda150138bc9e1a9b1224
--- /dev/null
+++ b/YukkiMusic/utils/database/__init__.py
@@ -0,0 +1,12 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from .assistantdatabase import *
+from .memorydatabase import *
+from .mongodatabase import *
diff --git a/YukkiMusic/utils/database/assistantdatabase.py b/YukkiMusic/utils/database/assistantdatabase.py
new file mode 100644
index 0000000000000000000000000000000000000000..7194bb79aee15fe38dc574af5f70a1d0307c612f
--- /dev/null
+++ b/YukkiMusic/utils/database/assistantdatabase.py
@@ -0,0 +1,116 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import random
+
+from YukkiMusic import userbot
+from YukkiMusic.core.mongo import mongodb
+
+db = mongodb.assistants
+
+assistantdict = {}
+
+
+async def get_client(assistant: int):
+ if int(assistant) == 1:
+ return userbot.one
+ elif int(assistant) == 2:
+ return userbot.two
+ elif int(assistant) == 3:
+ return userbot.three
+ elif int(assistant) == 4:
+ return userbot.four
+ elif int(assistant) == 5:
+ return userbot.five
+
+
+async def set_assistant(chat_id):
+ from YukkiMusic.core.userbot import assistants
+
+ ran_assistant = random.choice(assistants)
+ assistantdict[chat_id] = ran_assistant
+ await db.update_one(
+ {"chat_id": chat_id},
+ {"$set": {"assistant": ran_assistant}},
+ upsert=True,
+ )
+ userbot = await get_client(ran_assistant)
+ return userbot
+
+
+async def get_assistant(chat_id: int) -> str:
+ from YukkiMusic.core.userbot import assistants
+
+ assistant = assistantdict.get(chat_id)
+ if not assistant:
+ dbassistant = await db.find_one({"chat_id": chat_id})
+ if not dbassistant:
+ userbot = await set_assistant(chat_id)
+ return userbot
+ else:
+ got_assis = dbassistant["assistant"]
+ if got_assis in assistants:
+ assistantdict[chat_id] = got_assis
+ userbot = await get_client(got_assis)
+ return userbot
+ else:
+ userbot = await set_assistant(chat_id)
+ return userbot
+ else:
+ if assistant in assistants:
+ userbot = await get_client(assistant)
+ return userbot
+ else:
+ userbot = await set_assistant(chat_id)
+ return userbot
+
+
+async def set_calls_assistant(chat_id):
+ from YukkiMusic.core.userbot import assistants
+
+ ran_assistant = random.choice(assistants)
+ assistantdict[chat_id] = ran_assistant
+ await db.update_one(
+ {"chat_id": chat_id},
+ {"$set": {"assistant": ran_assistant}},
+ upsert=True,
+ )
+ return ran_assistant
+
+
+async def group_assistant(self, chat_id: int) -> int:
+ from YukkiMusic.core.userbot import assistants
+
+ assistant = assistantdict.get(chat_id)
+ if not assistant:
+ dbassistant = await db.find_one({"chat_id": chat_id})
+ if not dbassistant:
+ assis = await set_calls_assistant(chat_id)
+ else:
+ assis = dbassistant["assistant"]
+ if assis in assistants:
+ assistantdict[chat_id] = assis
+ assis = assis
+ else:
+ assis = await set_calls_assistant(chat_id)
+ else:
+ if assistant in assistants:
+ assis = assistant
+ else:
+ assis = await set_calls_assistant(chat_id)
+ if int(assis) == 1:
+ return self.one
+ elif int(assis) == 2:
+ return self.two
+ elif int(assis) == 3:
+ return self.three
+ elif int(assis) == 4:
+ return self.four
+ elif int(assis) == 5:
+ return self.five
diff --git a/YukkiMusic/utils/database/memorydatabase.py b/YukkiMusic/utils/database/memorydatabase.py
new file mode 100644
index 0000000000000000000000000000000000000000..3326605a8183daa2dce72ae315eaa1f5e6bd24ad
--- /dev/null
+++ b/YukkiMusic/utils/database/memorydatabase.py
@@ -0,0 +1,519 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+
+import config
+from config import PRIVATE_BOT_MODE
+from YukkiMusic.core.mongo import mongodb
+
+channeldb = mongodb.cplaymode
+commanddb = mongodb.commands
+cleandb = mongodb.cleanmode
+playmodedb = mongodb.playmode
+playtypedb = mongodb.playtypedb
+langdb = mongodb.language
+authdb = mongodb.adminauth
+videodb = mongodb.yukkivideocalls
+onoffdb = mongodb.onoffper
+suggdb = mongodb.suggestion
+autoenddb = mongodb.autoend
+
+
+# Shifting to memory [ mongo sucks often]
+loop = {}
+playtype = {}
+playmode = {}
+channelconnect = {}
+langm = {}
+pause = {}
+mute = {}
+audio = {}
+video = {}
+active = []
+activevideo = []
+command = []
+cleanmode = []
+nonadmin = {}
+vlimit = []
+maintenance = []
+suggestion = {}
+autoend = {}
+
+
+# Auto End Stream
+
+
+async def is_autoend() -> bool:
+ chat_id = 123
+ mode = autoend.get(chat_id)
+ if not mode:
+ user = await autoenddb.find_one({"chat_id": chat_id})
+ if not user:
+ autoend[chat_id] = False
+ return False
+ autoend[chat_id] = True
+ return True
+ return mode
+
+
+async def autoend_on():
+ chat_id = 123
+ autoend[chat_id] = True
+ user = await autoenddb.find_one({"chat_id": chat_id})
+ if not user:
+ return await autoenddb.insert_one({"chat_id": chat_id})
+
+
+async def autoend_off():
+ chat_id = 123
+ autoend[chat_id] = False
+ user = await autoenddb.find_one({"chat_id": chat_id})
+ if user:
+ return await autoenddb.delete_one({"chat_id": chat_id})
+
+
+# SUGGESTION
+
+
+async def is_suggestion(chat_id: int) -> bool:
+ mode = suggestion.get(chat_id)
+ if not mode:
+ user = await suggdb.find_one({"chat_id": chat_id})
+ if not user:
+ suggestion[chat_id] = True
+ return True
+ suggestion[chat_id] = False
+ return False
+ return mode
+
+
+async def suggestion_on(chat_id: int):
+ suggestion[chat_id] = True
+ user = await suggdb.find_one({"chat_id": chat_id})
+ if user:
+ return await suggdb.delete_one({"chat_id": chat_id})
+
+
+async def suggestion_off(chat_id: int):
+ suggestion[chat_id] = False
+ user = await suggdb.find_one({"chat_id": chat_id})
+ if not user:
+ return await suggdb.insert_one({"chat_id": chat_id})
+
+
+# LOOP PLAY
+async def get_loop(chat_id: int) -> int:
+ lop = loop.get(chat_id)
+ if not lop:
+ return 0
+ return lop
+
+
+async def set_loop(chat_id: int, mode: int):
+ loop[chat_id] = mode
+
+
+# Channel Play IDS
+async def get_cmode(chat_id: int) -> int:
+ mode = channelconnect.get(chat_id)
+ if not mode:
+ mode = await channeldb.find_one({"chat_id": chat_id})
+ if not mode:
+ return None
+ channelconnect[chat_id] = mode["mode"]
+ return mode["mode"]
+ return mode
+
+
+async def set_cmode(chat_id: int, mode: int):
+ channelconnect[chat_id] = mode
+ await channeldb.update_one(
+ {"chat_id": chat_id}, {"$set": {"mode": mode}}, upsert=True
+ )
+
+
+# PLAY TYPE WHETHER ADMINS ONLY OR EVERYONE
+async def get_playtype(chat_id: int) -> str:
+ mode = playtype.get(chat_id)
+ if not mode:
+ mode = await playtypedb.find_one({"chat_id": chat_id})
+ if not mode:
+ playtype[chat_id] = "Everyone"
+ return "Everyone"
+ playtype[chat_id] = mode["mode"]
+ return mode["mode"]
+ return mode
+
+
+async def set_playtype(chat_id: int, mode: str):
+ playtype[chat_id] = mode
+ await playtypedb.update_one(
+ {"chat_id": chat_id}, {"$set": {"mode": mode}}, upsert=True
+ )
+
+
+# play mode whether inline or direct query
+async def get_playmode(chat_id: int) -> str:
+ mode = playmode.get(chat_id)
+ if not mode:
+ mode = await playmodedb.find_one({"chat_id": chat_id})
+ if not mode:
+ playmode[chat_id] = "Direct"
+ return "Direct"
+ playmode[chat_id] = mode["mode"]
+ return mode["mode"]
+ return mode
+
+
+async def set_playmode(chat_id: int, mode: str):
+ playmode[chat_id] = mode
+ await playmodedb.update_one(
+ {"chat_id": chat_id}, {"$set": {"mode": mode}}, upsert=True
+ )
+
+
+# language
+async def get_lang(chat_id: int) -> str:
+ mode = langm.get(chat_id)
+ if not mode:
+ lang = await langdb.find_one({"chat_id": chat_id})
+ if not lang:
+ langm[chat_id] = "en"
+ return "en"
+ langm[chat_id] = lang["lang"]
+ return lang["lang"]
+ return mode
+
+
+async def set_lang(chat_id: int, lang: str):
+ langm[chat_id] = lang
+ await langdb.update_one(
+ {"chat_id": chat_id}, {"$set": {"lang": lang}}, upsert=True
+ )
+
+
+# Muted
+async def is_muted(chat_id: int) -> bool:
+ mode = mute.get(chat_id)
+ if not mode:
+ return False
+ return mode
+
+
+async def mute_on(chat_id: int):
+ mute[chat_id] = True
+
+
+async def mute_off(chat_id: int):
+ mute[chat_id] = False
+
+
+# Pause-Skip
+async def is_music_playing(chat_id: int) -> bool:
+ mode = pause.get(chat_id)
+ if not mode:
+ return False
+ return mode
+
+
+async def music_on(chat_id: int):
+ pause[chat_id] = True
+
+
+async def music_off(chat_id: int):
+ pause[chat_id] = False
+
+
+# Active Voice Chats
+async def get_active_chats() -> list:
+ return active
+
+
+async def is_active_chat(chat_id: int) -> bool:
+ if chat_id not in active:
+ return False
+ else:
+ return True
+
+
+async def add_active_chat(chat_id: int):
+ if chat_id not in active:
+ active.append(chat_id)
+
+
+async def remove_active_chat(chat_id: int):
+ if chat_id in active:
+ active.remove(chat_id)
+
+
+# Active Video Chats
+async def get_active_video_chats() -> list:
+ return activevideo
+
+
+async def is_active_video_chat(chat_id: int) -> bool:
+ if chat_id not in activevideo:
+ return False
+ else:
+ return True
+
+
+async def add_active_video_chat(chat_id: int):
+ if chat_id not in activevideo:
+ activevideo.append(chat_id)
+
+
+async def remove_active_video_chat(chat_id: int):
+ if chat_id in activevideo:
+ activevideo.remove(chat_id)
+
+
+# Delete command mode
+async def is_commanddelete_on(chat_id: int) -> bool:
+ if chat_id not in command:
+ return True
+ else:
+ return False
+
+
+async def commanddelete_off(chat_id: int):
+ if chat_id not in command:
+ command.append(chat_id)
+
+
+async def commanddelete_on(chat_id: int):
+ try:
+ command.remove(chat_id)
+ except:
+ pass
+
+
+# Clean Mode
+async def is_cleanmode_on(chat_id: int) -> bool:
+ if chat_id not in cleanmode:
+ return True
+ else:
+ return False
+
+
+async def cleanmode_off(chat_id: int):
+ if chat_id not in cleanmode:
+ cleanmode.append(chat_id)
+
+
+async def cleanmode_on(chat_id: int):
+ try:
+ cleanmode.remove(chat_id)
+ except:
+ pass
+
+
+# Non Admin Chat
+async def check_nonadmin_chat(chat_id: int) -> bool:
+ user = await authdb.find_one({"chat_id": chat_id})
+ if not user:
+ return False
+ return True
+
+
+async def is_nonadmin_chat(chat_id: int) -> bool:
+ mode = nonadmin.get(chat_id)
+ if not mode:
+ user = await authdb.find_one({"chat_id": chat_id})
+ if not user:
+ nonadmin[chat_id] = False
+ return False
+ nonadmin[chat_id] = True
+ return True
+ return mode
+
+
+async def add_nonadmin_chat(chat_id: int):
+ nonadmin[chat_id] = True
+ is_admin = await check_nonadmin_chat(chat_id)
+ if is_admin:
+ return
+ return await authdb.insert_one({"chat_id": chat_id})
+
+
+async def remove_nonadmin_chat(chat_id: int):
+ nonadmin[chat_id] = False
+ is_admin = await check_nonadmin_chat(chat_id)
+ if not is_admin:
+ return
+ return await authdb.delete_one({"chat_id": chat_id})
+
+
+# Video Limit
+async def is_video_allowed(chat_idd) -> str:
+ chat_id = 123456
+ if not vlimit:
+ dblimit = await videodb.find_one({"chat_id": chat_id})
+ if not dblimit:
+ vlimit.clear()
+ vlimit.append(config.VIDEO_STREAM_LIMIT)
+ limit = config.VIDEO_STREAM_LIMIT
+ else:
+ limit = dblimit["limit"]
+ vlimit.clear()
+ vlimit.append(limit)
+ else:
+ limit = vlimit[0]
+ if limit == 0:
+ return False
+ count = len(await get_active_video_chats())
+ if int(count) == int(limit):
+ if not await is_active_video_chat(chat_idd):
+ return False
+ return True
+
+
+async def get_video_limit() -> str:
+ chat_id = 123456
+ if not vlimit:
+ dblimit = await videodb.find_one({"chat_id": chat_id})
+ if not dblimit:
+ limit = config.VIDEO_STREAM_LIMIT
+ else:
+ limit = dblimit["limit"]
+ else:
+ limit = vlimit[0]
+ return limit
+
+
+async def set_video_limit(limt: int):
+ chat_id = 123456
+ vlimit.clear()
+ vlimit.append(limt)
+ return await videodb.update_one(
+ {"chat_id": chat_id}, {"$set": {"limit": limt}}, upsert=True
+ )
+
+
+# On Off
+async def is_on_off(on_off: int) -> bool:
+ onoff = await onoffdb.find_one({"on_off": on_off})
+ if not onoff:
+ return False
+ return True
+
+
+async def add_on(on_off: int):
+ is_on = await is_on_off(on_off)
+ if is_on:
+ return
+ return await onoffdb.insert_one({"on_off": on_off})
+
+
+async def add_off(on_off: int):
+ is_off = await is_on_off(on_off)
+ if not is_off:
+ return
+ return await onoffdb.delete_one({"on_off": on_off})
+
+
+# Maintenance
+
+
+async def is_maintenance():
+ if not maintenance:
+ get = await onoffdb.find_one({"on_off": 1})
+ if not get:
+ maintenance.clear()
+ maintenance.append(2)
+ return True
+ else:
+ maintenance.clear()
+ maintenance.append(1)
+ return False
+ else:
+ if 1 in maintenance:
+ return False
+ else:
+ return True
+
+
+async def maintenance_off():
+ maintenance.clear()
+ maintenance.append(2)
+ is_off = await is_on_off(1)
+ if not is_off:
+ return
+ return await onoffdb.delete_one({"on_off": 1})
+
+
+async def maintenance_on():
+ maintenance.clear()
+ maintenance.append(1)
+ is_on = await is_on_off(1)
+ if is_on:
+ return
+ return await onoffdb.insert_one({"on_off": 1})
+
+
+# Audio Video Limit
+
+from pytgcalls.types.stream.legacy.quality import (HighQualityAudio,
+ HighQualityVideo,
+ LowQualityAudio,
+ LowQualityVideo,
+ MediumQualityAudio,
+ MediumQualityVideo)
+
+
+async def save_audio_bitrate(chat_id: int, bitrate: str):
+ audio[chat_id] = bitrate
+
+
+async def save_video_bitrate(chat_id: int, bitrate: str):
+ video[chat_id] = bitrate
+
+
+async def get_aud_bit_name(chat_id: int) -> str:
+ mode = audio.get(chat_id)
+ if not mode:
+ return "High"
+ return mode
+
+
+async def get_vid_bit_name(chat_id: int) -> str:
+ mode = video.get(chat_id)
+ if not mode:
+ if PRIVATE_BOT_MODE == str(True):
+ return "High"
+ else:
+ return "Medium"
+ return mode
+
+
+async def get_audio_bitrate(chat_id: int) -> str:
+ mode = audio.get(chat_id)
+ if not mode:
+ return MediumQualityAudio()
+ if str(mode) == "High":
+ return HighQualityAudio()
+ elif str(mode) == "Medium":
+ return MediumQualityAudio()
+ elif str(mode) == "Low":
+ return LowQualityAudio()
+
+
+async def get_video_bitrate(chat_id: int) -> str:
+ mode = video.get(chat_id)
+ if not mode:
+ if PRIVATE_BOT_MODE == str(True):
+ return HighQualityVideo()
+ else:
+ return MediumQualityVideo()
+ if str(mode) == "High":
+ return HighQualityVideo()
+ elif str(mode) == "Medium":
+ return MediumQualityVideo()
+ elif str(mode) == "Low":
+ return LowQualityVideo()
diff --git a/YukkiMusic/utils/database/mongodatabase.py b/YukkiMusic/utils/database/mongodatabase.py
new file mode 100644
index 0000000000000000000000000000000000000000..c22186cc6b273a125863c89002454460c639cb92
--- /dev/null
+++ b/YukkiMusic/utils/database/mongodatabase.py
@@ -0,0 +1,440 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from typing import Dict, List, Union
+
+from YukkiMusic.core.mongo import mongodb
+
+queriesdb = mongodb.queries
+userdb = mongodb.userstats
+chattopdb = mongodb.chatstats
+authuserdb = mongodb.authuser
+gbansdb = mongodb.gban
+sudoersdb = mongodb.sudoers
+chatsdb = mongodb.chats
+blacklist_chatdb = mongodb.blacklistChat
+usersdb = mongodb.tgusersdb
+playlistdb = mongodb.playlist
+blockeddb = mongodb.blockedusers
+privatedb = mongodb.privatechats
+
+
+# Playlist
+
+
+async def _get_playlists(chat_id: int) -> Dict[str, int]:
+ _notes = await playlistdb.find_one({"chat_id": chat_id})
+ if not _notes:
+ return {}
+ return _notes["notes"]
+
+
+async def get_playlist_names(chat_id: int) -> List[str]:
+ _notes = []
+ for note in await _get_playlists(chat_id):
+ _notes.append(note)
+ return _notes
+
+
+async def get_playlist(chat_id: int, name: str) -> Union[bool, dict]:
+ name = name
+ _notes = await _get_playlists(chat_id)
+ if name in _notes:
+ return _notes[name]
+ else:
+ return False
+
+
+async def save_playlist(chat_id: int, name: str, note: dict):
+ name = name
+ _notes = await _get_playlists(chat_id)
+ _notes[name] = note
+ await playlistdb.update_one(
+ {"chat_id": chat_id}, {"$set": {"notes": _notes}}, upsert=True
+ )
+
+
+async def delete_playlist(chat_id: int, name: str) -> bool:
+ notesd = await _get_playlists(chat_id)
+ name = name
+ if name in notesd:
+ del notesd[name]
+ await playlistdb.update_one(
+ {"chat_id": chat_id},
+ {"$set": {"notes": notesd}},
+ upsert=True,
+ )
+ return True
+ return False
+
+
+# Users
+
+
+async def is_served_user(user_id: int) -> bool:
+ user = await usersdb.find_one({"user_id": user_id})
+ if not user:
+ return False
+ return True
+
+
+async def get_served_users() -> list:
+ users_list = []
+ async for user in usersdb.find({"user_id": {"$gt": 0}}):
+ users_list.append(user)
+ return users_list
+
+
+async def add_served_user(user_id: int):
+ is_served = await is_served_user(user_id)
+ if is_served:
+ return
+ return await usersdb.insert_one({"user_id": user_id})
+
+
+# Served Chats
+
+
+async def get_served_chats() -> list:
+ chats_list = []
+ async for chat in chatsdb.find({"chat_id": {"$lt": 0}}):
+ chats_list.append(chat)
+ return chats_list
+
+
+async def is_served_chat(chat_id: int) -> bool:
+ chat = await chatsdb.find_one({"chat_id": chat_id})
+ if not chat:
+ return False
+ return True
+
+
+async def add_served_chat(chat_id: int):
+ is_served = await is_served_chat(chat_id)
+ if is_served:
+ return
+ return await chatsdb.insert_one({"chat_id": chat_id})
+
+
+# Blacklisted Chats
+
+
+async def blacklisted_chats() -> list:
+ chats_list = []
+ async for chat in blacklist_chatdb.find({"chat_id": {"$lt": 0}}):
+ chats_list.append(chat["chat_id"])
+ return chats_list
+
+
+async def blacklist_chat(chat_id: int) -> bool:
+ if not await blacklist_chatdb.find_one({"chat_id": chat_id}):
+ await blacklist_chatdb.insert_one({"chat_id": chat_id})
+ return True
+ return False
+
+
+async def whitelist_chat(chat_id: int) -> bool:
+ if await blacklist_chatdb.find_one({"chat_id": chat_id}):
+ await blacklist_chatdb.delete_one({"chat_id": chat_id})
+ return True
+ return False
+
+
+# Private Served Chats
+
+
+async def get_private_served_chats() -> list:
+ chats_list = []
+ async for chat in privatedb.find({"chat_id": {"$lt": 0}}):
+ chats_list.append(chat)
+ return chats_list
+
+
+async def is_served_private_chat(chat_id: int) -> bool:
+ chat = await privatedb.find_one({"chat_id": chat_id})
+ if not chat:
+ return False
+ return True
+
+
+async def add_private_chat(chat_id: int):
+ is_served = await is_served_private_chat(chat_id)
+ if is_served:
+ return
+ return await privatedb.insert_one({"chat_id": chat_id})
+
+
+async def remove_private_chat(chat_id: int):
+ is_served = await is_served_private_chat(chat_id)
+ if not is_served:
+ return
+ return await privatedb.delete_one({"chat_id": chat_id})
+
+
+# Auth Users DB
+
+
+async def _get_authusers(chat_id: int) -> Dict[str, int]:
+ _notes = await authuserdb.find_one({"chat_id": chat_id})
+ if not _notes:
+ return {}
+ return _notes["notes"]
+
+
+async def get_authuser_names(chat_id: int) -> List[str]:
+ _notes = []
+ for note in await _get_authusers(chat_id):
+ _notes.append(note)
+ return _notes
+
+
+async def get_authuser(chat_id: int, name: str) -> Union[bool, dict]:
+ name = name
+ _notes = await _get_authusers(chat_id)
+ if name in _notes:
+ return _notes[name]
+ else:
+ return False
+
+
+async def save_authuser(chat_id: int, name: str, note: dict):
+ name = name
+ _notes = await _get_authusers(chat_id)
+ _notes[name] = note
+
+ await authuserdb.update_one(
+ {"chat_id": chat_id}, {"$set": {"notes": _notes}}, upsert=True
+ )
+
+
+async def delete_authuser(chat_id: int, name: str) -> bool:
+ notesd = await _get_authusers(chat_id)
+ name = name
+ if name in notesd:
+ del notesd[name]
+ await authuserdb.update_one(
+ {"chat_id": chat_id},
+ {"$set": {"notes": notesd}},
+ upsert=True,
+ )
+ return True
+ return False
+
+
+# Blocked Users
+
+
+async def get_gbanned() -> list:
+ results = []
+ async for user in gbansdb.find({"user_id": {"$gt": 0}}):
+ user_id = user["user_id"]
+ results.append(user_id)
+ return results
+
+
+async def is_gbanned_user(user_id: int) -> bool:
+ user = await gbansdb.find_one({"user_id": user_id})
+ if not user:
+ return False
+ return True
+
+
+async def add_gban_user(user_id: int):
+ is_gbanned = await is_gbanned_user(user_id)
+ if is_gbanned:
+ return
+ return await gbansdb.insert_one({"user_id": user_id})
+
+
+async def remove_gban_user(user_id: int):
+ is_gbanned = await is_gbanned_user(user_id)
+ if not is_gbanned:
+ return
+ return await gbansdb.delete_one({"user_id": user_id})
+
+
+# Sudoers
+
+
+async def get_sudoers() -> list:
+ sudoers = await sudoersdb.find_one({"sudo": "sudo"})
+ if not sudoers:
+ return []
+ return sudoers["sudoers"]
+
+
+async def add_sudo(user_id: int) -> bool:
+ sudoers = await get_sudoers()
+ sudoers.append(user_id)
+ await sudoersdb.update_one(
+ {"sudo": "sudo"}, {"$set": {"sudoers": sudoers}}, upsert=True
+ )
+ return True
+
+
+async def remove_sudo(user_id: int) -> bool:
+ sudoers = await get_sudoers()
+ sudoers.remove(user_id)
+ await sudoersdb.update_one(
+ {"sudo": "sudo"}, {"$set": {"sudoers": sudoers}}, upsert=True
+ )
+ return True
+
+
+# Total Queries on bot
+
+
+async def get_queries() -> int:
+ chat_id = 98324
+ mode = await queriesdb.find_one({"chat_id": chat_id})
+ if not mode:
+ return 0
+ return mode["mode"]
+
+
+async def set_queries(mode: int):
+ chat_id = 98324
+ queries = await queriesdb.find_one({"chat_id": chat_id})
+ if queries:
+ mode = queries["mode"] + mode
+ return await queriesdb.update_one(
+ {"chat_id": chat_id}, {"$set": {"mode": mode}}, upsert=True
+ )
+
+
+# Top Chats DB
+
+
+async def get_top_chats() -> dict:
+ results = {}
+ async for chat in chattopdb.find({"chat_id": {"$lt": 0}}):
+ chat_id = chat["chat_id"]
+ total = 0
+ for i in chat["vidid"]:
+ counts_ = chat["vidid"][i]["spot"]
+ if counts_ > 0:
+ total += counts_
+ results[chat_id] = total
+ return results
+
+
+async def get_global_tops() -> dict:
+ results = {}
+ async for chat in chattopdb.find({"chat_id": {"$lt": 0}}):
+ for i in chat["vidid"]:
+ counts_ = chat["vidid"][i]["spot"]
+ title_ = chat["vidid"][i]["title"]
+ if counts_ > 0:
+ if i not in results:
+ results[i] = {}
+ results[i]["spot"] = counts_
+ results[i]["title"] = title_
+ else:
+ spot = results[i]["spot"]
+ count_ = spot + counts_
+ results[i]["spot"] = count_
+ return results
+
+
+async def get_particulars(chat_id: int) -> Dict[str, int]:
+ ids = await chattopdb.find_one({"chat_id": chat_id})
+ if not ids:
+ return {}
+ return ids["vidid"]
+
+
+async def get_particular_top(
+ chat_id: int, name: str
+) -> Union[bool, dict]:
+ ids = await get_particulars(chat_id)
+ if name in ids:
+ return ids[name]
+
+
+async def update_particular_top(chat_id: int, name: str, vidid: dict):
+ ids = await get_particulars(chat_id)
+ ids[name] = vidid
+ await chattopdb.update_one(
+ {"chat_id": chat_id}, {"$set": {"vidid": ids}}, upsert=True
+ )
+
+
+# Top User DB
+
+
+async def get_userss(chat_id: int) -> Dict[str, int]:
+ ids = await userdb.find_one({"chat_id": chat_id})
+ if not ids:
+ return {}
+ return ids["vidid"]
+
+
+async def get_user_top(chat_id: int, name: str) -> Union[bool, dict]:
+ ids = await get_userss(chat_id)
+ if name in ids:
+ return ids[name]
+
+
+async def update_user_top(chat_id: int, name: str, vidid: dict):
+ ids = await get_userss(chat_id)
+ ids[name] = vidid
+ await userdb.update_one(
+ {"chat_id": chat_id}, {"$set": {"vidid": ids}}, upsert=True
+ )
+
+
+async def get_topp_users() -> dict:
+ results = {}
+ async for chat in userdb.find({"chat_id": {"$gt": 0}}):
+ user_id = chat["chat_id"]
+ total = 0
+ for i in chat["vidid"]:
+ counts_ = chat["vidid"][i]["spot"]
+ if counts_ > 0:
+ total += counts_
+ results[user_id] = total
+ return results
+
+
+# Gban Users
+
+
+async def get_banned_users() -> list:
+ results = []
+ async for user in blockeddb.find({"user_id": {"$gt": 0}}):
+ user_id = user["user_id"]
+ results.append(user_id)
+ return results
+
+
+async def get_banned_count() -> int:
+ users = blockeddb.find({"user_id": {"$gt": 0}})
+ users = await users.to_list(length=100000)
+ return len(users)
+
+
+async def is_banned_user(user_id: int) -> bool:
+ user = await blockeddb.find_one({"user_id": user_id})
+ if not user:
+ return False
+ return True
+
+
+async def add_banned_user(user_id: int):
+ is_gbanned = await is_banned_user(user_id)
+ if is_gbanned:
+ return
+ return await blockeddb.insert_one({"user_id": user_id})
+
+
+async def remove_banned_user(user_id: int):
+ is_gbanned = await is_banned_user(user_id)
+ if not is_gbanned:
+ return
+ return await blockeddb.delete_one({"user_id": user_id})
diff --git a/YukkiMusic/utils/decorators/__init__.py b/YukkiMusic/utils/decorators/__init__.py
new file mode 100644
index 0000000000000000000000000000000000000000..03d48c0b192bb046d8f6c41eed215be521e7a821
--- /dev/null
+++ b/YukkiMusic/utils/decorators/__init__.py
@@ -0,0 +1,11 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from .admins import *
+from .language import *
diff --git a/YukkiMusic/utils/decorators/admins.py b/YukkiMusic/utils/decorators/admins.py
new file mode 100644
index 0000000000000000000000000000000000000000..c22b0eee195f861520eaf703cdd594bd04b56231
--- /dev/null
+++ b/YukkiMusic/utils/decorators/admins.py
@@ -0,0 +1,174 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram.types import InlineKeyboardButton, InlineKeyboardMarkup
+
+from config import adminlist
+from strings import get_string
+from YukkiMusic import app
+from YukkiMusic.misc import SUDOERS
+from YukkiMusic.utils.database import (get_authuser_names, get_cmode,
+ get_lang, is_active_chat,
+ is_commanddelete_on,
+ is_maintenance,
+ is_nonadmin_chat)
+
+from ..formatters import int_to_alpha
+
+
+def AdminRightsCheck(mystic):
+ async def wrapper(client, message):
+ if await is_maintenance() is False:
+ if message.from_user.id not in SUDOERS:
+ return await message.reply_text(
+ "Bot is under maintenance. Please wait for some time..."
+ )
+ if await is_commanddelete_on(message.chat.id):
+ try:
+ await message.delete()
+ except:
+ pass
+ try:
+ language = await get_lang(message.chat.id)
+ _ = get_string(language)
+ except:
+ _ = get_string("en")
+ if message.sender_chat:
+ upl = InlineKeyboardMarkup(
+ [
+ [
+ InlineKeyboardButton(
+ text="How to Fix this? ",
+ callback_data="AnonymousAdmin",
+ ),
+ ]
+ ]
+ )
+ return await message.reply_text(
+ _["general_4"], reply_markup=upl
+ )
+ if message.command[0][0] == "c":
+ chat_id = await get_cmode(message.chat.id)
+ if chat_id is None:
+ return await message.reply_text(_["setting_12"])
+ try:
+ await app.get_chat(chat_id)
+ except:
+ return await message.reply_text(_["cplay_4"])
+ else:
+ chat_id = message.chat.id
+ if not await is_active_chat(chat_id):
+ return await message.reply_text(_["general_6"])
+ is_non_admin = await is_nonadmin_chat(message.chat.id)
+ if not is_non_admin:
+ if message.from_user.id not in SUDOERS:
+ admins = adminlist.get(message.chat.id)
+ if not admins:
+ return await message.reply_text(_["admin_18"])
+ else:
+ if message.from_user.id not in admins:
+ return await message.reply_text(_["admin_19"])
+ return await mystic(client, message, _, chat_id)
+
+ return wrapper
+
+
+def AdminActual(mystic):
+ async def wrapper(client, message):
+ if await is_maintenance() is False:
+ if message.from_user.id not in SUDOERS:
+ return await message.reply_text(
+ "Bot is under maintenance. Please wait for some time..."
+ )
+ if await is_commanddelete_on(message.chat.id):
+ try:
+ await message.delete()
+ except:
+ pass
+ try:
+ language = await get_lang(message.chat.id)
+ _ = get_string(language)
+ except:
+ _ = get_string("en")
+ if message.sender_chat:
+ upl = InlineKeyboardMarkup(
+ [
+ [
+ InlineKeyboardButton(
+ text="How to Fix this? ",
+ callback_data="AnonymousAdmin",
+ ),
+ ]
+ ]
+ )
+ return await message.reply_text(
+ _["general_4"], reply_markup=upl
+ )
+ if message.from_user.id not in SUDOERS:
+ try:
+ member = await app.get_chat_member(
+ message.chat.id, message.from_user.id
+ )
+ except:
+ return
+ if not member.can_manage_voice_chats:
+ return await message.reply(_["general_5"])
+ return await mystic(client, message, _)
+
+ return wrapper
+
+
+def ActualAdminCB(mystic):
+ async def wrapper(client, CallbackQuery):
+ if await is_maintenance() is False:
+ if CallbackQuery.from_user.id not in SUDOERS:
+ return await CallbackQuery.answer(
+ "Bot is under maintenance. Please wait for some time...",
+ show_alert=True,
+ )
+ try:
+ language = await get_lang(CallbackQuery.message.chat.id)
+ _ = get_string(language)
+ except:
+ _ = get_string("en")
+ if CallbackQuery.message.chat.type == "private":
+ return await mystic(client, CallbackQuery, _)
+ is_non_admin = await is_nonadmin_chat(
+ CallbackQuery.message.chat.id
+ )
+ if not is_non_admin:
+ try:
+ a = await app.get_chat_member(
+ CallbackQuery.message.chat.id,
+ CallbackQuery.from_user.id,
+ )
+ except:
+ return await CallbackQuery.answer(
+ _["general_5"], show_alert=True
+ )
+ """
+ if not a.can_manage_voice_chats:
+ if CallbackQuery.from_user.id not in SUDOERS:
+ token = await int_to_alpha(
+ CallbackQuery.from_user.id
+ )
+ _check = await get_authuser_names(
+ CallbackQuery.from_user.id
+ )
+ if token not in _check:
+ try:
+ return await CallbackQuery.answer(
+ _["general_5"],
+ show_alert=True,
+ )
+ except:
+ return """
+ return await mystic(client, CallbackQuery, _)
+
+ return wrapper
diff --git a/YukkiMusic/utils/decorators/language.py b/YukkiMusic/utils/decorators/language.py
new file mode 100644
index 0000000000000000000000000000000000000000..46605f13907fda04b5a7dff2d94e7a7340f9ef3a
--- /dev/null
+++ b/YukkiMusic/utils/decorators/language.py
@@ -0,0 +1,66 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+
+from strings import get_string
+from YukkiMusic.misc import SUDOERS
+from YukkiMusic.utils.database import (get_lang, is_commanddelete_on,
+ is_maintenance)
+
+
+def language(mystic):
+ async def wrapper(_, message, **kwargs):
+ if await is_maintenance() is False:
+ if message.from_user.id not in SUDOERS:
+ return await message.reply_text(
+ "Bot is under maintenance. Please wait for some time..."
+ )
+ if await is_commanddelete_on(message.chat.id):
+ try:
+ await message.delete()
+ except:
+ pass
+ try:
+ language = await get_lang(message.chat.id)
+ language = get_string(language)
+ except:
+ language = get_string("en")
+ return await mystic(_, message, language)
+
+ return wrapper
+
+
+def languageCB(mystic):
+ async def wrapper(_, CallbackQuery, **kwargs):
+ if await is_maintenance() is False:
+ if CallbackQuery.from_user.id not in SUDOERS:
+ return await CallbackQuery.answer(
+ "Bot is under maintenance. Please wait for some time...",
+ show_alert=True,
+ )
+ try:
+ language = await get_lang(CallbackQuery.message.chat.id)
+ language = get_string(language)
+ except:
+ language = get_string("en")
+ return await mystic(_, CallbackQuery, language)
+
+ return wrapper
+
+
+def LanguageStart(mystic):
+ async def wrapper(_, message, **kwargs):
+ try:
+ language = await get_lang(message.chat.id)
+ language = get_string(language)
+ except:
+ language = get_string("en")
+ return await mystic(_, message, language)
+
+ return wrapper
diff --git a/YukkiMusic/utils/decorators/play.py b/YukkiMusic/utils/decorators/play.py
new file mode 100644
index 0000000000000000000000000000000000000000..83c56e95bb43da24aaf3263a5985bdb882ec2728
--- /dev/null
+++ b/YukkiMusic/utils/decorators/play.py
@@ -0,0 +1,138 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram.types import InlineKeyboardButton, InlineKeyboardMarkup
+
+from config import PLAYLIST_IMG_URL, PRIVATE_BOT_MODE, adminlist
+from strings import get_string
+from YukkiMusic import YouTube, app
+from YukkiMusic.misc import SUDOERS
+from YukkiMusic.utils.database import (get_cmode, get_lang,
+ get_playmode, get_playtype,
+ is_active_chat,
+ is_commanddelete_on,
+ is_served_private_chat)
+from YukkiMusic.utils.database.memorydatabase import is_maintenance
+from YukkiMusic.utils.inline.playlist import botplaylist_markup
+
+
+def PlayWrapper(command):
+ async def wrapper(client, message):
+
+ if await is_maintenance() is False:
+ if message.from_user.id not in SUDOERS:
+ return await message.reply_text(
+ "Bot is under maintenance. Please wait for some time..."
+ )
+ if PRIVATE_BOT_MODE == str(True):
+ if not await is_served_private_chat(message.chat.id):
+ await message.reply_text(
+ "**Private Music Bot**\n\nOnly for authorized chats from the owner. Ask my owner to allow your chat first."
+ )
+ return await app.leave_chat(message.chat.id)
+ if await is_commanddelete_on(message.chat.id):
+ try:
+ await message.delete()
+ except:
+ pass
+ language = await get_lang(message.chat.id)
+ _ = get_string(language)
+ audio_telegram = (
+ (
+ message.reply_to_message.audio
+ or message.reply_to_message.voice
+ )
+ if message.reply_to_message
+ else None
+ )
+ video_telegram = (
+ (
+ message.reply_to_message.video
+ or message.reply_to_message.document
+ )
+ if message.reply_to_message
+ else None
+ )
+ url = await YouTube.url(message)
+ if (
+ audio_telegram is None
+ and video_telegram is None
+ and url is None
+ ):
+ if len(message.command) < 2:
+ if "stream" in message.command:
+ return await message.reply_text(_["str_1"])
+ buttons = botplaylist_markup(_)
+ return await message.reply_photo(
+ photo=PLAYLIST_IMG_URL,
+ caption=_["playlist_1"],
+ reply_markup=InlineKeyboardMarkup(buttons),
+ )
+ if message.sender_chat:
+ upl = InlineKeyboardMarkup(
+ [
+ [
+ InlineKeyboardButton(
+ text="How to Fix this? ",
+ callback_data="AnonymousAdmin",
+ ),
+ ]
+ ]
+ )
+ return await message.reply_text(
+ _["general_4"], reply_markup=upl
+ )
+ if message.command[0][0] == "c":
+ chat_id = await get_cmode(message.chat.id)
+ if chat_id is None:
+ return await message.reply_text(_["setting_12"])
+ try:
+ chat = await app.get_chat(chat_id)
+ except:
+ return await message.reply_text(_["cplay_4"])
+ channel = chat.title
+ else:
+ chat_id = message.chat.id
+ channel = None
+ playmode = await get_playmode(message.chat.id)
+ playty = await get_playtype(message.chat.id)
+ if playty != "Everyone":
+ if message.from_user.id not in SUDOERS:
+ admins = adminlist.get(message.chat.id)
+ if not admins:
+ return await message.reply_text(_["admin_18"])
+ else:
+ if message.from_user.id not in admins:
+ return await message.reply_text(_["play_4"])
+ if message.command[0][0] == "v":
+ video = True
+ else:
+ if "-v" in message.text:
+ video = True
+ else:
+ video = True if message.command[0][1] == "v" else None
+ if message.command[0][-1] == "e":
+ if not await is_active_chat(chat_id):
+ return await message.reply_text(_["play_18"])
+ fplay = True
+ else:
+ fplay = None
+ return await command(
+ client,
+ message,
+ _,
+ chat_id,
+ video,
+ channel,
+ playmode,
+ url,
+ fplay,
+ )
+
+ return wrapper
diff --git a/YukkiMusic/utils/exceptions.py b/YukkiMusic/utils/exceptions.py
new file mode 100644
index 0000000000000000000000000000000000000000..b141d5645f5dac7525171b19ca6c6361436f2fb9
--- /dev/null
+++ b/YukkiMusic/utils/exceptions.py
@@ -0,0 +1,13 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+
+class AssistantErr(Exception):
+ def __init__(self, errr: str):
+ super().__init__(errr)
diff --git a/YukkiMusic/utils/formatters.py b/YukkiMusic/utils/formatters.py
new file mode 100644
index 0000000000000000000000000000000000000000..a9fac466d61fa4e1209093752784a51baa09d5f3
--- /dev/null
+++ b/YukkiMusic/utils/formatters.py
@@ -0,0 +1,137 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from typing import Union
+
+from pyrogram.types import Message
+
+
+def get_readable_time(seconds: int) -> str:
+ count = 0
+ ping_time = ""
+ time_list = []
+ time_suffix_list = ["s", "m", "h", "days"]
+ while count < 4:
+ count += 1
+ if count < 3:
+ remainder, result = divmod(seconds, 60)
+ else:
+ remainder, result = divmod(seconds, 24)
+ if seconds == 0 and remainder == 0:
+ break
+ time_list.append(int(result))
+ seconds = int(remainder)
+ for i in range(len(time_list)):
+ time_list[i] = str(time_list[i]) + time_suffix_list[i]
+ if len(time_list) == 4:
+ ping_time += time_list.pop() + ", "
+ time_list.reverse()
+ ping_time += ":".join(time_list)
+ return ping_time
+
+
+def convert_bytes(size: float) -> str:
+ """humanize size"""
+ if not size:
+ return ""
+ power = 1024
+ t_n = 0
+ power_dict = {0: " ", 1: "Ki", 2: "Mi", 3: "Gi", 4: "Ti"}
+ while size > power:
+ size /= power
+ t_n += 1
+ return "{:.2f} {}B".format(size, power_dict[t_n])
+
+
+async def int_to_alpha(user_id: int) -> str:
+ alphabet = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j"]
+ text = ""
+ user_id = str(user_id)
+ for i in user_id:
+ text += alphabet[int(i)]
+ return text
+
+
+async def alpha_to_int(user_id_alphabet: str) -> int:
+ alphabet = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j"]
+ user_id = ""
+ for i in user_id_alphabet:
+ index = alphabet.index(i)
+ user_id += str(index)
+ user_id = int(user_id)
+ return user_id
+
+
+def time_to_seconds(time):
+ stringt = str(time)
+ return sum(
+ int(x) * 60**i
+ for i, x in enumerate(reversed(stringt.split(":")))
+ )
+
+
+def seconds_to_min(seconds):
+ if seconds is not None:
+ seconds = int(seconds)
+ d, h, m, s = (
+ seconds // (3600 * 24),
+ seconds // 3600 % 24,
+ seconds % 3600 // 60,
+ seconds % 3600 % 60,
+ )
+ if d > 0:
+ return "{:02d}:{:02d}:{:02d}:{:02d}".format(d, h, m, s)
+ elif h > 0:
+ return "{:02d}:{:02d}:{:02d}".format(h, m, s)
+ elif m > 0:
+ return "{:02d}:{:02d}".format(m, s)
+ elif s > 0:
+ return "00:{:02d}".format(s)
+ return "-"
+
+
+formats = [
+ "webm",
+ "mkv",
+ "flv",
+ "vob",
+ "ogv",
+ "ogg",
+ "rrc",
+ "gifv",
+ "mng",
+ "mov",
+ "avi",
+ "qt",
+ "wmv",
+ "yuv",
+ "rm",
+ "asf",
+ "amv",
+ "mp4",
+ "m4p",
+ "m4v",
+ "mpg",
+ "mp2",
+ "mpeg",
+ "mpe",
+ "mpv",
+ "m4v",
+ "svi",
+ "3gp",
+ "3g2",
+ "mxf",
+ "roq",
+ "nsv",
+ "flv",
+ "f4v",
+ "f4p",
+ "f4a",
+ "f4b",
+]
diff --git a/YukkiMusic/utils/inline/__init__.py b/YukkiMusic/utils/inline/__init__.py
new file mode 100644
index 0000000000000000000000000000000000000000..d90cc53c063764cf71e02d31c41f777d93e7474f
--- /dev/null
+++ b/YukkiMusic/utils/inline/__init__.py
@@ -0,0 +1,16 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from .help import *
+from .play import *
+from .playlist import *
+from .queue import *
+from .settings import *
+from .song import *
+from .start import *
diff --git a/YukkiMusic/utils/inline/help.py b/YukkiMusic/utils/inline/help.py
new file mode 100644
index 0000000000000000000000000000000000000000..76e988306619a907c5977deb8dcfdd96ba76cc18
--- /dev/null
+++ b/YukkiMusic/utils/inline/help.py
@@ -0,0 +1,93 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from typing import Union
+
+from pyrogram.types import InlineKeyboardButton, InlineKeyboardMarkup
+
+from YukkiMusic import app
+
+
+def help_pannel(_, START: Union[bool, int] = None):
+ first = [
+ InlineKeyboardButton(
+ text=_["CLOSEMENU_BUTTON"], callback_data=f"close"
+ )
+ ]
+ second = [
+ InlineKeyboardButton(
+ text=_["BACK_BUTTON"],
+ callback_data=f"settingsback_helper",
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSEMENU_BUTTON"], callback_data=f"close"
+ ),
+ ]
+ mark = second if START else first
+ upl = InlineKeyboardMarkup(
+ [
+ [
+ InlineKeyboardButton(
+ text=_["H_B_1"],
+ callback_data="help_callback hb1",
+ ),
+ InlineKeyboardButton(
+ text=_["H_B_2"],
+ callback_data="help_callback hb2",
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["H_B_3"],
+ callback_data="help_callback hb3",
+ ),
+ InlineKeyboardButton(
+ text=_["H_B_4"],
+ callback_data="help_callback hb4",
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["H_B_6"],
+ callback_data="help_callback hb5",
+ ),
+ ],
+ mark,
+ ]
+ )
+ return upl
+
+
+def help_back_markup(_):
+ upl = InlineKeyboardMarkup(
+ [
+ [
+ InlineKeyboardButton(
+ text=_["BACK_BUTTON"],
+ callback_data=f"settings_back_helper",
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"], callback_data=f"close"
+ ),
+ ]
+ ]
+ )
+ return upl
+
+
+def private_help_panel(_):
+ buttons = [
+ [
+ InlineKeyboardButton(
+ text=_["S_B_1"],
+ url=f"https://t.me/{app.username}?start=help",
+ ),
+ ],
+ ]
+ return buttons
diff --git a/YukkiMusic/utils/inline/play.py b/YukkiMusic/utils/inline/play.py
new file mode 100644
index 0000000000000000000000000000000000000000..40a6fe06a93bf44e17301e50b92bac2e93423b99
--- /dev/null
+++ b/YukkiMusic/utils/inline/play.py
@@ -0,0 +1,340 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import random
+
+from pyrogram.types import InlineKeyboardButton
+
+selections = [
+ "ââââââ
ââ
â",
+ "âââââ
âââ
â",
+ "âââââ
ââââ
",
+ "ââââââ
ââ
â",
+ "ââââââââ
â",
+ "âââââ
ââââ
",
+ "âââââ
ââ
ââ",
+ "âââ
âââ
âââ",
+ "ââ
ââ
âââââ",
+ "ââ
ââ
âââââ",
+ "ââââ
ââ
âââ",
+ "â
ââââ
ââââ",
+ "ââ
ââ
ââââ
â",
+]
+
+
+## After Edits with Timer Bar
+
+
+def stream_markup_timer(_, videoid, chat_id, played, dur):
+ bar = random.choice(selections)
+ buttons = [
+ [
+ InlineKeyboardButton(
+ text=f"{played} {bar} {dur}",
+ callback_data="GetTimer",
+ )
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["PL_B_2"],
+ callback_data=f"add_playlist {videoid}",
+ ),
+ InlineKeyboardButton(
+ text=_["PL_B_3"],
+ callback_data=f"PanelMarkup {videoid}|{chat_id}",
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["CLOSEMENU_BUTTON"], callback_data="close"
+ )
+ ],
+ ]
+ return buttons
+
+
+def telegram_markup_timer(_, chat_id, played, dur):
+ bar = random.choice(selections)
+ buttons = [
+ [
+ InlineKeyboardButton(
+ text=f"{played} {bar} {dur}",
+ callback_data="GetTimer",
+ )
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["PL_B_3"],
+ callback_data=f"PanelMarkup None|{chat_id}",
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSEMENU_BUTTON"], callback_data="close"
+ ),
+ ],
+ ]
+ return buttons
+
+
+## Inline without Timer Bar
+
+
+def stream_markup(_, videoid, chat_id):
+ buttons = [
+ [
+ InlineKeyboardButton(
+ text=_["PL_B_2"],
+ callback_data=f"add_playlist {videoid}",
+ ),
+ InlineKeyboardButton(
+ text=_["PL_B_3"],
+ callback_data=f"PanelMarkup None|{chat_id}",
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["CLOSEMENU_BUTTON"], callback_data="close"
+ )
+ ],
+ ]
+ return buttons
+
+
+def telegram_markup(_, chat_id):
+ buttons = [
+ [
+ InlineKeyboardButton(
+ text=_["PL_B_3"],
+ callback_data=f"PanelMarkup None|{chat_id}",
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSEMENU_BUTTON"], callback_data="close"
+ ),
+ ],
+ ]
+ return buttons
+
+
+## Search Query Inline
+
+
+def track_markup(_, videoid, user_id, channel, fplay):
+ buttons = [
+ [
+ InlineKeyboardButton(
+ text=_["P_B_1"],
+ callback_data=f"MusicStream {videoid}|{user_id}|a|{channel}|{fplay}",
+ ),
+ InlineKeyboardButton(
+ text=_["P_B_2"],
+ callback_data=f"MusicStream {videoid}|{user_id}|v|{channel}|{fplay}",
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"],
+ callback_data=f"forceclose {videoid}|{user_id}",
+ )
+ ],
+ ]
+ return buttons
+
+
+def playlist_markup(_, videoid, user_id, ptype, channel, fplay):
+ buttons = [
+ [
+ InlineKeyboardButton(
+ text=_["P_B_1"],
+ callback_data=f"YukkiPlaylists {videoid}|{user_id}|{ptype}|a|{channel}|{fplay}",
+ ),
+ InlineKeyboardButton(
+ text=_["P_B_2"],
+ callback_data=f"YukkiPlaylists {videoid}|{user_id}|{ptype}|v|{channel}|{fplay}",
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"],
+ callback_data=f"forceclose {videoid}|{user_id}",
+ ),
+ ],
+ ]
+ return buttons
+
+
+## Live Stream Markup
+
+
+def livestream_markup(_, videoid, user_id, mode, channel, fplay):
+ buttons = [
+ [
+ InlineKeyboardButton(
+ text=_["P_B_3"],
+ callback_data=f"LiveStream {videoid}|{user_id}|{mode}|{channel}|{fplay}",
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSEMENU_BUTTON"],
+ callback_data=f"forceclose {videoid}|{user_id}",
+ ),
+ ],
+ ]
+ return buttons
+
+
+## Slider Query Markup
+
+
+def slider_markup(
+ _, videoid, user_id, query, query_type, channel, fplay
+):
+ query = f"{query[:20]}"
+ buttons = [
+ [
+ InlineKeyboardButton(
+ text=_["P_B_1"],
+ callback_data=f"MusicStream {videoid}|{user_id}|a|{channel}|{fplay}",
+ ),
+ InlineKeyboardButton(
+ text=_["P_B_2"],
+ callback_data=f"MusicStream {videoid}|{user_id}|v|{channel}|{fplay}",
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text="âŽ",
+ callback_data=f"slider B|{query_type}|{query}|{user_id}|{channel}|{fplay}",
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"],
+ callback_data=f"forceclose {query}|{user_id}",
+ ),
+ InlineKeyboardButton(
+ text="â¯",
+ callback_data=f"slider F|{query_type}|{query}|{user_id}|{channel}|{fplay}",
+ ),
+ ],
+ ]
+ return buttons
+
+
+## Cpanel Markup
+
+
+def panel_markup_1(_, videoid, chat_id):
+ buttons = [
+ [
+ InlineKeyboardButton(
+ text="⸠Pause", callback_data=f"ADMIN Pause|{chat_id}"
+ ),
+ InlineKeyboardButton(
+ text="âļī¸ Resume",
+ callback_data=f"ADMIN Resume|{chat_id}",
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text="⯠Skip", callback_data=f"ADMIN Skip|{chat_id}"
+ ),
+ InlineKeyboardButton(
+ text="âš Stop", callback_data=f"ADMIN Stop|{chat_id}"
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text="âī¸",
+ callback_data=f"Pages Back|0|{videoid}|{chat_id}",
+ ),
+ InlineKeyboardButton(
+ text="đ Back",
+ callback_data=f"MainMarkup {videoid}|{chat_id}",
+ ),
+ InlineKeyboardButton(
+ text="âļī¸",
+ callback_data=f"Pages Forw|0|{videoid}|{chat_id}",
+ ),
+ ],
+ ]
+ return buttons
+
+
+def panel_markup_2(_, videoid, chat_id):
+ buttons = [
+ [
+ InlineKeyboardButton(
+ text="đ Mute", callback_data=f"ADMIN Mute|{chat_id}"
+ ),
+ InlineKeyboardButton(
+ text="đ Unmute",
+ callback_data=f"ADMIN Unmute|{chat_id}",
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text="đ Shuffle",
+ callback_data=f"ADMIN Shuffle|{chat_id}",
+ ),
+ InlineKeyboardButton(
+ text="đ Loop", callback_data=f"ADMIN Loop|{chat_id}"
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text="âī¸",
+ callback_data=f"Pages Back|1|{videoid}|{chat_id}",
+ ),
+ InlineKeyboardButton(
+ text="đ Back",
+ callback_data=f"MainMarkup {videoid}|{chat_id}",
+ ),
+ InlineKeyboardButton(
+ text="âļī¸",
+ callback_data=f"Pages Forw|1|{videoid}|{chat_id}",
+ ),
+ ],
+ ]
+ return buttons
+
+
+def panel_markup_3(_, videoid, chat_id):
+ buttons = [
+ [
+ InlineKeyboardButton(
+ text="⎠10 Seconds",
+ callback_data=f"ADMIN 1|{chat_id}",
+ ),
+ InlineKeyboardButton(
+ text="â 10 Seconds",
+ callback_data=f"ADMIN 2|{chat_id}",
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text="⎠30 Seconds",
+ callback_data=f"ADMIN 3|{chat_id}",
+ ),
+ InlineKeyboardButton(
+ text="â 30 Seconds",
+ callback_data=f"ADMIN 4|{chat_id}",
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text="âī¸",
+ callback_data=f"Pages Back|2|{videoid}|{chat_id}",
+ ),
+ InlineKeyboardButton(
+ text="đ Back",
+ callback_data=f"MainMarkup {videoid}|{chat_id}",
+ ),
+ InlineKeyboardButton(
+ text="âļī¸",
+ callback_data=f"Pages Forw|2|{videoid}|{chat_id}",
+ ),
+ ],
+ ]
+ return buttons
diff --git a/YukkiMusic/utils/inline/playlist.py b/YukkiMusic/utils/inline/playlist.py
new file mode 100644
index 0000000000000000000000000000000000000000..313e4faefa347e9b712f7048d3ad36ba7daad60d
--- /dev/null
+++ b/YukkiMusic/utils/inline/playlist.py
@@ -0,0 +1,166 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram.types import InlineKeyboardButton, InlineKeyboardMarkup
+
+
+def botplaylist_markup(_):
+ buttons = [
+ [
+ InlineKeyboardButton(
+ text=_["PL_B_1"],
+ callback_data="get_playlist_playmode",
+ ),
+ InlineKeyboardButton(
+ text=_["PL_B_8"], callback_data="get_top_playlists"
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["PL_B_4"], callback_data="PM"
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"], callback_data="close"
+ ),
+ ],
+ ]
+ return buttons
+
+
+def top_play_markup(_):
+ buttons = [
+ [
+ InlineKeyboardButton(
+ text=_["PL_B_9"], callback_data="SERVERTOP global"
+ )
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["PL_B_10"], callback_data="SERVERTOP chat"
+ )
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["PL_B_11"], callback_data="SERVERTOP user"
+ )
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["BACK_BUTTON"], callback_data="get_playmarkup"
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"], callback_data="close"
+ ),
+ ],
+ ]
+ return buttons
+
+
+def get_playlist_markup(_):
+ buttons = [
+ [
+ InlineKeyboardButton(
+ text=_["P_B_1"], callback_data="play_playlist a"
+ ),
+ InlineKeyboardButton(
+ text=_["P_B_2"], callback_data="play_playlist b"
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["BACK_BUTTON"], callback_data="home_play"
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"], callback_data="close"
+ ),
+ ],
+ ]
+ return buttons
+
+
+def top_play_markup(_):
+ buttons = [
+ [
+ InlineKeyboardButton(
+ text=_["PL_B_9"], callback_data="SERVERTOP Global"
+ )
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["PL_B_10"], callback_data="SERVERTOP Group"
+ )
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["PL_B_11"], callback_data="SERVERTOP Personal"
+ )
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["BACK_BUTTON"], callback_data="get_playmarkup"
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"], callback_data="close"
+ ),
+ ],
+ ]
+ return buttons
+
+
+def failed_top_markup(_):
+ buttons = [
+ [
+ InlineKeyboardButton(
+ text=_["BACK_BUTTON"],
+ callback_data="get_top_playlists",
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"], callback_data="close"
+ ),
+ ],
+ ]
+ return buttons
+
+
+def warning_markup(_):
+ upl = InlineKeyboardMarkup(
+ [
+ [
+ InlineKeyboardButton(
+ text=_["PL_B_7"],
+ callback_data="delete_whole_playlist",
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["BACK_BUTTON"],
+ callback_data="del_back_playlist",
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"],
+ callback_data="close",
+ ),
+ ],
+ ]
+ )
+ return upl
+
+
+def close_markup(_):
+ upl = InlineKeyboardMarkup(
+ [
+ [
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"],
+ callback_data="close",
+ ),
+ ]
+ ]
+ )
+ return upl
diff --git a/YukkiMusic/utils/inline/queue.py b/YukkiMusic/utils/inline/queue.py
new file mode 100644
index 0000000000000000000000000000000000000000..5a8726b5a81e913328b4f33d1befdc8d8a79491b
--- /dev/null
+++ b/YukkiMusic/utils/inline/queue.py
@@ -0,0 +1,74 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from typing import Union
+
+from pyrogram.types import InlineKeyboardButton, InlineKeyboardMarkup
+
+
+def queue_markup(
+ _,
+ DURATION,
+ CPLAY,
+ videoid,
+ played: Union[bool, int] = None,
+ dur: Union[bool, int] = None,
+):
+ not_dur = [
+ [
+ InlineKeyboardButton(
+ text=_["QU_B_1"],
+ callback_data=f"GetQueued {CPLAY}|{videoid}",
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSEMENU_BUTTON"],
+ callback_data="close",
+ ),
+ ]
+ ]
+ dur = [
+ [
+ InlineKeyboardButton(
+ text=_["QU_B_2"].format(played, dur),
+ callback_data="GetTimer",
+ )
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["QU_B_1"],
+ callback_data=f"GetQueued {CPLAY}|{videoid}",
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSEMENU_BUTTON"],
+ callback_data="close",
+ ),
+ ],
+ ]
+ upl = InlineKeyboardMarkup(
+ not_dur if DURATION == "Unknown" else dur
+ )
+ return upl
+
+
+def queue_back_markup(_, CPLAY):
+ upl = InlineKeyboardMarkup(
+ [
+ [
+ InlineKeyboardButton(
+ text=_["BACK_BUTTON"],
+ callback_data=f"queue_back_timer {CPLAY}",
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"],
+ callback_data="close",
+ ),
+ ]
+ ]
+ )
+ return upl
diff --git a/YukkiMusic/utils/inline/settings.py b/YukkiMusic/utils/inline/settings.py
new file mode 100644
index 0000000000000000000000000000000000000000..192ace55194c74791c884917346f2369fbd3cf14
--- /dev/null
+++ b/YukkiMusic/utils/inline/settings.py
@@ -0,0 +1,260 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from typing import Union
+
+from pyrogram.types import InlineKeyboardButton
+
+
+def setting_markup(_):
+ buttons = [
+ [
+ InlineKeyboardButton(
+ text=_["ST_B_1"], callback_data="AQ"
+ ),
+ InlineKeyboardButton(
+ text=_["ST_B_2"], callback_data="VQ"
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["ST_B_3"], callback_data="AU"
+ ),
+ InlineKeyboardButton(
+ text=_["ST_B_6"], callback_data="LG"
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["ST_B_5"], callback_data="PM"
+ ),
+ InlineKeyboardButton(
+ text=_["ST_B_7"], callback_data="CM"
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"], callback_data="close"
+ ),
+ ],
+ ]
+ return buttons
+
+
+def audio_quality_markup(
+ _,
+ low: Union[bool, str] = None,
+ medium: Union[bool, str] = None,
+ high: Union[bool, str] = None,
+):
+ buttons = [
+ [
+ InlineKeyboardButton(
+ text=_["ST_B_8"].format("â
")
+ if low == True
+ else _["ST_B_8"].format(""),
+ callback_data="LQA",
+ )
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["ST_B_9"].format("â
")
+ if medium == True
+ else _["ST_B_9"].format(""),
+ callback_data="MQA",
+ )
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["ST_B_10"].format("â
")
+ if high == True
+ else _["ST_B_10"].format(""),
+ callback_data="HQA",
+ )
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["BACK_BUTTON"],
+ callback_data="settingsback_helper",
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"], callback_data="close"
+ ),
+ ],
+ ]
+ return buttons
+
+
+def video_quality_markup(
+ _,
+ low: Union[bool, str] = None,
+ medium: Union[bool, str] = None,
+ high: Union[bool, str] = None,
+):
+ buttons = [
+ [
+ InlineKeyboardButton(
+ text=_["ST_B_11"].format("â
")
+ if low == True
+ else _["ST_B_11"].format(""),
+ callback_data="LQV",
+ )
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["ST_B_12"].format("â
")
+ if medium == True
+ else _["ST_B_12"].format(""),
+ callback_data="MQV",
+ )
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["ST_B_13"].format("â
")
+ if high == True
+ else _["ST_B_13"].format(""),
+ callback_data="HQV",
+ )
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["BACK_BUTTON"],
+ callback_data="settingsback_helper",
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"], callback_data="close"
+ ),
+ ],
+ ]
+ return buttons
+
+
+def cleanmode_settings_markup(
+ _,
+ status: Union[bool, str] = None,
+ dels: Union[bool, str] = None,
+ sug: Union[bool, str] = None,
+):
+ buttons = [
+ [
+ InlineKeyboardButton(
+ text=_["ST_B_7"], callback_data="CMANSWER"
+ ),
+ InlineKeyboardButton(
+ text=_["ST_B_14"] if status == True else _["ST_B_15"],
+ callback_data="CLEANMODE",
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["ST_B_26"], callback_data="COMMANDANSWER"
+ ),
+ InlineKeyboardButton(
+ text=_["ST_B_14"] if dels == True else _["ST_B_15"],
+ callback_data="COMMANDELMODE",
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["ST_B_27"], callback_data="SUGGANSWER"
+ ),
+ InlineKeyboardButton(
+ text=_["ST_B_14"] if sug == True else _["ST_B_15"],
+ callback_data="SUGGESTIONCHANGE",
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["BACK_BUTTON"],
+ callback_data="settingsback_helper",
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"], callback_data="close"
+ ),
+ ],
+ ]
+ return buttons
+
+
+def auth_users_markup(_, status: Union[bool, str] = None):
+ buttons = [
+ [
+ InlineKeyboardButton(
+ text=_["ST_B_3"], callback_data="AUTHANSWER"
+ ),
+ InlineKeyboardButton(
+ text=_["ST_B_16"] if status == True else _["ST_B_17"],
+ callback_data="AUTH",
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["ST_B_18"], callback_data="AUTHLIST"
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["BACK_BUTTON"],
+ callback_data="settingsback_helper",
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"], callback_data="close"
+ ),
+ ],
+ ]
+ return buttons
+
+
+def playmode_users_markup(
+ _,
+ Direct: Union[bool, str] = None,
+ Group: Union[bool, str] = None,
+ Playtype: Union[bool, str] = None,
+):
+ buttons = [
+ [
+ InlineKeyboardButton(
+ text=_["ST_B_19"], callback_data="SEARCHANSWER"
+ ),
+ InlineKeyboardButton(
+ text=_["ST_B_20"] if Direct == True else _["ST_B_21"],
+ callback_data="MODECHANGE",
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["ST_B_22"], callback_data="AUTHANSWER"
+ ),
+ InlineKeyboardButton(
+ text=_["ST_B_16"] if Group == True else _["ST_B_17"],
+ callback_data="CHANNELMODECHANGE",
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["ST_B_25"], callback_data="PLAYTYPEANSWER"
+ ),
+ InlineKeyboardButton(
+ text=_["ST_B_16"]
+ if Playtype == True
+ else _["ST_B_17"],
+ callback_data="PLAYTYPECHANGE",
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["BACK_BUTTON"],
+ callback_data="settingsback_helper",
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"], callback_data="close"
+ ),
+ ],
+ ]
+ return buttons
diff --git a/YukkiMusic/utils/inline/song.py b/YukkiMusic/utils/inline/song.py
new file mode 100644
index 0000000000000000000000000000000000000000..8ee157ac2e7c7c2f54cf4a752186e7839d08bf87
--- /dev/null
+++ b/YukkiMusic/utils/inline/song.py
@@ -0,0 +1,31 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram.types import InlineKeyboardButton
+
+
+def song_markup(_, vidid):
+ buttons = [
+ [
+ InlineKeyboardButton(
+ text=_["SG_B_2"],
+ callback_data=f"song_helper audio|{vidid}",
+ ),
+ InlineKeyboardButton(
+ text=_["SG_B_3"],
+ callback_data=f"song_helper video|{vidid}",
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"], callback_data="close"
+ ),
+ ],
+ ]
+ return buttons
diff --git a/YukkiMusic/utils/inline/start.py b/YukkiMusic/utils/inline/start.py
new file mode 100644
index 0000000000000000000000000000000000000000..7bb44e402aa98c7a58e20b926d2cd197286e556d
--- /dev/null
+++ b/YukkiMusic/utils/inline/start.py
@@ -0,0 +1,134 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from typing import Union
+
+from pyrogram.types import InlineKeyboardButton
+
+from config import GITHUB_REPO, SUPPORT_CHANNEL, SUPPORT_GROUP
+from YukkiMusic import app
+
+
+def start_pannel(_):
+ buttons = [
+ [
+ InlineKeyboardButton(
+ text=_["S_B_1"],
+ url=f"https://t.me/{app.username}?start=help",
+ ),
+ InlineKeyboardButton(
+ text=_["S_B_2"], callback_data="settings_helper"
+ ),
+ ],
+ ]
+ if SUPPORT_CHANNEL and SUPPORT_GROUP:
+ buttons.append(
+ [
+ InlineKeyboardButton(
+ text=_["S_B_4"], url=f"{SUPPORT_CHANNEL}"
+ ),
+ InlineKeyboardButton(
+ text=_["S_B_3"], url=f"{SUPPORT_GROUP}"
+ ),
+ ]
+ )
+ else:
+ if SUPPORT_CHANNEL:
+ buttons.append(
+ [
+ InlineKeyboardButton(
+ text=_["S_B_4"], url=f"{SUPPORT_CHANNEL}"
+ )
+ ]
+ )
+ if SUPPORT_GROUP:
+ buttons.append(
+ [
+ InlineKeyboardButton(
+ text=_["S_B_3"], url=f"{SUPPORT_GROUP}"
+ )
+ ]
+ )
+ return buttons
+
+
+def private_panel(_, BOT_USERNAME, OWNER: Union[bool, int] = None):
+ buttons = [
+ [
+ InlineKeyboardButton(
+ text=_["S_B_8"], callback_data="settings_back_helper"
+ )
+ ]
+ ]
+ if SUPPORT_CHANNEL and SUPPORT_GROUP:
+ buttons.append(
+ [
+ InlineKeyboardButton(
+ text=_["S_B_4"], url=f"{SUPPORT_CHANNEL}"
+ ),
+ InlineKeyboardButton(
+ text=_["S_B_3"], url=f"{SUPPORT_GROUP}"
+ ),
+ ]
+ )
+ else:
+ if SUPPORT_CHANNEL:
+ buttons.append(
+ [
+ InlineKeyboardButton(
+ text=_["S_B_4"], url=f"{SUPPORT_CHANNEL}"
+ )
+ ]
+ )
+ if SUPPORT_GROUP:
+ buttons.append(
+ [
+ InlineKeyboardButton(
+ text=_["S_B_3"], url=f"{SUPPORT_GROUP}"
+ )
+ ]
+ )
+ buttons.append(
+ [
+ InlineKeyboardButton(
+ text=_["S_B_5"],
+ url=f"https://t.me/{BOT_USERNAME}?startgroup=true",
+ )
+ ]
+ )
+ if GITHUB_REPO and OWNER:
+ buttons.append(
+ [
+ InlineKeyboardButton(text=_["S_B_7"], user_id=OWNER),
+ InlineKeyboardButton(
+ text=_["S_B_6"], url=f"{GITHUB_REPO}"
+ ),
+ ]
+ )
+ else:
+ if GITHUB_REPO:
+ buttons.append(
+ [
+ InlineKeyboardButton(
+ text=_["S_B_6"], url=f"{GITHUB_REPO}"
+ ),
+ ]
+ )
+ if OWNER:
+ buttons.append(
+ [
+ InlineKeyboardButton(
+ text=_["S_B_7"], user_id=OWNER
+ ),
+ ]
+ )
+ buttons.append(
+ [InlineKeyboardButton(text=_["ST_B_6"], callback_data="LG")]
+ )
+ return buttons
diff --git a/YukkiMusic/utils/inline/stats.py b/YukkiMusic/utils/inline/stats.py
new file mode 100644
index 0000000000000000000000000000000000000000..72beca370fa9b7120dad5253009903a8a192df6d
--- /dev/null
+++ b/YukkiMusic/utils/inline/stats.py
@@ -0,0 +1,176 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram.types import InlineKeyboardButton, InlineKeyboardMarkup
+
+from YukkiMusic import app
+
+
+def back_stats_markup(_):
+ upl = InlineKeyboardMarkup(
+ [
+ [
+ InlineKeyboardButton(
+ text=_["BACK_BUTTON"],
+ callback_data="TOPMARKUPGET",
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"],
+ callback_data="close",
+ ),
+ ],
+ ]
+ )
+ return upl
+
+
+def overallback_stats_markup(_):
+ upl = InlineKeyboardMarkup(
+ [
+ [
+ InlineKeyboardButton(
+ text=_["BACK_BUTTON"],
+ callback_data="GlobalStats",
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"],
+ callback_data="close",
+ ),
+ ],
+ ]
+ )
+ return upl
+
+
+def get_stats_markup(_, status):
+ not_sudo = [
+ InlineKeyboardButton(
+ text=_["CLOSEMENU_BUTTON"],
+ callback_data="close",
+ )
+ ]
+ sudo = [
+ InlineKeyboardButton(
+ text=_["SA_B_8"],
+ callback_data="bot_stats_sudo g",
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSEMENU_BUTTON"],
+ callback_data="close",
+ ),
+ ]
+ upl = InlineKeyboardMarkup(
+ [
+ [
+ InlineKeyboardButton(
+ text=_["SA_B_7"],
+ callback_data="TOPMARKUPGET",
+ )
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["SA_B_6"],
+ url=f"https://t.me/{app.username}?start=stats",
+ ),
+ InlineKeyboardButton(
+ text=_["SA_B_5"],
+ callback_data="TopOverall g",
+ ),
+ ],
+ sudo if status else not_sudo,
+ ]
+ )
+ return upl
+
+
+def stats_buttons(_, status):
+ not_sudo = [
+ InlineKeyboardButton(
+ text=_["SA_B_5"],
+ callback_data="TopOverall s",
+ )
+ ]
+ sudo = [
+ InlineKeyboardButton(
+ text=_["SA_B_8"],
+ callback_data="bot_stats_sudo s",
+ ),
+ InlineKeyboardButton(
+ text=_["SA_B_5"],
+ callback_data="TopOverall s",
+ ),
+ ]
+ upl = InlineKeyboardMarkup(
+ [
+ sudo if status else not_sudo,
+ [
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"],
+ callback_data="close",
+ ),
+ ],
+ ]
+ )
+ return upl
+
+
+def back_stats_buttons(_):
+ upl = InlineKeyboardMarkup(
+ [
+ [
+ InlineKeyboardButton(
+ text=_["BACK_BUTTON"],
+ callback_data="GETSTATS",
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"],
+ callback_data="close",
+ ),
+ ],
+ ]
+ )
+ return upl
+
+
+def top_ten_stats_markup(_):
+ upl = InlineKeyboardMarkup(
+ [
+ [
+ InlineKeyboardButton(
+ text=_["SA_B_2"],
+ callback_data="GetStatsNow Tracks",
+ ),
+ InlineKeyboardButton(
+ text=_["SA_B_1"],
+ callback_data="GetStatsNow Chats",
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["SA_B_3"],
+ callback_data="GetStatsNow Users",
+ ),
+ InlineKeyboardButton(
+ text=_["SA_B_4"],
+ callback_data="GetStatsNow Here",
+ ),
+ ],
+ [
+ InlineKeyboardButton(
+ text=_["BACK_BUTTON"],
+ callback_data="GlobalStats",
+ ),
+ InlineKeyboardButton(
+ text=_["CLOSE_BUTTON"],
+ callback_data="close",
+ ),
+ ],
+ ]
+ )
+ return upl
diff --git a/YukkiMusic/utils/inlinequery.py b/YukkiMusic/utils/inlinequery.py
new file mode 100644
index 0000000000000000000000000000000000000000..f653220bfc901655ae23efc937e62bb2e70d9e1d
--- /dev/null
+++ b/YukkiMusic/utils/inlinequery.py
@@ -0,0 +1,72 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from pyrogram.types import (InlineQueryResultArticle,
+ InputTextMessageContent)
+
+answer = []
+
+answer.extend(
+ [
+ InlineQueryResultArticle(
+ title="Pause Stream",
+ description=f"Pause the current playout on group call.",
+ thumb_url="https://telegra.ph/file/c0a1c789def7b93f13745.png",
+ input_message_content=InputTextMessageContent("/pause"),
+ ),
+ InlineQueryResultArticle(
+ title="Resume Stream",
+ description=f"Resume the ongoing playout on group call.",
+ thumb_url="https://telegra.ph/file/02d1b7f967ca11404455a.png",
+ input_message_content=InputTextMessageContent("/resume"),
+ ),
+ InlineQueryResultArticle(
+ title="Mute Stream",
+ description=f"Mute the ongoing playout on group call.",
+ thumb_url="https://telegra.ph/file/66516f2976cb6d87e20f9.png",
+ input_message_content=InputTextMessageContent("/mute"),
+ ),
+ InlineQueryResultArticle(
+ title="Unmute Stream",
+ description=f"Unmute the ongoing playout on group call.",
+ thumb_url="https://telegra.ph/file/3078794f9341ffd582e18.png",
+ input_message_content=InputTextMessageContent("/unmute"),
+ ),
+ InlineQueryResultArticle(
+ title="Skip Stream",
+ description=f"Skip to next track. | For Specific track number: /skip [number] ",
+ thumb_url="https://telegra.ph/file/98b88e52bc625903c7a2f.png",
+ input_message_content=InputTextMessageContent("/skip"),
+ ),
+ InlineQueryResultArticle(
+ title="End Stream",
+ description="Stop the ongoing playout on group call.",
+ thumb_url="https://telegra.ph/file/d2eb03211baaba8838cc4.png",
+ input_message_content=InputTextMessageContent("/stop"),
+ ),
+ InlineQueryResultArticle(
+ title="Shuffle Stream",
+ description="Shuffle the queued tracks list.",
+ thumb_url="https://telegra.ph/file/7f6aac5c6e27d41a4a269.png",
+ input_message_content=InputTextMessageContent("/shuffle"),
+ ),
+ InlineQueryResultArticle(
+ title="Seek Stream",
+ description="Seek the ongoing stream to a specific duration.",
+ thumb_url="https://telegra.ph/file/cd25ec6f046aa8003cfee.png",
+ input_message_content=InputTextMessageContent("/seek 10"),
+ ),
+ InlineQueryResultArticle(
+ title="Loop Stream",
+ description="Loop the current playing music. | Usage: /loop [enable|disable]",
+ thumb_url="https://telegra.ph/file/081c20ce2074ea3e9b952.png",
+ input_message_content=InputTextMessageContent("/loop 3"),
+ ),
+ ]
+)
diff --git a/YukkiMusic/utils/logger.py b/YukkiMusic/utils/logger.py
new file mode 100644
index 0000000000000000000000000000000000000000..d1aa28180721c96174696bcbbab415ed3e6e6e55
--- /dev/null
+++ b/YukkiMusic/utils/logger.py
@@ -0,0 +1,42 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from config import LOG, LOG_GROUP_ID
+from YukkiMusic import app
+from YukkiMusic.utils.database import is_on_off
+
+
+async def play_logs(message, streamtype):
+ if await is_on_off(LOG):
+ if message.chat.username:
+ chatusername = f"@{message.chat.username}"
+ else:
+ chatusername = "Private Group"
+ logger_text = f"""
+**YUKKI PLAY LOG**
+
+**Chat:** {message.chat.title} [`{message.chat.id}`]
+**User:** {message.from_user.mention}
+**Username:** @{message.from_user.username}
+**User ID:** `{message.from_user.id}`
+**Chat Link:** {chatusername}
+
+**Query:** {message.text}
+
+**StreamType:** {streamtype}"""
+ if message.chat.id != LOG_GROUP_ID:
+ try:
+ await app.send_message(
+ LOG_GROUP_ID,
+ f"{logger_text}",
+ disable_web_page_preview=True,
+ )
+ except:
+ pass
+ return
diff --git a/YukkiMusic/utils/pastebin.py b/YukkiMusic/utils/pastebin.py
new file mode 100644
index 0000000000000000000000000000000000000000..e6c057a5ba289eb3ded1ea7e0059a2742f6cfcb9
--- /dev/null
+++ b/YukkiMusic/utils/pastebin.py
@@ -0,0 +1,30 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import aiohttp
+
+BASE = "https://batbin.me/"
+
+
+async def post(url: str, *args, **kwargs):
+ async with aiohttp.ClientSession() as session:
+ async with session.post(url, *args, **kwargs) as resp:
+ try:
+ data = await resp.json()
+ except Exception:
+ data = await resp.text()
+ return data
+
+
+async def Yukkibin(text):
+ resp = await post(f"{BASE}api/v2/paste", data=text)
+ if not resp["success"]:
+ return
+ link = BASE + resp["message"]
+ return link
diff --git a/YukkiMusic/utils/stream/autoclear.py b/YukkiMusic/utils/stream/autoclear.py
new file mode 100644
index 0000000000000000000000000000000000000000..1021047e3942d81520d3e2a352359ae5df4298c6
--- /dev/null
+++ b/YukkiMusic/utils/stream/autoclear.py
@@ -0,0 +1,31 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import os
+
+from config import autoclean
+
+
+async def auto_clean(popped):
+ try:
+ rem = popped["file"]
+ autoclean.remove(rem)
+ count = autoclean.count(rem)
+ if count == 0:
+ if (
+ "vid_" not in rem
+ or "live_" not in rem
+ or "index_" not in rem
+ ):
+ try:
+ os.remove(rem)
+ except:
+ pass
+ except:
+ pass
diff --git a/YukkiMusic/utils/stream/queue.py b/YukkiMusic/utils/stream/queue.py
new file mode 100644
index 0000000000000000000000000000000000000000..0478e390507d606ed444275fe0258d4f9041961b
--- /dev/null
+++ b/YukkiMusic/utils/stream/queue.py
@@ -0,0 +1,96 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+from typing import Union
+
+from config import autoclean, chatstats, userstats
+from config.config import time_to_seconds
+from YukkiMusic.misc import db
+
+
+async def put_queue(
+ chat_id,
+ original_chat_id,
+ file,
+ title,
+ duration,
+ user,
+ vidid,
+ user_id,
+ stream,
+ forceplay: Union[bool, str] = None,
+):
+ title = title.title()
+ try:
+ duration_in_seconds = time_to_seconds(duration) - 3
+ except:
+ duration_in_seconds = 0
+ put = {
+ "title": title,
+ "dur": duration,
+ "streamtype": stream,
+ "by": user,
+ "chat_id": original_chat_id,
+ "file": file,
+ "vidid": vidid,
+ "seconds": duration_in_seconds,
+ "played": 0,
+ }
+ if forceplay:
+ check = db.get(chat_id)
+ if check:
+ check.insert(0, put)
+ else:
+ db[chat_id] = []
+ db[chat_id].append(put)
+ else:
+ db[chat_id].append(put)
+ autoclean.append(file)
+ vidid = "telegram" if vidid == "soundcloud" else vidid
+ to_append = {"vidid": vidid, "title": title}
+ if chat_id not in chatstats:
+ chatstats[chat_id] = []
+ chatstats[chat_id].append(to_append)
+ if user_id not in userstats:
+ userstats[user_id] = []
+ userstats[user_id].append(to_append)
+ return
+
+
+async def put_queue_index(
+ chat_id,
+ original_chat_id,
+ file,
+ title,
+ duration,
+ user,
+ vidid,
+ stream,
+ forceplay: Union[bool, str] = None,
+):
+ put = {
+ "title": title,
+ "dur": duration,
+ "streamtype": stream,
+ "by": user,
+ "chat_id": original_chat_id,
+ "file": file,
+ "vidid": vidid,
+ "seconds": 0,
+ "played": 0,
+ }
+ if forceplay:
+ check = db.get(chat_id)
+ if check:
+ check.insert(0, put)
+ else:
+ db[chat_id] = []
+ db[chat_id].append(put)
+ else:
+ db[chat_id].append(put)
diff --git a/YukkiMusic/utils/stream/stream.py b/YukkiMusic/utils/stream/stream.py
new file mode 100644
index 0000000000000000000000000000000000000000..64b21743308451d4e8c78e32b2df25be1afb22e3
--- /dev/null
+++ b/YukkiMusic/utils/stream/stream.py
@@ -0,0 +1,494 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import os
+from random import randint
+from typing import Union
+
+from pyrogram.types import InlineKeyboardMarkup
+
+import config
+from YukkiMusic import Carbon, YouTube, app
+from YukkiMusic.core.call import Yukki
+from YukkiMusic.misc import db
+from YukkiMusic.utils.database import (add_active_chat,
+ add_active_video_chat,
+ is_active_chat,
+ is_video_allowed, music_on)
+from YukkiMusic.utils.exceptions import AssistantErr
+from YukkiMusic.utils.inline.play import (stream_markup,
+ telegram_markup)
+from YukkiMusic.utils.inline.playlist import close_markup
+from YukkiMusic.utils.pastebin import Yukkibin
+from YukkiMusic.utils.stream.queue import put_queue, put_queue_index
+from YukkiMusic.utils.thumbnails import gen_thumb
+
+
+async def stream(
+ _,
+ mystic,
+ user_id,
+ result,
+ chat_id,
+ user_name,
+ original_chat_id,
+ video: Union[bool, str] = None,
+ streamtype: Union[bool, str] = None,
+ spotify: Union[bool, str] = None,
+ forceplay: Union[bool, str] = None,
+):
+ if not result:
+ return
+ if video:
+ if not await is_video_allowed(chat_id):
+ raise AssistantErr(_["play_7"])
+ if forceplay:
+ await Yukki.force_stop_stream(chat_id)
+ if streamtype == "playlist":
+ msg = f"{_['playlist_16']}\n\n"
+ count = 0
+ for search in result:
+ if int(count) == config.PLAYLIST_FETCH_LIMIT:
+ continue
+ try:
+ (
+ title,
+ duration_min,
+ duration_sec,
+ thumbnail,
+ vidid,
+ ) = await YouTube.details(
+ search, False if spotify else True
+ )
+ except:
+ continue
+ if str(duration_min) == "None":
+ continue
+ if duration_sec > config.DURATION_LIMIT:
+ continue
+ if await is_active_chat(chat_id):
+ await put_queue(
+ chat_id,
+ original_chat_id,
+ f"vid_{vidid}",
+ title,
+ duration_min,
+ user_name,
+ vidid,
+ user_id,
+ "video" if video else "audio",
+ )
+ position = len(db.get(chat_id)) - 1
+ count += 1
+ msg += f"{count}- {title[:70]}\n"
+ msg += f"{_['playlist_17']} {position}\n\n"
+ else:
+ if not forceplay:
+ db[chat_id] = []
+ status = True if video else None
+ try:
+ file_path, direct = await YouTube.download(
+ vidid, mystic, video=status, videoid=True
+ )
+ except:
+ raise AssistantErr(_["play_16"])
+ await Yukki.join_call(
+ chat_id, original_chat_id, file_path, video=status
+ )
+ await put_queue(
+ chat_id,
+ original_chat_id,
+ file_path if direct else f"vid_{vidid}",
+ title,
+ duration_min,
+ user_name,
+ vidid,
+ user_id,
+ "video" if video else "audio",
+ forceplay=forceplay,
+ )
+ img = await gen_thumb(vidid)
+ button = stream_markup(_, vidid, chat_id)
+ run = await app.send_photo(
+ original_chat_id,
+ photo=img,
+ caption=_["stream_1"].format(
+ user_name,
+ f"https://t.me/{app.username}?start=info_{vidid}",
+ ),
+ reply_markup=InlineKeyboardMarkup(button),
+ )
+ db[chat_id][0]["mystic"] = run
+ db[chat_id][0]["markup"] = "stream"
+ if count == 0:
+ return
+ else:
+ link = await Yukkibin(msg)
+ lines = msg.count("\n")
+ if lines >= 17:
+ car = os.linesep.join(msg.split(os.linesep)[:17])
+ else:
+ car = msg
+ carbon = await Carbon.generate(
+ car, randint(100, 10000000)
+ )
+ upl = close_markup(_)
+ return await app.send_photo(
+ original_chat_id,
+ photo=carbon,
+ caption=_["playlist_18"].format(link, position),
+ reply_markup=upl,
+ )
+ elif streamtype == "youtube":
+ link = result["link"]
+ vidid = result["vidid"]
+ title = (result["title"]).title()
+ duration_min = result["duration_min"]
+ status = True if video else None
+ try:
+ file_path, direct = await YouTube.download(
+ vidid, mystic, videoid=True, video=status
+ )
+ except:
+ raise AssistantErr(_["play_16"])
+ if await is_active_chat(chat_id):
+ await put_queue(
+ chat_id,
+ original_chat_id,
+ file_path if direct else f"vid_{vidid}",
+ title,
+ duration_min,
+ user_name,
+ vidid,
+ user_id,
+ "video" if video else "audio",
+ )
+ position = len(db.get(chat_id)) - 1
+ await app.send_message(
+ original_chat_id,
+ _["queue_4"].format(
+ position, title[:30], duration_min, user_name
+ ),
+ )
+ else:
+ if not forceplay:
+ db[chat_id] = []
+
+ await Yukki.join_call(
+ chat_id, original_chat_id, file_path, video=status
+ )
+ await put_queue(
+ chat_id,
+ original_chat_id,
+ file_path if direct else f"vid_{vidid}",
+ title,
+ duration_min,
+ user_name,
+ vidid,
+ user_id,
+ "video" if video else "audio",
+ forceplay=forceplay,
+ )
+ img = await gen_thumb(vidid)
+ button = stream_markup(_, vidid, chat_id)
+ run = await app.send_photo(
+ original_chat_id,
+ photo=img,
+ caption=_["stream_1"].format(
+ user_name,
+ f"https://t.me/{app.username}?start=info_{vidid}",
+ ),
+ reply_markup=InlineKeyboardMarkup(button),
+ )
+ db[chat_id][0]["mystic"] = run
+ db[chat_id][0]["markup"] = "stream"
+ elif streamtype == "soundcloud":
+ file_path = result["filepath"]
+ title = result["title"]
+ duration_min = result["duration_min"]
+ if await is_active_chat(chat_id):
+ await put_queue(
+ chat_id,
+ original_chat_id,
+ file_path,
+ title,
+ duration_min,
+ user_name,
+ streamtype,
+ user_id,
+ "audio",
+ )
+ position = len(db.get(chat_id)) - 1
+ await app.send_message(
+ original_chat_id,
+ _["queue_4"].format(
+ position, title[:30], duration_min, user_name
+ ),
+ )
+ else:
+ if not forceplay:
+ db[chat_id] = []
+ await Yukki.join_call(
+ chat_id, original_chat_id, file_path, video=None
+ )
+ await put_queue(
+ chat_id,
+ original_chat_id,
+ file_path,
+ title,
+ duration_min,
+ user_name,
+ streamtype,
+ user_id,
+ "audio",
+ forceplay=forceplay,
+ )
+ button = telegram_markup(_, chat_id)
+ run = await app.send_photo(
+ original_chat_id,
+ photo=config.SOUNCLOUD_IMG_URL,
+ caption=_["stream_3"].format(
+ title, duration_min, user_name
+ ),
+ reply_markup=InlineKeyboardMarkup(button),
+ )
+ db[chat_id][0]["mystic"] = run
+ db[chat_id][0]["markup"] = "tg"
+ elif streamtype == "telegram":
+ file_path = result["path"]
+ link = result["link"]
+ title = (result["title"]).title()
+ direct=result["direct"]
+ duration_min = result["dur"]
+ status = True if video else None
+ if await is_active_chat(chat_id):
+ await put_queue(
+ chat_id,
+ original_chat_id,
+ file_path,
+ title,
+ duration_min,
+ user_name,
+ streamtype,
+ user_id,
+ "video" if video else "audio",
+ )
+ position = len(db.get(chat_id)) - 1
+ await app.send_message(
+ original_chat_id,
+ _["queue_4"].format(
+ position, title[:30], duration_min, user_name
+ ),
+ )
+ else:
+ if not forceplay:
+ db[chat_id] = []
+ await Yukki.join_call(
+ chat_id, original_chat_id, file_path, video=status
+ )
+ await put_queue(
+ chat_id,
+ original_chat_id,
+ file_path,
+ title,
+ duration_min,
+ user_name,
+ streamtype,
+ user_id,
+ "video" if video else "audio",
+ forceplay=forceplay,
+ )
+ if video:
+ await add_active_video_chat(chat_id)
+ button = telegram_markup(_, chat_id)
+ run = await app.send_photo(
+ original_chat_id,
+ photo=config.TELEGRAM_VIDEO_URL
+ if video
+ else config.TELEGRAM_AUDIO_URL,
+ caption=_["stream_4"].format(
+ title, link, duration_min, user_name
+ ),
+ reply_markup=InlineKeyboardMarkup(button),
+ )
+ db[chat_id][0]["mystic"] = run
+ db[chat_id][0]["markup"] = "tg"
+ elif streamtype == "live":
+ link = result["link"]
+ vidid = result["vidid"]
+ title = (result["title"]).title()
+ duration_min = "Live Track"
+ status = True if video else None
+ if await is_active_chat(chat_id):
+ await put_queue(
+ chat_id,
+ original_chat_id,
+ f"live_{vidid}",
+ title,
+ duration_min,
+ user_name,
+ vidid,
+ user_id,
+ "video" if video else "audio",
+ )
+ position = len(db.get(chat_id)) - 1
+ await app.send_message(
+ original_chat_id,
+ _["queue_4"].format(
+ position, title[:30], duration_min, user_name
+ ),
+ )
+ else:
+ if not forceplay:
+ db[chat_id] = []
+ n, file_path = await YouTube.video(link)
+ if n == 0:
+ raise AssistantErr(_["str_3"])
+ await Yukki.join_call(
+ chat_id, original_chat_id, file_path, video=status
+ )
+ await put_queue(
+ chat_id,
+ original_chat_id,
+ f"live_{vidid}",
+ title,
+ duration_min,
+ user_name,
+ vidid,
+ user_id,
+ "video" if video else "audio",
+ forceplay=forceplay,
+ )
+ img = await gen_thumb(vidid)
+ button = telegram_markup(_, chat_id)
+ run = await app.send_photo(
+ original_chat_id,
+ photo=img,
+ caption=_["stream_1"].format(
+ user_name,
+ f"https://t.me/{app.username}?start=info_{vidid}",
+ ),
+ reply_markup=InlineKeyboardMarkup(button),
+ )
+ db[chat_id][0]["mystic"] = run
+ db[chat_id][0]["markup"] = "tg"
+ elif streamtype == "index":
+ link = result
+ title = "Index or M3u8 Link"
+ duration_min = "URL stream"
+ if await is_active_chat(chat_id):
+ await put_queue_index(
+ chat_id,
+ original_chat_id,
+ "index_url",
+ title,
+ duration_min,
+ user_name,
+ link,
+ "video" if video else "audio",
+ )
+ position = len(db.get(chat_id)) - 1
+ await mystic.edit_text(
+ _["queue_4"].format(
+ position, title[:30], duration_min, user_name
+ )
+ )
+ else:
+ if not forceplay:
+ db[chat_id] = []
+ await Yukki.join_call(
+ chat_id,
+ original_chat_id,
+ link,
+ video=True if video else None,
+ )
+ await put_queue_index(
+ chat_id,
+ original_chat_id,
+ "index_url",
+ title,
+ duration_min,
+ user_name,
+ link,
+ "video" if video else "audio",
+ forceplay=forceplay,
+ )
+ button = telegram_markup(_, chat_id)
+ run = await app.send_photo(
+ original_chat_id,
+ photo=config.STREAM_IMG_URL,
+ caption=_["stream_2"].format(user_name),
+ reply_markup=InlineKeyboardMarkup(button),
+ )
+ db[chat_id][0]["mystic"] = run
+ db[chat_id][0]["markup"] = "tg"
+ await mystic.delete()
+ elif streamtype == "nodownload":
+ #print(chat_id,original_chat_id)
+ link = result["link"]
+ vidid = result["vidid"]
+ title = (result["title"]).title()
+ duration_min = result["duration_min"]
+ status = True if video else None
+ try:
+ video_url, audio_url = await YouTube.audio_video_url(
+ vidid, mystic, videoid=True, video=status
+ )
+ except:
+ raise AssistantErr(_["play_16"])
+ if await is_active_chat(chat_id):
+ await put_queue(
+ chat_id,
+ original_chat_id,
+ f"vid_{vidid}",
+ title,
+ duration_min,
+ user_name,
+ vidid,
+ user_id,
+ "video" if video else "audio",
+ )
+ position = len(db.get(chat_id)) - 1
+ await app.send_message(
+ original_chat_id,
+ _["queue_4"].format(
+ position, title[:30], duration_min, user_name
+ ),
+ )
+ else:
+ if not forceplay:
+ db[chat_id] = []
+ await Yukki.live_call(
+ chat_id, original_chat_id, video_url, audio_url, video=status
+ )
+ await put_queue(
+ chat_id,
+ original_chat_id,
+ f"vid_{vidid}",
+ title,
+ duration_min,
+ user_name,
+ vidid,
+ user_id,
+ "video" if video else "audio",
+ forceplay=forceplay,
+ )
+ img = await gen_thumb(vidid)
+ button = stream_markup(_, vidid, chat_id)
+ run = await app.send_photo(
+ original_chat_id,
+ photo=img,
+ caption=_["stream_1"].format(
+ user_name,
+ f"https://t.me/{app.username}?start=info_{vidid}",
+ ),
+ reply_markup=InlineKeyboardMarkup(button),
+ )
+ db[chat_id][0]["mystic"] = run
+ db[chat_id][0]["markup"] = "stream"
\ No newline at end of file
diff --git a/YukkiMusic/utils/sys.py b/YukkiMusic/utils/sys.py
new file mode 100644
index 0000000000000000000000000000000000000000..43ccadd3ae0ae797b9edb67d61d67b1d1aa0d12f
--- /dev/null
+++ b/YukkiMusic/utils/sys.py
@@ -0,0 +1,28 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import time
+
+import psutil
+
+from YukkiMusic.misc import _boot_
+
+from .formatters import get_readable_time
+
+
+async def bot_sys_stats():
+ bot_uptime = int(time.time() - _boot_)
+ cpu = psutil.cpu_percent(interval=0.5)
+ mem = psutil.virtual_memory().percent
+ disk = psutil.disk_usage("/").percent
+ UP = f"{get_readable_time((bot_uptime))}"
+ CPU = f"{cpu}%"
+ RAM = f"{mem}%"
+ DISK = f"{disk}%"
+ return UP, CPU, RAM, DISK
diff --git a/YukkiMusic/utils/thumbnails.py b/YukkiMusic/utils/thumbnails.py
new file mode 100644
index 0000000000000000000000000000000000000000..3cdb14f13c65a7bc6603c6a0e2aae24b534e2c8a
--- /dev/null
+++ b/YukkiMusic/utils/thumbnails.py
@@ -0,0 +1,151 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import os
+import re
+import textwrap
+import traceback
+import aiofiles
+import aiohttp
+from PIL import (Image, ImageDraw, ImageEnhance, ImageFilter,
+ ImageFont, ImageOps)
+from youtubesearchpython.__future__ import VideosSearch
+
+from config import MUSIC_BOT_NAME, YOUTUBE_IMG_URL
+
+
+def changeImageSize(maxWidth, maxHeight, image):
+ widthRatio = maxWidth / image.size[0]
+ heightRatio = maxHeight / image.size[1]
+ newWidth = int(widthRatio * image.size[0])
+ newHeight = int(heightRatio * image.size[1])
+ newImage = image.resize((newWidth, newHeight))
+ return newImage
+
+
+async def gen_thumb(videoid):
+ if os.path.isfile(f"cache/{videoid}.png"):
+ return f"cache/{videoid}.png"
+
+ url = f"https://www.youtube.com/watch?v={videoid}"
+ try:
+ results = VideosSearch(url, limit=1)
+ for result in (await results.next())["result"]:
+ try:
+ title = result["title"]
+ title = re.sub("\W+", " ", title)
+ title = title.title()
+ except:
+ title = "Unsupported Title"
+ try:
+ duration = result["duration"]
+ except:
+ duration = "Unknown Mins"
+ thumbnail = result["thumbnails"][0]["url"].split("?")[0]
+ try:
+ views = result["viewCount"]["short"]
+ except:
+ views = "Unknown Views"
+ try:
+ channel = result["channel"]["name"]
+ except:
+ channel = "Unknown Channel"
+
+ async with aiohttp.ClientSession() as session:
+ async with session.get(thumbnail) as resp:
+ if resp.status == 200:
+ f = await aiofiles.open(
+ f"cache/thumb{videoid}.png", mode="wb"
+ )
+ await f.write(await resp.read())
+ await f.close()
+
+ youtube = Image.open(f"cache/thumb{videoid}.png")
+ image1 = changeImageSize(1280, 720, youtube)
+ image2 = image1.convert("RGBA")
+ background = image2.filter(filter=ImageFilter.BoxBlur(30))
+ enhancer = ImageEnhance.Brightness(background)
+ background = enhancer.enhance(0.6)
+ Xcenter = youtube.width / 2
+ Ycenter = youtube.height / 2
+ x1 = Xcenter - 250
+ y1 = Ycenter - 250
+ x2 = Xcenter + 250
+ y2 = Ycenter + 250
+ logo = youtube.crop((x1, y1, x2, y2))
+ logo.thumbnail((520, 520), Image.Resampling.LANCZOS)
+ logo = ImageOps.expand(logo, border=15, fill="white")
+ background.paste(logo, (50, 100))
+ draw = ImageDraw.Draw(background)
+ font = ImageFont.truetype("assets/font2.ttf", 40)
+ font2 = ImageFont.truetype("assets/font2.ttf", 70)
+ arial = ImageFont.truetype("assets/font2.ttf", 30)
+ name_font = ImageFont.truetype("assets/font.ttf", 30)
+ para = textwrap.wrap(title, width=32)
+ j = 0
+ draw.text(
+ (5, 5), f"{MUSIC_BOT_NAME}", fill="white", font=name_font
+ )
+ draw.text(
+ (600, 150),
+ "NOW PLAYING",
+ fill="white",
+ stroke_width=2,
+ stroke_fill="white",
+ font=font2,
+ )
+ for line in para:
+ if j == 1:
+ j += 1
+ draw.text(
+ (600, 340),
+ f"{line}",
+ fill="white",
+ stroke_width=1,
+ stroke_fill="white",
+ font=font,
+ )
+ if j == 0:
+ j += 1
+ draw.text(
+ (600, 280),
+ f"{line}",
+ fill="white",
+ stroke_width=1,
+ stroke_fill="white",
+ font=font,
+ )
+
+ draw.text(
+ (600, 450),
+ f"Views : {views[:23]}",
+ (255, 255, 255),
+ font=arial,
+ )
+ draw.text(
+ (600, 500),
+ f"Duration : {duration[:23]} Mins",
+ (255, 255, 255),
+ font=arial,
+ )
+ draw.text(
+ (600, 550),
+ f"Channel : {channel}",
+ (255, 255, 255),
+ font=arial,
+ )
+ try:
+ os.remove(f"cache/thumb{videoid}.png")
+ except:
+ pass
+ background.save(f"cache/{videoid}.png")
+ return f"cache/{videoid}.png"
+ except Exception:
+ print(traceback.format_exc())
+ return YOUTUBE_IMG_URL
diff --git a/app.json b/app.json
new file mode 100644
index 0000000000000000000000000000000000000000..3b9b94d0502a736b2370e6a6b02efbc9be43841c
--- /dev/null
+++ b/app.json
@@ -0,0 +1,99 @@
+{
+ "name": "Yukki Music Bot",
+ "description": "Telegram Group Calls streaming bot with some useful features, written in Python with Pyrogram and Py-Tgcalls. Supporting platforms like Youtube, Spotify, Resso, AppleMusic, Soundcloud and M3u8 Links.",
+ "logo": "https://telegra.ph/file/c0e014ff34f34d1056627.png",
+ "keywords": [
+ "python3",
+ "telegram",
+ "bot",
+ "Yukki",
+ "YukkiMusicBot",
+ "telegram-bot",
+ "pyrogram"
+ ],
+ "stack": "container",
+ "env": {
+ "API_ID": {
+ "description": "Get this value from https://my.telegram.org",
+ "value": "",
+ "required": true
+ },
+ "API_HASH": {
+ "description": "Get this value from https://my.telegram.org",
+ "value": "",
+ "required": true
+ },
+ "AUTO_LEAVING_ASSISTANT": {
+ "description": "If you want your assistant to leave all chats automatically after some time.",
+ "value": "True",
+ "required": false
+ },
+ "BOT_TOKEN": {
+ "description": "A Bot's token from Botfather",
+ "value": "",
+ "required": true
+ },
+ "MONGO_DB_URI": {
+ "description": "Get a mongodb url from https://cloud.mongodb.com . You can leave it blank if you want , bot will use Yukki's database for you.",
+ "value": "",
+ "required": true
+ },
+ "MUSIC_BOT_NAME": {
+ "description": "A name for your Music Bot. Please don't use ascii characters",
+ "value": "",
+ "required": true
+ },
+ "OWNER_ID": {
+ "description": "The user id(s) of user(s) whom you would like to add as a OWNER. Multiple values shall be seperated with a space.",
+ "value": "",
+ "required": true
+ },
+ "STRING_SESSION": {
+ "description": "A Pyrogram String Session. One Assistant is Compulsory.",
+ "value": "",
+ "required": true
+ },
+ "HEROKU_API_KEY": {
+ "description": "Your Heroku account's API key",
+ "value": "",
+ "required": false
+ },
+ "HEROKU_APP_NAME": {
+ "description": "Your heroku app/bot's name",
+ "value": "",
+ "required": false
+ },
+ "LOG_GROUP_ID": {
+ "description": "Your Log Group ID, add your bot and promote as an admin with full rights!. Use only Group. Please don't use Channel ID.",
+ "value": "",
+ "required": true
+ },
+ "UPSTREAM_REPO": {
+ "description": "If you dont know this, Leave as it is",
+ "value": "https://github.com/TeamYukki/YukkiMusicBot",
+ "required": true
+ },
+ "UPSTREAM_BRANCH": {
+ "description": "Upstream Repo's Branch Name",
+ "value": "master",
+ "required": true
+ }
+ },
+ "buildpacks": [
+ {
+ "url": "heroku/python"
+ },
+ {
+ "url": "heroku/nodejs"
+ },
+ {
+ "url": "https://github.com/jonathanong/heroku-buildpack-ffmpeg-latest.git"
+ }
+ ],
+ "formation": {
+ "worker": {
+ "quantity": 1,
+ "size": "free"
+ }
+ }
+ }
diff --git a/assets/Audio.jpeg b/assets/Audio.jpeg
new file mode 100644
index 0000000000000000000000000000000000000000..25acaadaed8a6d21b8b599866c63246282b9cde5
Binary files /dev/null and b/assets/Audio.jpeg differ
diff --git a/assets/Global.jpeg b/assets/Global.jpeg
new file mode 100644
index 0000000000000000000000000000000000000000..7d51e9d0dcb3996d3ad239e701cc8892a5a089d8
Binary files /dev/null and b/assets/Global.jpeg differ
diff --git a/assets/Ping.jpeg b/assets/Ping.jpeg
new file mode 100644
index 0000000000000000000000000000000000000000..4428f988cda9231afd91a52777172cdec263614d
Binary files /dev/null and b/assets/Ping.jpeg differ
diff --git a/assets/Playlist.jpeg b/assets/Playlist.jpeg
new file mode 100644
index 0000000000000000000000000000000000000000..479001b760f36306c27bb8fc687fc865e1a1d317
Binary files /dev/null and b/assets/Playlist.jpeg differ
diff --git a/assets/Soundcloud.jpeg b/assets/Soundcloud.jpeg
new file mode 100644
index 0000000000000000000000000000000000000000..0ddb13017d3dc0f512587eaacbe673490648adfc
Binary files /dev/null and b/assets/Soundcloud.jpeg differ
diff --git a/assets/SpotifyAlbum.jpeg b/assets/SpotifyAlbum.jpeg
new file mode 100644
index 0000000000000000000000000000000000000000..b5df94873cb0dbb0add7057b979e49b6f5aa17a7
Binary files /dev/null and b/assets/SpotifyAlbum.jpeg differ
diff --git a/assets/SpotifyArtist.jpeg b/assets/SpotifyArtist.jpeg
new file mode 100644
index 0000000000000000000000000000000000000000..85a0b889d46ee2eff7b7d414ee6a2aff17f76026
Binary files /dev/null and b/assets/SpotifyArtist.jpeg differ
diff --git a/assets/SpotifyPlaylist.jpeg b/assets/SpotifyPlaylist.jpeg
new file mode 100644
index 0000000000000000000000000000000000000000..fe4cd588d9fee6e31afcd5327c1d3ba8b9864014
Binary files /dev/null and b/assets/SpotifyPlaylist.jpeg differ
diff --git a/assets/Stats.jpeg b/assets/Stats.jpeg
new file mode 100644
index 0000000000000000000000000000000000000000..3d829197e14e3e6ddbeb7ec32a56f5cc289b6c05
Binary files /dev/null and b/assets/Stats.jpeg differ
diff --git a/assets/Stream.jpeg b/assets/Stream.jpeg
new file mode 100644
index 0000000000000000000000000000000000000000..a588be63783762c2309f005e86735bbd13aaa2df
Binary files /dev/null and b/assets/Stream.jpeg differ
diff --git a/assets/Video.jpeg b/assets/Video.jpeg
new file mode 100644
index 0000000000000000000000000000000000000000..fca7f7bf8a2c2b8e4a2d49192be540d3653b4e24
Binary files /dev/null and b/assets/Video.jpeg differ
diff --git a/assets/Youtube.jpeg b/assets/Youtube.jpeg
new file mode 100644
index 0000000000000000000000000000000000000000..a19e45dd89608d9ed16bbc55ddaa2f60b3df60fa
Binary files /dev/null and b/assets/Youtube.jpeg differ
diff --git a/assets/font.ttf b/assets/font.ttf
new file mode 100644
index 0000000000000000000000000000000000000000..3b8622f67bffda70fc2d7f6ff2f2ad6f3078fd08
Binary files /dev/null and b/assets/font.ttf differ
diff --git a/assets/font2.ttf b/assets/font2.ttf
new file mode 100644
index 0000000000000000000000000000000000000000..2ceaf63a3281450969d30f3f256e19940a32cfaa
Binary files /dev/null and b/assets/font2.ttf differ
diff --git a/assets/readme.md b/assets/readme.md
new file mode 100644
index 0000000000000000000000000000000000000000..383eebe5f2d7db3cbc7330d23ee3a31a1a355e77
--- /dev/null
+++ b/assets/readme.md
@@ -0,0 +1,58 @@
+## Yukki Assets Folder
+
+# Contains all the fonts and thumb related files.
+
+```console
+font.ttf & font2.ttf - Font File for Thumbnails Generation
+```
+- > If you want can change your font for thumbnails , change these files from here.
+
+```console
+Audio.jpeg - Thumbnail Image to be send when someone plays Audio files from telegram.
+```
+- > If you want to change thumb images, make sure your name file "Audio.jpeg" remains same or alternatively you can add a var `TELEGRAM_AUDIO_URL` - Use telegraph link
+
+
+```console
+Video.jpeg - Thumbnail Image to be send when someone plays Video files from telegram.
+```
+- > If you want to change thumb images, make sure your file name "Video.jpeg" remains same or alternatively you can add a var `TELEGRAM_VIDEO_URL` - Use telegraph link
+
+
+```console
+Stream.jpeg - Thumbnail Image to be send when someone plays M3u8 or live links on music bot.
+```
+- > If you want to change thumb images, make sure your file name "Stream.jpeg" remains same or alternatively you can add a var `STREAM_IMG_URL` - Use telegraph link
+
+```console
+Soundcloud.jpeg - Thumbnail Image to be when send someone plays music from soundcloud.
+```
+- > If you want to change thumb images, make sure your file name "Soundcloud.jpeg" remains same or alternatively you can add a var `SOUNCLOUD_IMG_URL` - Use telegraph link
+
+```console
+Youtube.jpeg - If Thumbnail Generator fails anyhow then bot will send this image
+```
+- > If you want to change thumb images, make sure your file name "Youtube.jpeg" remains same or alternatively you can add a var `YOUTUBE_IMG_URL` - Use telegraph link
+
+```console
+Ping.jpeg - This image is going to be used by /ping command
+```
+- > If you want to change ping image, make sure your file name "Ping.jpeg" remains same or alternatively you can add a var `PING_IMG_URL` - Use telegraph link
+
+
+```console
+Playlist.jpeg - This image is going to be used by /play command
+```
+- > If you want to change playlist image, make sure your file name "Playlist.jpeg" remains same or alternatively you can add a var `PLAYLIST_IMG_URL` - Use telegraph link
+
+
+```console
+Global.jpeg and Stats.jpeg - This image is going to be used by /stats command
+```
+- > If you want to change stats images, make sure your file name "Global.jpeg" or "Stats.jpeg" remains same or alternatively you can add a var `GLOBAL_IMG_URL` - Use telegraph link `STATS_IMG_URL` - Use telegraph link
+
+
+```console
+SpotifyAlbum.jpeg , SpotifyArtist.jpeg and SpotifyPlaylist.jpeg - This image is going to be used by spotify inline command
+```
+- > If you want to change stats images, make sure your file name "SpotifyAlbum.jpeg", "SpotifyPlaylist.jpeg" or "SpotifyArtist.jpeg" remains same or alternatively you can add a var `SPOTIFY_ARTIST_IMG_URL` - Use telegraph link `SPOTIFY_ALBUM_IMG_URL` - Use telegraph link `SPOTIFY_PLAYLIST_IMG_URL` - Use telegraph link
diff --git a/config/README.md b/config/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..7857b7b6cb12a25a2b3a680f5b03d4e223b34550
--- /dev/null
+++ b/config/README.md
@@ -0,0 +1,117 @@
+# Yukki Music Bot Configs
+
+Config vars are basically the variables which configure or modify bot to function, which are the basic necessities of plugins or code to work. You have to set the proper mandatory vars to make it functional and to start the basic feature of bot.
+
+### Get to know about all these vars in depth from our Docs. [Read Now from Here](https://notreallyshikhar.gitbook.io/yukkimusicbot/config-vars/available-vars)
+
+## Mandatory Vars
+
+- These are the minimum required vars need to setup to make Yukki Music Bot functional.
+
+1. `API_ID` : Get it from my.telegram.org
+2. `API_HASH` : Get it from my.telegram.org
+3. `BOT_TOKEN` : Get it from [@Botfather](http://t.me/BotFather) in Telegram
+4. `MONGO_DB_URI` : Get mongo db [from here.](https://notreallyshikhar.gitbook.io/yukkimusicbot/deployment/mongodb)
+5. `LOG_GROUP_ID` : You'll need a Private Group ID for this. Supergroup Needed with id starting from -100
+6. `MUSIC_BOT_NAME` : A name for your Music bot.
+7. `OWNER_ID` : Your Owner ID for managing your bot.
+8. `STRING_SESSION` : Pyrogram Session Needed, Generate string from [@YukkiStringBot](http://t.me/YukkiStringBot) in Telegram.
+
+
+## Non-Mandatory Vars
+
+- These are the extra vars for extra features inside Music Bot. You can leave non mandatory vars for now and can add them later.
+
+1. `DURATION_LIMIT` : Custom max audio(music) duration for voice chat. Default to 60 mins.
+2. `SONG_DOWNLOAD_DURATION_LIMIT` : Duration Limit for downloading Songs in MP3 or MP4 format from bot. Default to 180 mins.
+3. `VIDEO_STREAM_LIMIT` : Maximum number of video calls allowed on bot. You can later set it via /set_video_limit on telegram. Default to 3 chats.
+4. `SERVER_PLAYLIST_LIMIT` : Maximum Limit Allowed for users to save playlists on bot's server. Default to 30
+5. `PLAYLIST_FETCH_LIMIT` : Maximum limit for fetching playlist's track from youtube, spotify, apple links. Default to 25
+6. `CLEANMODE_MINS` : Cleanmode time after which bot will delete its old messages from chats. Default to 5 Mins.
+7. `SUPPORT_CHANNEL` : If you've any channel for your music bot , fill it with your channel link
+8. `SUPPORT_GROUP` : If you've any group support for your music bot , fill it with your group link
+
+## Play FileSize Limit Vars
+
+- Maximum File size limit for the audio and videos that a user can play from your bot. [Only Bytes Size Accepted]
+> You can convert mb into bytes from https://www.gbmb.org/mb-to-bytes and use it here
+
+1. `TG_AUDIO_FILESIZE_LIMIT` : Maximum file size limit for audio files which can be streamed over vc. Defaults to 104857600 bytes, i.e. 100MB
+2. `TG_VIDEO_FILESIZE_LIMIT` : Maximum file size limit for video files which can be played. Defaults to 1073741824 bytes, i.e. 1024MB or 1GB
+
+
+## Bot Vars
+
+- These all vars are used for setting up bot. You can edit these vars if you want , else leave all of them as it is.
+
+1. `PRIVATE_BOT_MODE` : Set it `True` if you want your bot to be private only or False for all groups. Default to False
+2. `YOUTUBE_EDIT_SLEEP` : Time sleep duration For Youtube Downloader. Default to 3 seconds
+3. `TELEGRAM_EDIT_SLEEP` : Time sleep duration For Telegram Downloader. Default to 5 seconds
+4. `AUTO_LEAVING_ASSISTANT` : Set it in `True` if you want to leave your assistant after a certain amount of time.
+5. `ASSISTANT_LEAVE_TIME` : Time after which your assistant account will leave served chats automatically. Default to 5400 seconds, i.e 90 Mins
+6. `AUTO_DOWNLOADS_CLEAR` : Set it `True` if you want to delete downloads after the music playout ends.
+7. `AUTO_SUGGESTION_MODE` : Set it `True` if you want to bot to suggest about bot commands to random chats of your bots.
+9. `AUTO_SUGGESTION_TIME` : Time after which your bot will suggest random 1/10 chats of your served chats about bot commands. Default to 5400 seconds, i.e 90 Mins
+10. `SET_CMDS` : Set it to `True` if you want your bot to set the commands for chat menu automatically. [Reference](https://i.postimg.cc/Bbg3LQTG/image.png)
+
+## Spotify Vars
+
+- You can play tracks or playlists from spotify from Yukki Music bot
+- You'll need these two vars to make spotify play working. This is not essential , you can leave them blank if you want.
+
+### How to get these? [Read from here](https://notreallyshikhar.gitbook.io/yukkimusicbot/deployment/spotify)
+
+
+1. `SPOTIFY_CLIENT_ID` : Get it from https://developer.spotify.com/dashboard
+2. `SPOTIFY_CLIENT_SECRET` : Get it from https://developer.spotify.com/dashboard
+
+
+## Heroku Vars
+
+- To work some Heroku compatible modules, this var value required to Access your account to use `get_log`, `usage`, `update` etc etc commands.
+- You can fill this var using your API key or Authorization token.
+
+### How to get these? [Read from here](https://notreallyshikhar.gitbook.io/yukkimusicbot/config-vars/heroku-vars)
+
+1. `HEROKU_API_KEY` : Get it from http://dashboard.heroku.com/account
+2. `HEROKU_APP_NAME` : You have to Enter the app name which you gave to identify your Music Bot in Heroku.
+
+
+## Custom Repo Vars
+
+- If you plan to use Yukki Music Bot with your own customized or modified code.
+
+1. `UPSTREAM_REPO` : Your Upstream Repo URL or Forked Repo.
+2. `UPSTREAM_BRANCH` : Default Branch of your Upstream Repo URL or Forked Repo.
+3. `GIT_TOKEN` : Your GIT TOKEN if your upstream repo is private
+4. `GITHUB_REPO` : Your Github Repo url, that will be shown on /start command
+
+
+
+## Images/Thumbnail Vars
+
+- You can change images which are used in Yukki Music Bot.
+- You can generate telegaph links from [@YukkiTelegraphBot](http://t.me/YukkiTelegraphBot) and use it here.
+
+1. `START_IMG_URL` : Image which comes on /start command in private messages of bot.
+2. `PING_IMG_URL` : Image which comes on /ping command of bot.
+3. `PLAYLIST_IMG_URL` : Image which comes on /play command of bot.
+4. `GLOBAL_IMG_URL` : Image which comes on /stats command of bot.
+5. `STATS_IMG_URL` : Image which comes on /stats command of bot.
+6. `TELEGRAM_AUDIO_URL` : This image comes when someone plays audios from telegram.
+7. `TELEGRAM_VIDEO_URL` : This image comes when someone plays videos from telegram.
+8. `STREAM_IMG_URL` : his image comes when someone plays m3u8 or index links.
+9. `SOUNCLOUD_IMG_URL` : This image comes when someone plays music from soundcloud.
+10. `YOUTUBE_IMG_URL` : This image comes if thumbnail generator fails to gen thumb anyhow.
+11. `SPOTIFY_ARTIST_IMG_URL` : This image comes when someone plays Spotify artist via link in inline mode.
+12. `SPOTIFY_ALBUM_IMG_URL` : This image comes when someone plays Spotify album via link in inline mode.
+13. `SPOTIFY_PLAYLIST_IMG_URL` : This image comes when someone plays Spotify album via link in inline mode.
+
+## Multi Assistant Mode
+
+- You can use upto 5 Assistant Clients ( allowing your bot to atleast work in 2000-2500 chats at a time )
+
+1. `STRING_SESSION2` : Pyrogram Session Needed, Generate string from [@YukkiStringBot](http://t.me/YukkiStringBot) in Telegram.
+2. `STRING_SESSION3` : Pyrogram Session Needed, Generate string from [@YukkiStringBot](http://t.me/YukkiStringBot) in Telegram.
+3. `STRING_SESSION4` : Pyrogram Session Needed, Generate string from [@YukkiStringBot](http://t.me/YukkiStringBot) in Telegram.
+4. `STRING_SESSION5` : Pyrogram Session Needed, Generate string from [@YukkiStringBot](http://t.me/YukkiStringBot) in Telegram.
diff --git a/config/__init__.py b/config/__init__.py
new file mode 100644
index 0000000000000000000000000000000000000000..cdb00efe5ea317198dccb6e6f71e6b40445bf6c0
--- /dev/null
+++ b/config/__init__.py
@@ -0,0 +1,11 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+#
+
+from .config import *
diff --git a/config/config.py b/config/config.py
new file mode 100644
index 0000000000000000000000000000000000000000..5908b03c3ded2ad3c18781b05d611a85ca201d05
--- /dev/null
+++ b/config/config.py
@@ -0,0 +1,358 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import re
+import sys
+from os import getenv
+from dotenv import load_dotenv
+from pyrogram import filters
+
+load_dotenv()
+
+# Get it from my.telegram.org
+API_ID = int(getenv("API_ID", ""))
+API_HASH = getenv("API_HASH")
+
+## Get it from @Botfather in Telegram.
+BOT_TOKEN = getenv("BOT_TOKEN")
+
+# Database to save your chats and stats... Get MongoDB:- https://telegra.ph/How-To-get-Mongodb-URI-04-06
+MONGO_DB_URI = getenv("MONGO_DB_URI", None)
+
+# Custom max audio(music) duration for voice chat. set DURATION_LIMIT in variables with your own time(mins), Default to 60 mins.
+DURATION_LIMIT_MIN = int(
+ getenv("DURATION_LIMIT", "60")
+) # Remember to give value in Minutes
+
+# Duration Limit for downloading Songs in MP3 or MP4 format from bot
+SONG_DOWNLOAD_DURATION = int(
+ getenv("SONG_DOWNLOAD_DURATION_LIMIT", "180")
+) # Remember to give value in Minutes
+
+# You'll need a Private Group ID for this.
+LOG_GROUP_ID = int(getenv("LOG_GROUP_ID", ""))
+MEMBERS_GROUPS = list(getenv("MEMBERS_GROUPS"))
+
+# A name for your Music bot.
+MUSIC_BOT_NAME = getenv("MUSIC_BOT_NAME")
+
+# Your User ID.
+OWNER_ID = list(
+ map(int, getenv("OWNER_ID", "").split())
+) # Input type must be interger
+
+# Get it from http://dashboard.heroku.com/account
+HEROKU_API_KEY = getenv("HEROKU_API_KEY")
+
+# You have to Enter the app name which you gave to identify your Music Bot in Heroku.
+HEROKU_APP_NAME = getenv("HEROKU_APP_NAME")
+
+# For customized or modified Repository
+UPSTREAM_REPO = getenv(
+ "UPSTREAM_REPO",
+ "https://github.com/TeamYukki/YukkiMusicBot",
+)
+UPSTREAM_BRANCH = getenv("UPSTREAM_BRANCH", "master")
+
+# GIT TOKEN ( if your edited repo is private)
+GIT_TOKEN = getenv("GIT_TOKEN", None)
+
+# Only Links formats are accepted for this Var value.
+SUPPORT_CHANNEL = getenv(
+ "SUPPORT_CHANNEL", None
+) # Example:- https://t.me/TheYukki
+SUPPORT_GROUP = getenv(
+ "SUPPORT_GROUP", None
+) # Example:- https://t.me/YukkiSupport
+
+# Set it in True if you want to leave your assistant after a certain amount of time. [Set time via AUTO_LEAVE_ASSISTANT_TIME]
+AUTO_LEAVING_ASSISTANT = getenv("AUTO_LEAVING_ASSISTANT", None)
+
+# Time after which you're assistant account will leave chats automatically.
+AUTO_LEAVE_ASSISTANT_TIME = int(
+ getenv("ASSISTANT_LEAVE_TIME", "5400")
+) # Remember to give value in Seconds
+
+# Time after which bot will suggest random chats about bot commands.
+AUTO_SUGGESTION_TIME = int(
+ getenv("AUTO_SUGGESTION_TIME", "5400")
+) # Remember to give value in Seconds
+
+# Set it True if you want to delete downloads after the music playout ends from your downloads folder
+AUTO_DOWNLOADS_CLEAR = getenv("AUTO_DOWNLOADS_CLEAR", None)
+
+# Set it True if you want to bot to suggest about bot commands to random chats of your bots.
+AUTO_SUGGESTION_MODE = getenv("AUTO_SUGGESTION_MODE", None)
+
+# Set it true if you want your bot to be private only [You'll need to allow CHAT_ID via /authorise command then only your bot will play music in that chat.]
+PRIVATE_BOT_MODE = getenv("PRIVATE_BOT_MODE", None)
+
+# Time sleep duration For Youtube Downloader
+YOUTUBE_DOWNLOAD_EDIT_SLEEP = int(getenv("YOUTUBE_EDIT_SLEEP", "3"))
+
+# Time sleep duration For Telegram Downloader
+TELEGRAM_DOWNLOAD_EDIT_SLEEP = int(getenv("TELEGRAM_EDIT_SLEEP", "5"))
+
+# Your Github Repo.. Will be shown on /start Command
+GITHUB_REPO = getenv("GITHUB_REPO", None)
+
+# Spotify Client.. Get it from https://developer.spotify.com/dashboard
+SPOTIFY_CLIENT_ID = getenv("SPOTIFY_CLIENT_ID", None)
+SPOTIFY_CLIENT_SECRET = getenv("SPOTIFY_CLIENT_SECRET", None)
+
+# Maximum number of video calls allowed on bot. You can later set it via /set_video_limit on telegram
+VIDEO_STREAM_LIMIT = int(getenv("VIDEO_STREAM_LIMIT", "3"))
+
+# Maximum Limit Allowed for users to save playlists on bot's server
+SERVER_PLAYLIST_LIMIT = int(getenv("SERVER_PLAYLIST_LIMIT", "30"))
+
+# MaximuM limit for fetching playlist's track from youtube, spotify, apple links.
+PLAYLIST_FETCH_LIMIT = int(getenv("PLAYLIST_FETCH_LIMIT", "25"))
+
+# Cleanmode time after which bot will delete its old messages from chats
+CLEANMODE_DELETE_MINS = int(
+ getenv("CLEANMODE_MINS", "5")
+) # Remember to give value in Seconds
+
+
+# Telegram audio and video file size limit
+
+TG_AUDIO_FILESIZE_LIMIT = int(
+ getenv("TG_AUDIO_FILESIZE_LIMIT", "104857600")
+) # Remember to give value in bytes
+
+TG_VIDEO_FILESIZE_LIMIT = int(
+ getenv("TG_VIDEO_FILESIZE_LIMIT", "1073741824")
+) # Remember to give value in bytes
+
+# Chceckout https://www.gbmb.org/mb-to-bytes for converting mb to bytes
+
+# If you want your bot to setup the commands automatically in the bot's menu set it to true.
+# Refer to https://i.postimg.cc/Bbg3LQTG/image.png
+SET_CMDS = getenv("SET_CMDS", True)
+
+# You'll need a Pyrogram String Session for these vars. Generate String from our session generator bot @YukkiStringBot
+STRING1 = getenv("STRING_SESSION", None)
+STRING2 = getenv("STRING_SESSION2", None)
+STRING3 = getenv("STRING_SESSION3", None)
+STRING4 = getenv("STRING_SESSION4", None)
+STRING5 = getenv("STRING_SESSION5", None)
+
+
+# __ ___ _ _ ___ _______ __ __ _ _ _____ _____ _____ ____ ____ _______
+# \ \ / / | | | |/ / |/ /_ _| | \/ | | | |/ ____|_ _/ ____| | _ \ / __ \__ __|
+# \ \_/ /| | | | ' /| ' / | | | \ / | | | | (___ | || | | |_) | | | | | |
+# \ / | | | | < | < | | | |\/| | | | |\___ \ | || | | _ <| | | | | |
+# | | | |__| | . \| . \ _| |_ | | | | |__| |____) |_| || |____ | |_) | |__| | | |
+# |_| \____/|_|\_\_|\_\_____| |_| |_|\____/|_____/|_____\_____| |____/ \____/ |_|
+
+
+### DONT TOUCH or EDIT codes after this line
+BANNED_USERS = filters.user()
+YTDOWNLOADER = 1
+LOG = 2
+LOG_FILE_NAME = "Yukkilogs.txt"
+adminlist = {}
+lyrical = {}
+chatstats = {}
+userstats = {}
+clean = {}
+
+autoclean = []
+
+
+# Images
+START_IMG_URL = getenv("START_IMG_URL", None)
+
+PING_IMG_URL = getenv(
+ "PING_IMG_URL",
+ "assets/Ping.jpeg",
+)
+
+PLAYLIST_IMG_URL = getenv(
+ "PLAYLIST_IMG_URL",
+ "assets/Playlist.jpeg",
+)
+
+GLOBAL_IMG_URL = getenv(
+ "GLOBAL_IMG_URL",
+ "assets/Global.jpeg",
+)
+
+STATS_IMG_URL = getenv(
+ "STATS_IMG_URL",
+ "assets/Stats.jpeg",
+)
+
+TELEGRAM_AUDIO_URL = getenv(
+ "TELEGRAM_AUDIO_URL",
+ "assets/Audio.jpeg",
+)
+
+TELEGRAM_VIDEO_URL = getenv(
+ "TELEGRAM_VIDEO_URL",
+ "assets/Video.jpeg",
+)
+
+STREAM_IMG_URL = getenv(
+ "STREAM_IMG_URL",
+ "assets/Stream.jpeg",
+)
+
+SOUNCLOUD_IMG_URL = getenv(
+ "SOUNCLOUD_IMG_URL",
+ "assets/Soundcloud.jpeg",
+)
+
+YOUTUBE_IMG_URL = getenv(
+ "YOUTUBE_IMG_URL",
+ "assets/Youtube.jpeg",
+)
+
+SPOTIFY_ARTIST_IMG_URL = getenv(
+ "SPOTIFY_ARTIST_IMG_URL",
+ "assets/SpotifyArtist.jpeg",
+)
+
+SPOTIFY_ALBUM_IMG_URL = getenv(
+ "SPOTIFY_ALBUM_IMG_URL",
+ "assets/SpotifyAlbum.jpeg",
+)
+
+SPOTIFY_PLAYLIST_IMG_URL = getenv(
+ "SPOTIFY_PLAYLIST_IMG_URL",
+ "assets/SpotifyPlaylist.jpeg",
+)
+
+
+def time_to_seconds(time):
+ stringt = str(time)
+ return sum(
+ int(x) * 60**i
+ for i, x in enumerate(reversed(stringt.split(":")))
+ )
+
+
+DURATION_LIMIT = int(time_to_seconds(f"{DURATION_LIMIT_MIN}:00"))
+SONG_DOWNLOAD_DURATION_LIMIT = int(
+ time_to_seconds(f"{SONG_DOWNLOAD_DURATION}:00")
+)
+
+if SUPPORT_CHANNEL:
+ if not re.match("(?:http|https)://", SUPPORT_CHANNEL):
+ print(
+ "[ERROR] - Your SUPPORT_CHANNEL url is wrong. Please ensure that it starts with https://"
+ )
+ sys.exit()
+
+if SUPPORT_GROUP:
+ if not re.match("(?:http|https)://", SUPPORT_GROUP):
+ print(
+ "[ERROR] - Your SUPPORT_GROUP url is wrong. Please ensure that it starts with https://"
+ )
+ sys.exit()
+
+if UPSTREAM_REPO:
+ if not re.match("(?:http|https)://", UPSTREAM_REPO):
+ print(
+ "[ERROR] - Your UPSTREAM_REPO url is wrong. Please ensure that it starts with https://"
+ )
+ sys.exit()
+
+if GITHUB_REPO:
+ if not re.match("(?:http|https)://", GITHUB_REPO):
+ print(
+ "[ERROR] - Your GITHUB_REPO url is wrong. Please ensure that it starts with https://"
+ )
+ sys.exit()
+
+
+if PING_IMG_URL:
+ if PING_IMG_URL != "assets/Ping.jpeg":
+ if not re.match("(?:http|https)://", PING_IMG_URL):
+ print(
+ "[ERROR] - Your PING_IMG_URL url is wrong. Please ensure that it starts with https://"
+ )
+ sys.exit()
+
+if PLAYLIST_IMG_URL:
+ if PLAYLIST_IMG_URL != "assets/Playlist.jpeg":
+ if not re.match("(?:http|https)://", PLAYLIST_IMG_URL):
+ print(
+ "[ERROR] - Your PLAYLIST_IMG_URL url is wrong. Please ensure that it starts with https://"
+ )
+ sys.exit()
+
+if GLOBAL_IMG_URL:
+ if GLOBAL_IMG_URL != "assets/Global.jpeg":
+ if not re.match("(?:http|https)://", GLOBAL_IMG_URL):
+ print(
+ "[ERROR] - Your GLOBAL_IMG_URL url is wrong. Please ensure that it starts with https://"
+ )
+ sys.exit()
+
+
+if STATS_IMG_URL:
+ if STATS_IMG_URL != "assets/Stats.jpeg":
+ if not re.match("(?:http|https)://", STATS_IMG_URL):
+ print(
+ "[ERROR] - Your STATS_IMG_URL url is wrong. Please ensure that it starts with https://"
+ )
+ sys.exit()
+
+
+if TELEGRAM_AUDIO_URL:
+ if TELEGRAM_AUDIO_URL != "assets/Audio.jpeg":
+ if not re.match("(?:http|https)://", TELEGRAM_AUDIO_URL):
+ print(
+ "[ERROR] - Your TELEGRAM_AUDIO_URL url is wrong. Please ensure that it starts with https://"
+ )
+ sys.exit()
+
+
+if STREAM_IMG_URL:
+ if STREAM_IMG_URL != "assets/Stream.jpeg":
+ if not re.match("(?:http|https)://", STREAM_IMG_URL):
+ print(
+ "[ERROR] - Your STREAM_IMG_URL url is wrong. Please ensure that it starts with https://"
+ )
+ sys.exit()
+
+
+if SOUNCLOUD_IMG_URL:
+ if SOUNCLOUD_IMG_URL != "assets/Soundcloud.jpeg":
+ if not re.match("(?:http|https)://", SOUNCLOUD_IMG_URL):
+ print(
+ "[ERROR] - Your SOUNCLOUD_IMG_URL url is wrong. Please ensure that it starts with https://"
+ )
+ sys.exit()
+
+if YOUTUBE_IMG_URL:
+ if YOUTUBE_IMG_URL != "assets/Youtube.jpeg":
+ if not re.match("(?:http|https)://", YOUTUBE_IMG_URL):
+ print(
+ "[ERROR] - Your YOUTUBE_IMG_URL url is wrong. Please ensure that it starts with https://"
+ )
+ sys.exit()
+
+
+if TELEGRAM_VIDEO_URL:
+ if TELEGRAM_VIDEO_URL != "assets/Video.jpeg":
+ if not re.match("(?:http|https)://", TELEGRAM_VIDEO_URL):
+ print(
+ "[ERROR] - Your TELEGRAM_VIDEO_URL url is wrong. Please ensure that it starts with https://"
+ )
+ sys.exit()
+
+
+if not MUSIC_BOT_NAME.isascii():
+ print(
+ "[ERROR] - You've defined MUSIC_BOT_NAME wrong. Please don't use any special characters or Special font for this... Keep it simple and small."
+ )
+ sys.exit()
diff --git a/genstring.py b/genstring.py
new file mode 100644
index 0000000000000000000000000000000000000000..2f10f26b8cf12b2dea0fc23ca446c91dc2fffe11
--- /dev/null
+++ b/genstring.py
@@ -0,0 +1,33 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+
+import asyncio
+
+from pyrogram import Client as c
+
+API_ID = input("\nEnter Your API_ID:\n > ")
+API_HASH = input("\nEnter Your API_HASH:\n > ")
+
+print("\n\n Enter Phone number when asked.\n\n")
+
+i = c(":memory:", api_id=API_ID, api_hash=API_HASH)
+
+
+async def main():
+ await i.start()
+ ss = await i.export_session_string()
+ xx = f"HERE IS YOUR STRING SESSION, COPY IT, DON'T SHARE!!\n\n`{ss}`\n\nGENERATED BY YUKKI"
+ ok = await i.send_message("me", xx)
+ print("\nHERE IS YOUR STRING SESSION, COPY IT, DON'T SHARE!!\n")
+ print(f"\n{ss}\n")
+ print("\nGENERATED BY YUKKI\n")
+
+
+asyncio.run(main())
diff --git a/heroku.yml b/heroku.yml
new file mode 100644
index 0000000000000000000000000000000000000000..86bcb3dc3be401ad1b8edb3a452126eb8766fadc
--- /dev/null
+++ b/heroku.yml
@@ -0,0 +1,5 @@
+build:
+ docker:
+ worker: Dockerfile
+run:
+ worker: bash start
\ No newline at end of file
diff --git a/main.py b/main.py
new file mode 100644
index 0000000000000000000000000000000000000000..7f81e0ea1f5a091478a9d6ec467a795af843b26e
--- /dev/null
+++ b/main.py
@@ -0,0 +1,81 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import asyncio
+import importlib
+import sys
+
+from pyrogram import idle
+from pytgcalls.exceptions import NoActiveGroupCall
+
+import config
+from config import BANNED_USERS
+from YukkiMusic import LOGGER, app, userbot
+from YukkiMusic.core.call import Yukki
+from YukkiMusic.plugins import ALL_MODULES
+from YukkiMusic.utils.database import get_banned_users, get_gbanned
+
+loop = asyncio.get_event_loop()
+
+
+async def init():
+ if (
+ not config.STRING1
+ and not config.STRING2
+ and not config.STRING3
+ and not config.STRING4
+ and not config.STRING5
+ ):
+ LOGGER("YukkiMusic").error(
+ "No Assistant Clients Vars Defined!.. Exiting Process."
+ )
+ return
+ if (
+ not config.SPOTIFY_CLIENT_ID
+ and not config.SPOTIFY_CLIENT_SECRET
+ ):
+ LOGGER("YukkiMusic").warning(
+ "No Spotify Vars defined. Your bot won't be able to play spotify queries."
+ )
+ try:
+ users = await get_gbanned()
+ for user_id in users:
+ BANNED_USERS.add(user_id)
+ users = await get_banned_users()
+ for user_id in users:
+ BANNED_USERS.add(user_id)
+ except:
+ pass
+ await app.start()
+ for all_module in ALL_MODULES:
+ importlib.import_module("YukkiMusic.plugins" + all_module)
+ LOGGER("Yukkimusic.plugins").info(
+ "Successfully Imported Modules "
+ )
+ await userbot.start()
+ await Yukki.start()
+ try:
+ await Yukki.stream_call(
+ "http://docs.evostream.com/sample_content/assets/sintel1m720p.mp4"
+ )
+ except NoActiveGroupCall:
+ LOGGER("YukkiMusic").error(
+ "[ERROR] - \n\nPlease turn on your Logger Group's Voice Call. Make sure you never close/end voice call in your log group"
+ )
+ sys.exit()
+ except:
+ pass
+ await Yukki.decorators()
+ LOGGER("YukkiMusic").info("Yukki Music Bot Started Successfully")
+ await idle()
+
+
+if __name__ == "__main__":
+ loop.run_until_complete(init())
+ LOGGER("YukkiMusic").info("Stopping Yukki Music Bot! GoodBye")
diff --git a/output.txt b/output.txt
new file mode 100644
index 0000000000000000000000000000000000000000..52866f200a7e407687d312368fa9eb4da90e55fc
--- /dev/null
+++ b/output.txt
@@ -0,0 +1 @@
+b'{\'responseContext\': {\'serviceTrackingParams\': [{\'service\': \'GFEEDBACK\', \'params\': [{\'key\': \'browse_id\', \'value\': \'FEtrending\'}, {\'key\': \'browse_id_prefix\', \'value\': \'\'}, {\'key\': \'logged_in\', \'value\': \'0\'}, {\'key\': \'e\', \'value\': \'9479112,23804281,23946420,23966208,23986015,23998056,24004644,24077241,24166867,24181174,24241378,24290971,24439361,24453989,24456089,24457856,24468724,24499534,24500856,24542367,24548629,24550458,24552800,24566687,24690004,24699899,39325854,39326848,39326916,51009781,51010235,51016856,51017346,51020570,51025415,51030103,51037346,51037349,51041512,51050361,51053689,51057842,51057857,51060353,51063643,51064835,51072748,51091058,51091331,51095478,51098297,51098299,51102409,51111324,51111738,51113656,51113661,51114642,51115184,51116067,51118932,51124104,51133103,51139379,51141472,51145219,51146014,51147415,51148688,51149607,51152050,51157411,51157430,51157432,51157838,51158470,51158514,51160545,51162170,51163637,51165467,51165568,51169118,51170248,51172674,51172688,51172691,51172698,51172709,51172712,51172721,51172728,51175606,51176511,51177817,51178316,51178337,51178346,51178357,51178982,51181296,51182274,51183910,51184022,51184990,51186528,51189826,51190061,51190075,51190080,51190085,51190198,51190211,51190220,51190231,51190652,51194137,51195231,51196181,51196769,51197570,51197687,51197692,51197697,51197708,51198848,51199193,51200251,51200256,51200291,51200298,51200569,51201350,51201367,51201370,51201381,51201428,51201437,51201444,51201451,51202232,51204329,51204585,51204938,51207176,51207193,51207198,51207209,51207302,51208300,51209049,51212084,51212466,51212555,51212569,51213807,51217274,51217504,51217767,51219800,51219805,51221011,51221148,51221997,51223961,51224747,51225397,51227774,51227881,51227903,51228202,51228349,51228352,51228695,51228776,51228781,51228798,51228803,51228812,51228957,51230478,51230492,51231813,51231864,51231866,51232191,51236018,51237842,51238485,51238569,51238737,51239330,51240941,51241028,51241600,51242397,51242448,51242452,51242711,51243746,51243940,51244976,51246265,51246281,51246303,51246570,51246799,51248254,51251509,51251850\'}, {\'key\': \'visitor_data\', \'value\': \'CgtWSWo0NTVpbTVlMCj-rYu1BjIKCgJJThIEGgAgWw%3D%3D\'}]}, {\'service\': \'GOOGLE_HELP\', \'params\': [{\'key\': \'browse_id\', \'value\': \'FEtrending\'}, {\'key\': \'browse_id_prefix\', \'value\': \'\'}]}, {\'service\': \'CSI\', \'params\': [{\'key\': \'c\', \'value\': \'WEB\'}, {\'key\': \'cver\', \'value\': \'2.20240724.03.00\'}, {\'key\': \'yt_li\', \'value\': \'0\'}, {\'key\': \'GetTrending_rid\', \'value\': \'0x45567c7c246e9723\'}]}, {\'service\': \'GUIDED_HELP\', \'params\': [{\'key\': \'logged_in\', \'value\': \'0\'}]}, {\'service\': \'ECATCHER\', \'params\': [{\'key\': \'client.version\', \'value\': \'2.20240724\'}, {\'key\': \'client.name\', \'value\': \'WEB\'}]}], \'maxAgeSeconds\': 300, \'mainAppWebResponseContext\': {\'loggedOut\': True, \'trackingParam\': \'kx_fmPxhoPZRjiPAIBCuUcZwAdpOwOyF8Hy6g3jIwxI6w-wRgkuswmIBwOcCE59TDtslLKPQ-SS\'}, \'webResponseContextExtensionData\': {\'ytConfigData\': {\'visitorData\': \'CgtWSWo0NTVpbTVlMCj-rYu1BjIKCgJJThIEGgAgWw%3D%3D\', \'rootVisualElementType\': 6827}, \'hasDecorated\': True}}, \'contents\': {\'twoColumnBrowseResultsRenderer\': {\'tabs\': [{\'tabRenderer\': {\'endpoint\': {\'clickTrackingParams\': \'CBYQ8JMBGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/feed/trending\', \'webPageType\': \'WEB_PAGE_TYPE_BROWSE\', \'rootVe\': 6827, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'FEtrending\'}}, \'title\': \'Now\', \'selected\': True, \'content\': {\'sectionListRenderer\': {\'contents\': [{\'itemSectionRenderer\': {\'contents\': [{\'shelfRenderer\': {\'content\': {\'expandedShelfContentsRenderer\': {\'items\': [{\'videoRenderer\': {\'videoId\': \'1En81y5z_J4\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/1En81y5z_J4/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLDYZRX2NpgwSK8DrvFdk8FpUKr8_g\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/1En81y5z_J4/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBb753WQ6-clcglf1NvRn5duqOWUw\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/1En81y5z_J4/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDmiDbRGoldLpgejwENt-dtiOzxSA\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15857911, \'section3Color\': 15201008, \'primaryTitleColor\': 1186072, \'secondaryTitleColor\': 5008229, \'section4Color\': 14543849}, \'darkColorPalette\': {\'section2Color\': 1779236, \'section3Color\': 1186072, \'primaryTitleColor\': 15073274, \'secondaryTitleColor\': 10734789, \'section4Color\': 592908}}, \'title\': {\'runs\': [{\'text\': \'TMC\xc3\xa2\\x80\\x99s Abhishek Banerjee Vs Speaker Om Birla In Lok Sabha | Parliament | Budget\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'TMC\xc3\xa2\\x80\\x99s Abhishek Banerjee Vs Speaker Om Birla In Lok Sabha | Parliament | Budget by Hindustan Times 433,245 views 1 day ago 11 minutes, 13 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': "Trinamool Congress leader and West Bengal Chief Minister Mamata Banerjee\'s nephew Abhishek had heated arguments with Lok Sabha speaker Om Birla on 3 separate occasions during his speech on..."}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Hindustan Times\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJ4EENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@HT-Videos\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCm7lHFkt2yB_WzL67aruVBQ\', \'canonicalBaseUrl\': \'/@HT-Videos\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'1 day ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'11 minutes, 13 seconds\'}}, \'simpleText\': \'11:13\'}, \'viewCountText\': {\'simpleText\': \'433,245 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CJ4EENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=1En81y5z_J4\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'1En81y5z_J4\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr2---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=d449fcd72e73fc9e&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CJ4EENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Hindustan Times\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJ4EENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@HT-Videos\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCm7lHFkt2yB_WzL67aruVBQ\', \'canonicalBaseUrl\': \'/@HT-Videos\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Hindustan Times\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJ4EENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@HT-Videos\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCm7lHFkt2yB_WzL67aruVBQ\', \'canonicalBaseUrl\': \'/@HT-Videos\'}}}]}, \'trackingParams\': \'CJ4EENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFVAnvnP8_Ka_6TUAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'433K views\'}}, \'simpleText\': \'433K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CKIEEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CKIEEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'1En81y5z_J4\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CKIEEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'1En81y5z_J4\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'1En81y5z_J4\']}}]}}, \'trackingParams\': \'CKIEEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CJ4EENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgsxRW44MXk1el9KNA%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CJ4EENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CKEEEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CJ4EENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CJ4EENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/rxxycwwjFXuC-eQNBcklj4P-uduSg-aHJJ7w77Ynf_LZV742N5tvTFSnJwRmV5CnNhFNbj7uKdQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CJ4EENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@HT-Videos\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCm7lHFkt2yB_WzL67aruVBQ\', \'canonicalBaseUrl\': \'/@HT-Videos\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'11 minutes, 13 seconds\'}}, \'simpleText\': \'11:13\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CKAEEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'1En81y5z_J4\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CKAEEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'1En81y5z_J4\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CKAEEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CJ8EEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CJ8EEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'1En81y5z_J4\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CJ8EEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'1En81y5z_J4\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'1En81y5z_J4\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CJ8EEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/rxxycwwjFXuC-eQNBcklj4P-uduSg-aHJJ7w77Ynf_LZV742N5tvTFSnJwRmV5CnNhFNbj7uKdQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CJ4EENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@HT-Videos\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCm7lHFkt2yB_WzL67aruVBQ\', \'canonicalBaseUrl\': \'/@HT-Videos\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'roz9sXFkTuE\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/roz9sXFkTuE/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLBx7PTqIAV3YwGUlOu8NDCwr7_LtA\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/roz9sXFkTuE/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDGeaaz2Z9jUOgBcWsThM8A1EHAtg\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/roz9sXFkTuE/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBoi4uGiP49bFts64JUuShQtH4Bew\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16314866, \'section3Color\': 15919082, \'primaryTitleColor\': 1642514, \'secondaryTitleColor\': 8344157, \'section4Color\': 15457761}, \'darkColorPalette\': {\'section2Color\': 3345943, \'section3Color\': 2492945, \'primaryTitleColor\': 16770539, \'secondaryTitleColor\': 13411245, \'section4Color\': 1640203}}, \'title\': {\'runs\': [{\'text\': \'Aaj Ki Raat | Stree 2 | Tamannaah Bhatia | Sachin-Jigar | Madhubanti | Divya | Amitabh | 15th August\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Aaj Ki Raat | Stree 2 | Tamannaah Bhatia | Sachin-Jigar | Madhubanti | Divya | Amitabh | 15th August by Saregama Music 16,738,921 views 1 day ago 3 minutes, 3 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Check out the scintillating song featuring Tamannaah Bhatia in the upcoming movie Stree 2! Sung by Madhubanti Bagchi, Divya Kumar with lyrics penned by Amitabh Bhattacharya and composed by...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Saregama Music\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJkEENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SaregamaMusic\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC_A7K2dXFsTMAciGmnNxy-Q\', \'canonicalBaseUrl\': \'/@SaregamaMusic\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'1 day ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3 minutes, 3 seconds\'}}, \'simpleText\': \'3:03\'}, \'viewCountText\': {\'simpleText\': \'16,738,921 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CJkEENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=roz9sXFkTuE\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'roz9sXFkTuE\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr3---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=ae8cfdb171644ee1&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CJkEENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Saregama Music\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJkEENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SaregamaMusic\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC_A7K2dXFsTMAciGmnNxy-Q\', \'canonicalBaseUrl\': \'/@SaregamaMusic\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Saregama Music\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJkEENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SaregamaMusic\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC_A7K2dXFsTMAciGmnNxy-Q\', \'canonicalBaseUrl\': \'/@SaregamaMusic\'}}}]}, \'trackingParams\': \'CJkEENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFVA4Z2Ri5e2v8auAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'16 million views\'}}, \'simpleText\': \'16M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CJ0EEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CJ0EEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'roz9sXFkTuE\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CJ0EEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'roz9sXFkTuE\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'roz9sXFkTuE\']}}]}}, \'trackingParams\': \'CJ0EEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CJkEENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'Cgtyb3o5c1hGa1R1RQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CJkEENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CJwEEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CJkEENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CJkEENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/dxED1O-r5cRS73JBlUk4VS3pZHDfiHcuRjRbFMcf6KgYhxP4NUlD7x0h4TR1XTXkl-JGjTPTYQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CJkEENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SaregamaMusic\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC_A7K2dXFsTMAciGmnNxy-Q\', \'canonicalBaseUrl\': \'/@SaregamaMusic\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3 minutes, 3 seconds\'}}, \'simpleText\': \'3:03\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CJsEEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'roz9sXFkTuE\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CJsEEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'roz9sXFkTuE\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CJsEEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CJoEEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CJoEEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'roz9sXFkTuE\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CJoEEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'roz9sXFkTuE\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'roz9sXFkTuE\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CJoEEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/dxED1O-r5cRS73JBlUk4VS3pZHDfiHcuRjRbFMcf6KgYhxP4NUlD7x0h4TR1XTXkl-JGjTPTYQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CJkEENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SaregamaMusic\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC_A7K2dXFsTMAciGmnNxy-Q\', \'canonicalBaseUrl\': \'/@SaregamaMusic\'}}}}}}}}}]}}, \'trackingParams\': \'CJgEENwcGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CJcEELsvGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'itemSectionRenderer\': {\'contents\': [{\'reelShelfRenderer\': {\'title\': {\'runs\': [{\'text\': \'Trending Shorts\'}]}, \'button\': {\'menuRenderer\': {\'items\': [{\'menuNavigationItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Send feedback\'}]}, \'icon\': {\'iconType\': \'FEEDBACK\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CPgDEN-DAxgAIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'ignoreNavigation\': True}}, \'userFeedbackEndpoint\': {\'additionalDatas\': [{\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'lockup\', \'value\': \'shelf\'}}]}}, \'trackingParams\': \'CPgDEN-DAxgAIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Send feedback\'}}}}], \'trackingParams\': \'CPgDEN-DAxgAIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'More actions\'}}}}, \'items\': [{\'reelItemRenderer\': {\'videoId\': \'ySeT99L_0Cs\', \'headline\': {\'simpleText\': \'Sofa Cum Bed ghar laa kar set kiya \xc3\xb0\\x9f\\x98\\x8d #priyalkukreja #shorts #ytshorts\'}, \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/ySeT99L_0Cs/oardefault.jpg?sqp=-oaymwEkCJUDENAFSFqQAgHyq4qpAxMIARUAAAAAJQAAyEI9AICiQ3gB&rs=AOn4CLDx2GmoeBHvFhc8jxWtYLFVf_0LtA\', \'width\': 405, \'height\': 720}], \'isOriginalAspectRatio\': True}, \'viewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'11 million views\'}}, \'simpleText\': \'11M views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CJUEEIf2BBgAIhMIhrG-6KPDhwMVgovYBR0yWgBVWgpGRXRyZW5kaW5nmgEHCLkBEPLwBQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/shorts/ySeT99L_0Cs\', \'webPageType\': \'WEB_PAGE_TYPE_SHORTS\', \'rootVe\': 37414}}, \'reelWatchEndpoint\': {\'videoId\': \'ySeT99L_0Cs\', \'playerParams\': \'8AEByAO5AbgEOKIGFQEBMtwSzZ-PJBUrPtKbVGqOKR2LRQ%3D%3D\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/ySeT99L_0Cs/frame0.jpg\', \'width\': 720, \'height\': 1280}], \'isOriginalAspectRatio\': True}, \'overlay\': {\'reelPlayerOverlayRenderer\': {\'style\': \'REEL_PLAYER_OVERLAY_STYLE_SHORTS\', \'trackingParams\': \'CJYEELC1BCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'reelPlayerNavigationModel\': \'REEL_PLAYER_NAVIGATION_MODEL_UNSPECIFIED\'}}, \'params\': \'CDcwAg%3D%3D\', \'sequenceProvider\': \'REEL_WATCH_SEQUENCE_PROVIDER_RPC\', \'sequenceParams\': \'Cgt5U2VUOTlMXzBDcyrlAQoNCgt5U2VUOTlMXzBDcwoNCgs2bXhUbUpWMW5EawoNCgtNNnR2MS00dVMwNAoNCgtNdlB5d3FWMGF1QQoNCgtKTFpxdjRrTUJPMAoNCgtOZ2RZZ1NjR3ZQSQoNCgthVDhrNDhMajd3ZwoNCgs2LTZkNHFNeHFyYwoNCgt3ck9mSHFheFlpRQoNCgswYlliTEhVeFRhMAoNCgtxcGRVTHNDTGl1MAoNCgs4T2ZKcVNyMVgyMAoNCgtMZE9DS2F5czdUTQoNCgszRmtJNFdRVS1kVQoNCgtpeWhxRlFhMGpmOBAAGDdIAWgB\', \'loggingContext\': {\'vssLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}, \'qoeLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}}, \'ustreamerConfig\': \'CAwSGG1MdndaZU9qYzlpR3pxNnFMMkxGS1Q0PQ==\'}}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuNavigationItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Send feedback\'}]}, \'icon\': {\'iconType\': \'FEEDBACK\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CJUEEIf2BBgAIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'ignoreNavigation\': True}}, \'userFeedbackEndpoint\': {\'additionalDatas\': [{\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'video_id\', \'value\': \'ySeT99L_0Cs\'}}, {\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'lockup\', \'value\': \'shelf\'}}]}}, \'trackingParams\': \'CJUEEIf2BBgAIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Send feedback\'}}}}], \'trackingParams\': \'CJUEEIf2BBgAIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'More actions\'}}}}, \'trackingParams\': \'CJUEEIf2BBgAIhMIhrG-6KPDhwMVgovYBR0yWgBVQKug_5f9_uSTyQE=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Sofa Cum Bed ghar laa kar set kiya \xc3\xb0\\x9f\\x98\\x8d #priyalkukreja #shorts #ytshorts \xc3\xa2\\x80\\x93 play Short\'}}, \'style\': \'REEL_ITEM_STYLE_AVATAR_CIRCLE\', \'videoType\': \'REEL_VIDEO_TYPE_VIDEO\', \'loggingDirectives\': {\'trackingParams\': \'CJUEEIf2BBgAIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'visibility\': {\'types\': \'12\'}, \'enableDisplayloggerExperiment\': True}}}, {\'reelItemRenderer\': {\'videoId\': \'6mxTmJV1nDk\', \'headline\': {\'simpleText\': \'Goa water mystery \xc3\xb0\\x9f\\x98\xc2\xb3 #scienceandfun #ashusir #science #goa #experiment #shorts\'}, \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/6mxTmJV1nDk/oardefault.jpg?sqp=-oaymwEkCJUDENAFSFqQAgHyq4qpAxMIARUAAAAAJQAAyEI9AICiQ3gB&rs=AOn4CLA7rvDm45VMX_zmtllOuEx9P68hzA\', \'width\': 405, \'height\': 720}], \'isOriginalAspectRatio\': True}, \'viewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'2.3 million views\'}}, \'simpleText\': \'2.3M views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CJMEEIf2BBgBIhMIhrG-6KPDhwMVgovYBR0yWgBVWgpGRXRyZW5kaW5nmgEHCLkBEPLwBQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/shorts/6mxTmJV1nDk\', \'webPageType\': \'WEB_PAGE_TYPE_SHORTS\', \'rootVe\': 37414}}, \'reelWatchEndpoint\': {\'videoId\': \'6mxTmJV1nDk\', \'playerParams\': \'8AEByAO5AbgEOKIGFQEBMtwSApolJM2vgZAyixq28DdEbA%3D%3D\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/6mxTmJV1nDk/frame0.jpg\', \'width\': 1080, \'height\': 1920}], \'isOriginalAspectRatio\': True}, \'overlay\': {\'reelPlayerOverlayRenderer\': {\'style\': \'REEL_PLAYER_OVERLAY_STYLE_SHORTS\', \'trackingParams\': \'CJQEELC1BCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'reelPlayerNavigationModel\': \'REEL_PLAYER_NAVIGATION_MODEL_UNSPECIFIED\'}}, \'params\': \'CDcwAg%3D%3D\', \'sequenceProvider\': \'REEL_WATCH_SEQUENCE_PROVIDER_RPC\', \'sequenceParams\': \'Cgs2bXhUbUpWMW5EayrlAQoNCgt5U2VUOTlMXzBDcwoNCgs2bXhUbUpWMW5EawoNCgtNNnR2MS00dVMwNAoNCgtNdlB5d3FWMGF1QQoNCgtKTFpxdjRrTUJPMAoNCgtOZ2RZZ1NjR3ZQSQoNCgthVDhrNDhMajd3ZwoNCgs2LTZkNHFNeHFyYwoNCgt3ck9mSHFheFlpRQoNCgswYlliTEhVeFRhMAoNCgtxcGRVTHNDTGl1MAoNCgs4T2ZKcVNyMVgyMAoNCgtMZE9DS2F5czdUTQoNCgszRmtJNFdRVS1kVQoNCgtpeWhxRlFhMGpmOBABGDdIAWgB\', \'loggingContext\': {\'vssLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}, \'qoeLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}}, \'ustreamerConfig\': \'CAwSGG1MdndaZU9qYzlpR3pxNnFMMkxGS1Q0PQ==\'}}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuNavigationItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Send feedback\'}]}, \'icon\': {\'iconType\': \'FEEDBACK\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CJMEEIf2BBgBIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'ignoreNavigation\': True}}, \'userFeedbackEndpoint\': {\'additionalDatas\': [{\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'video_id\', \'value\': \'6mxTmJV1nDk\'}}, {\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'lockup\', \'value\': \'shelf\'}}]}}, \'trackingParams\': \'CJMEEIf2BBgBIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Send feedback\'}}}}], \'trackingParams\': \'CJMEEIf2BBgBIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'More actions\'}}}}, \'trackingParams\': \'CJMEEIf2BBgBIhMIhrG-6KPDhwMVgovYBR0yWgBVQLm41quJ85S26gE=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Goa water mystery \xc3\xb0\\x9f\\x98\xc2\xb3 #scienceandfun #ashusir #science #goa #experiment #shorts \xc3\xa2\\x80\\x93 play Short\'}}, \'style\': \'REEL_ITEM_STYLE_AVATAR_CIRCLE\', \'videoType\': \'REEL_VIDEO_TYPE_VIDEO\', \'loggingDirectives\': {\'trackingParams\': \'CJMEEIf2BBgBIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'visibility\': {\'types\': \'12\'}, \'enableDisplayloggerExperiment\': True}}}, {\'reelItemRenderer\': {\'videoId\': \'M6tv1-4uS04\', \'headline\': {\'simpleText\': \'Bachpan ki wo gym\xc3\xb0\\x9f\xc2\xa5\xc2\xba\xc3\xb0\\x9f\\x94\xc2\xa5| Indian family\xc3\xb0\\x9f\\x98\\x82|| #shorts #indian #relatable #bachpan #gym\'}, \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/M6tv1-4uS04/oardefault.jpg?sqp=-oaymwEkCJQDENAFSFqQAgHyq4qpAxMIARUAAAAAJQAAyEI9AICiQ3gB&rs=AOn4CLDyzcM4X4gh30VEYFic61izfoY3kA\', \'width\': 404, \'height\': 720}], \'isOriginalAspectRatio\': True}, \'viewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'906K views\'}}, \'simpleText\': \'906K views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CJEEEIf2BBgCIhMIhrG-6KPDhwMVgovYBR0yWgBVWgpGRXRyZW5kaW5nmgEHCLkBEPLwBQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/shorts/M6tv1-4uS04\', \'webPageType\': \'WEB_PAGE_TYPE_SHORTS\', \'rootVe\': 37414}}, \'reelWatchEndpoint\': {\'videoId\': \'M6tv1-4uS04\', \'playerParams\': \'8AEByAO5AbgEOKIGFQEBMtwS64ge46BetPK5pZEV9dg3lQ%3D%3D\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/M6tv1-4uS04/frame0.jpg\', \'width\': 1078, \'height\': 1920}], \'isOriginalAspectRatio\': True}, \'overlay\': {\'reelPlayerOverlayRenderer\': {\'style\': \'REEL_PLAYER_OVERLAY_STYLE_SHORTS\', \'trackingParams\': \'CJIEELC1BCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'reelPlayerNavigationModel\': \'REEL_PLAYER_NAVIGATION_MODEL_UNSPECIFIED\'}}, \'params\': \'CDcwAg%3D%3D\', \'sequenceProvider\': \'REEL_WATCH_SEQUENCE_PROVIDER_RPC\', \'sequenceParams\': \'CgtNNnR2MS00dVMwNCrlAQoNCgt5U2VUOTlMXzBDcwoNCgs2bXhUbUpWMW5EawoNCgtNNnR2MS00dVMwNAoNCgtNdlB5d3FWMGF1QQoNCgtKTFpxdjRrTUJPMAoNCgtOZ2RZZ1NjR3ZQSQoNCgthVDhrNDhMajd3ZwoNCgs2LTZkNHFNeHFyYwoNCgt3ck9mSHFheFlpRQoNCgswYlliTEhVeFRhMAoNCgtxcGRVTHNDTGl1MAoNCgs4T2ZKcVNyMVgyMAoNCgtMZE9DS2F5czdUTQoNCgszRmtJNFdRVS1kVQoNCgtpeWhxRlFhMGpmOBACGDdIAWgB\', \'loggingContext\': {\'vssLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}, \'qoeLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}}, \'ustreamerConfig\': \'CAwSGG1MdndaZU9qYzlpR3pxNnFMMkxGS1Q0PQ==\'}}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuNavigationItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Send feedback\'}]}, \'icon\': {\'iconType\': \'FEEDBACK\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CJEEEIf2BBgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'ignoreNavigation\': True}}, \'userFeedbackEndpoint\': {\'additionalDatas\': [{\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'video_id\', \'value\': \'M6tv1-4uS04\'}}, {\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'lockup\', \'value\': \'shelf\'}}]}}, \'trackingParams\': \'CJEEEIf2BBgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Send feedback\'}}}}], \'trackingParams\': \'CJEEEIf2BBgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'More actions\'}}}}, \'trackingParams\': \'CJEEEIf2BBgCIhMIhrG-6KPDhwMVgovYBR0yWgBVQM6WufH--tvVMw==\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Bachpan ki wo gym\xc3\xb0\\x9f\xc2\xa5\xc2\xba\xc3\xb0\\x9f\\x94\xc2\xa5| Indian family\xc3\xb0\\x9f\\x98\\x82|| #shorts #indian #relatable #bachpan #gym \xc3\xa2\\x80\\x93 play Short\'}}, \'style\': \'REEL_ITEM_STYLE_AVATAR_CIRCLE\', \'videoType\': \'REEL_VIDEO_TYPE_VIDEO\', \'loggingDirectives\': {\'trackingParams\': \'CJEEEIf2BBgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'visibility\': {\'types\': \'12\'}, \'enableDisplayloggerExperiment\': True}}}, {\'reelItemRenderer\': {\'videoId\': \'MvPywqV0auA\', \'headline\': {\'simpleText\': \'\xc3\xa0\xc2\xa4\xc2\xac\xc3\xa0\xc2\xa4\xc2\xb9\xc3\xa0\xc2\xa4\xc2\xa8 \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xbe \xc3\xa0\xc2\xa4\\x9d\xc3\xa0\xc2\xa5\\x82\xc3\xa0\xc2\xa4\\xa0\xc3\xa0\xc2\xa4\xc2\xbe \xc3\xa0\xc2\xa4\\x96\xc3\xa0\xc2\xa4\xc2\xbe\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa4\xc2\xbe\xc3\xb0\\x9f\\x98\\xad\xc3\xb0\\x9f\\x98\xc2\xb1Bahan ka Pyar\xc3\xa2\\x9d\xc2\xa4\xc3\xaf\xc2\xb8\\x8f #emotional #sister #brother #motivation\'}, \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/MvPywqV0auA/oardefault.jpg?sqp=-oaymwEkCJUDENAFSFqQAgHyq4qpAxMIARUAAAAAJQAAyEI9AICiQ3gB&rs=AOn4CLCwUnEs4AIyB6S9_WLLvgb2lW_KIg\', \'width\': 405, \'height\': 720}], \'isOriginalAspectRatio\': True}, \'viewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'9.2 million views\'}}, \'simpleText\': \'9.2M views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CI8EEIf2BBgDIhMIhrG-6KPDhwMVgovYBR0yWgBVWgpGRXRyZW5kaW5nmgEHCLkBEPLwBQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/shorts/MvPywqV0auA\', \'webPageType\': \'WEB_PAGE_TYPE_SHORTS\', \'rootVe\': 37414}}, \'reelWatchEndpoint\': {\'videoId\': \'MvPywqV0auA\', \'playerParams\': \'8AEByAO5AbgEOKIGFQEBMtwSLOM8CZ3c50bnDtWWVUDhaA%3D%3D\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/MvPywqV0auA/frame0.jpg\', \'width\': 1080, \'height\': 1920}], \'isOriginalAspectRatio\': True}, \'overlay\': {\'reelPlayerOverlayRenderer\': {\'style\': \'REEL_PLAYER_OVERLAY_STYLE_SHORTS\', \'trackingParams\': \'CJAEELC1BCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'reelPlayerNavigationModel\': \'REEL_PLAYER_NAVIGATION_MODEL_UNSPECIFIED\'}}, \'params\': \'CDcwAg%3D%3D\', \'sequenceProvider\': \'REEL_WATCH_SEQUENCE_PROVIDER_RPC\', \'sequenceParams\': \'CgtNdlB5d3FWMGF1QSrlAQoNCgt5U2VUOTlMXzBDcwoNCgs2bXhUbUpWMW5EawoNCgtNNnR2MS00dVMwNAoNCgtNdlB5d3FWMGF1QQoNCgtKTFpxdjRrTUJPMAoNCgtOZ2RZZ1NjR3ZQSQoNCgthVDhrNDhMajd3ZwoNCgs2LTZkNHFNeHFyYwoNCgt3ck9mSHFheFlpRQoNCgswYlliTEhVeFRhMAoNCgtxcGRVTHNDTGl1MAoNCgs4T2ZKcVNyMVgyMAoNCgtMZE9DS2F5czdUTQoNCgszRmtJNFdRVS1kVQoNCgtpeWhxRlFhMGpmOBADGDdIAWgB\', \'loggingContext\': {\'vssLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}, \'qoeLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}}, \'ustreamerConfig\': \'CAwSGG1MdndaZU9qYzlpR3pxNnFMMkxGS1Q0PQ==\'}}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuNavigationItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Send feedback\'}]}, \'icon\': {\'iconType\': \'FEEDBACK\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CI8EEIf2BBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'ignoreNavigation\': True}}, \'userFeedbackEndpoint\': {\'additionalDatas\': [{\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'video_id\', \'value\': \'MvPywqV0auA\'}}, {\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'lockup\', \'value\': \'shelf\'}}]}}, \'trackingParams\': \'CI8EEIf2BBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Send feedback\'}}}}], \'trackingParams\': \'CI8EEIf2BBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'More actions\'}}}}, \'trackingParams\': \'CI8EEIf2BBgDIhMIhrG-6KPDhwMVgovYBR0yWgBVQODV0auq2Pz5Mg==\', \'accessibility\': {\'accessibilityData\': {\'label\': \'\xc3\xa0\xc2\xa4\xc2\xac\xc3\xa0\xc2\xa4\xc2\xb9\xc3\xa0\xc2\xa4\xc2\xa8 \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xbe \xc3\xa0\xc2\xa4\\x9d\xc3\xa0\xc2\xa5\\x82\xc3\xa0\xc2\xa4\\xa0\xc3\xa0\xc2\xa4\xc2\xbe \xc3\xa0\xc2\xa4\\x96\xc3\xa0\xc2\xa4\xc2\xbe\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa4\xc2\xbe\xc3\xb0\\x9f\\x98\\xad\xc3\xb0\\x9f\\x98\xc2\xb1Bahan ka Pyar\xc3\xa2\\x9d\xc2\xa4\xc3\xaf\xc2\xb8\\x8f #emotional #sister #brother #motivation \xc3\xa2\\x80\\x93 play Short\'}}, \'style\': \'REEL_ITEM_STYLE_AVATAR_CIRCLE\', \'videoType\': \'REEL_VIDEO_TYPE_VIDEO\', \'loggingDirectives\': {\'trackingParams\': \'CI8EEIf2BBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'visibility\': {\'types\': \'12\'}, \'enableDisplayloggerExperiment\': True}}}, {\'reelItemRenderer\': {\'videoId\': \'JLZqv4kMBO0\', \'headline\': {\'simpleText\': \'Part 99 - 2 Din Late Hoga | Kaamwali Bai | #Shorts | Shorts Break\'}, \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/JLZqv4kMBO0/oar2.jpg?sqp=-oaymwEkCJUDENAFSFqQAgHyq4qpAxMIARUAAAAAJQAAyEI9AICiQ3gB&rs=AOn4CLDMLODDK0DrfHQVpyiJNtpOjK6zhg\', \'width\': 405, \'height\': 720}], \'isOriginalAspectRatio\': True}, \'viewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'35 million views\'}}, \'simpleText\': \'35M views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CI0EEIf2BBgEIhMIhrG-6KPDhwMVgovYBR0yWgBVWgpGRXRyZW5kaW5nmgEHCLkBEPLwBQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/shorts/JLZqv4kMBO0\', \'webPageType\': \'WEB_PAGE_TYPE_SHORTS\', \'rootVe\': 37414}}, \'reelWatchEndpoint\': {\'videoId\': \'JLZqv4kMBO0\', \'playerParams\': \'8AEByAO5AbgEOKIGFQEBMtwSkfuNCbxAFRQij4QQW_5z7g%3D%3D\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/JLZqv4kMBO0/frame0.jpg\', \'width\': 1080, \'height\': 1920}], \'isOriginalAspectRatio\': True}, \'overlay\': {\'reelPlayerOverlayRenderer\': {\'style\': \'REEL_PLAYER_OVERLAY_STYLE_SHORTS\', \'trackingParams\': \'CI4EELC1BCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'reelPlayerNavigationModel\': \'REEL_PLAYER_NAVIGATION_MODEL_UNSPECIFIED\'}}, \'params\': \'CDcwAg%3D%3D\', \'sequenceProvider\': \'REEL_WATCH_SEQUENCE_PROVIDER_RPC\', \'sequenceParams\': \'CgtKTFpxdjRrTUJPMCrlAQoNCgt5U2VUOTlMXzBDcwoNCgs2bXhUbUpWMW5EawoNCgtNNnR2MS00dVMwNAoNCgtNdlB5d3FWMGF1QQoNCgtKTFpxdjRrTUJPMAoNCgtOZ2RZZ1NjR3ZQSQoNCgthVDhrNDhMajd3ZwoNCgs2LTZkNHFNeHFyYwoNCgt3ck9mSHFheFlpRQoNCgswYlliTEhVeFRhMAoNCgtxcGRVTHNDTGl1MAoNCgs4T2ZKcVNyMVgyMAoNCgtMZE9DS2F5czdUTQoNCgszRmtJNFdRVS1kVQoNCgtpeWhxRlFhMGpmOBAEGDdIAWgB\', \'loggingContext\': {\'vssLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}, \'qoeLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}}, \'ustreamerConfig\': \'CAwSGG1MdndaZU9qYzlpR3pxNnFMMkxGS1Q0PQ==\'}}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuNavigationItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Send feedback\'}]}, \'icon\': {\'iconType\': \'FEEDBACK\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CI0EEIf2BBgEIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'ignoreNavigation\': True}}, \'userFeedbackEndpoint\': {\'additionalDatas\': [{\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'video_id\', \'value\': \'JLZqv4kMBO0\'}}, {\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'lockup\', \'value\': \'shelf\'}}]}}, \'trackingParams\': \'CI0EEIf2BBgEIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Send feedback\'}}}}], \'trackingParams\': \'CI0EEIf2BBgEIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'More actions\'}}}}, \'trackingParams\': \'CI0EEIf2BBgEIhMIhrG-6KPDhwMVgovYBR0yWgBVQO2JsMj415rbJA==\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Part 99 - 2 Din Late Hoga | Kaamwali Bai | #Shorts | Shorts Break \xc3\xa2\\x80\\x93 play Short\'}}, \'style\': \'REEL_ITEM_STYLE_AVATAR_CIRCLE\', \'videoType\': \'REEL_VIDEO_TYPE_VIDEO\', \'loggingDirectives\': {\'trackingParams\': \'CI0EEIf2BBgEIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'visibility\': {\'types\': \'12\'}, \'enableDisplayloggerExperiment\': True}}}, {\'reelItemRenderer\': {\'videoId\': \'NgdYgScGvPI\', \'headline\': {\'simpleText\': \'Say Bye to Old QR Codes #techtips #tipsandtricks #techno #techiela\'}, \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/NgdYgScGvPI/oardefault.jpg?sqp=-oaymwEkCJUDENAFSFqQAgHyq4qpAxMIARUAAAAAJQAAyEI9AICiQ3gB&rs=AOn4CLAjy8DppAXqnLtbtp2tDHD04Nx16A\', \'width\': 405, \'height\': 720}], \'isOriginalAspectRatio\': True}, \'viewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'5.3 million views\'}}, \'simpleText\': \'5.3M views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CIsEEIf2BBgFIhMIhrG-6KPDhwMVgovYBR0yWgBVWgpGRXRyZW5kaW5nmgEHCLkBEPLwBQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/shorts/NgdYgScGvPI\', \'webPageType\': \'WEB_PAGE_TYPE_SHORTS\', \'rootVe\': 37414}}, \'reelWatchEndpoint\': {\'videoId\': \'NgdYgScGvPI\', \'playerParams\': \'8AEByAO5AbgEOKIGFQEBMtwSavGklZAEFV0OLGK68E_Lfw%3D%3D\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/NgdYgScGvPI/frame0.jpg\', \'width\': 1080, \'height\': 1920}], \'isOriginalAspectRatio\': True}, \'overlay\': {\'reelPlayerOverlayRenderer\': {\'style\': \'REEL_PLAYER_OVERLAY_STYLE_SHORTS\', \'trackingParams\': \'CIwEELC1BCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'reelPlayerNavigationModel\': \'REEL_PLAYER_NAVIGATION_MODEL_UNSPECIFIED\'}}, \'params\': \'CDcwAg%3D%3D\', \'sequenceProvider\': \'REEL_WATCH_SEQUENCE_PROVIDER_RPC\', \'sequenceParams\': \'CgtOZ2RZZ1NjR3ZQSSrlAQoNCgt5U2VUOTlMXzBDcwoNCgs2bXhUbUpWMW5EawoNCgtNNnR2MS00dVMwNAoNCgtNdlB5d3FWMGF1QQoNCgtKTFpxdjRrTUJPMAoNCgtOZ2RZZ1NjR3ZQSQoNCgthVDhrNDhMajd3ZwoNCgs2LTZkNHFNeHFyYwoNCgt3ck9mSHFheFlpRQoNCgswYlliTEhVeFRhMAoNCgtxcGRVTHNDTGl1MAoNCgs4T2ZKcVNyMVgyMAoNCgtMZE9DS2F5czdUTQoNCgszRmtJNFdRVS1kVQoNCgtpeWhxRlFhMGpmOBAFGDdIAWgB\', \'loggingContext\': {\'vssLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}, \'qoeLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}}, \'ustreamerConfig\': \'CAwSGG1MdndaZU9qYzlpR3pxNnFMMkxGS1Q0PQ==\'}}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuNavigationItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Send feedback\'}]}, \'icon\': {\'iconType\': \'FEEDBACK\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CIsEEIf2BBgFIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'ignoreNavigation\': True}}, \'userFeedbackEndpoint\': {\'additionalDatas\': [{\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'video_id\', \'value\': \'NgdYgScGvPI\'}}, {\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'lockup\', \'value\': \'shelf\'}}]}}, \'trackingParams\': \'CIsEEIf2BBgFIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Send feedback\'}}}}], \'trackingParams\': \'CIsEEIf2BBgFIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'More actions\'}}}}, \'trackingParams\': \'CIsEEIf2BBgFIhMIhrG-6KPDhwMVgovYBR0yWgBVQPL5mriSkNaDNg==\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Say Bye to Old QR Codes #techtips #tipsandtricks #techno #techiela \xc3\xa2\\x80\\x93 play Short\'}}, \'style\': \'REEL_ITEM_STYLE_AVATAR_CIRCLE\', \'videoType\': \'REEL_VIDEO_TYPE_VIDEO\', \'loggingDirectives\': {\'trackingParams\': \'CIsEEIf2BBgFIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'visibility\': {\'types\': \'12\'}, \'enableDisplayloggerExperiment\': True}}}, {\'reelItemRenderer\': {\'videoId\': \'aT8k48Lj7wg\', \'headline\': {\'simpleText\': \'soap or ice cream? \xc3\xb0\\x9f\\x98\\x82\'}, \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/aT8k48Lj7wg/oar2.jpg?sqp=-oaymwEkCJUDENAFSFqQAgHyq4qpAxMIARUAAAAAJQAAyEI9AICiQ3gB&rs=AOn4CLDc0DZnXsgfAuyKK57-c31xgTzofw\', \'width\': 405, \'height\': 720}], \'isOriginalAspectRatio\': True}, \'viewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'2.7 million views\'}}, \'simpleText\': \'2.7M views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CIkEEIf2BBgGIhMIhrG-6KPDhwMVgovYBR0yWgBVWgpGRXRyZW5kaW5nmgEHCLkBEPLwBQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/shorts/aT8k48Lj7wg\', \'webPageType\': \'WEB_PAGE_TYPE_SHORTS\', \'rootVe\': 37414}}, \'reelWatchEndpoint\': {\'videoId\': \'aT8k48Lj7wg\', \'playerParams\': \'8AEByAO5AbgEOKIGFQEBMtwSLxUoPvXkeg1Vqb1WAEpWQA%3D%3D\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/aT8k48Lj7wg/frame0.jpg\', \'width\': 1080, \'height\': 1920}], \'isOriginalAspectRatio\': True}, \'overlay\': {\'reelPlayerOverlayRenderer\': {\'style\': \'REEL_PLAYER_OVERLAY_STYLE_SHORTS\', \'trackingParams\': \'CIoEELC1BCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'reelPlayerNavigationModel\': \'REEL_PLAYER_NAVIGATION_MODEL_UNSPECIFIED\'}}, \'params\': \'CDcwAg%3D%3D\', \'sequenceProvider\': \'REEL_WATCH_SEQUENCE_PROVIDER_RPC\', \'sequenceParams\': \'CgthVDhrNDhMajd3ZyrlAQoNCgt5U2VUOTlMXzBDcwoNCgs2bXhUbUpWMW5EawoNCgtNNnR2MS00dVMwNAoNCgtNdlB5d3FWMGF1QQoNCgtKTFpxdjRrTUJPMAoNCgtOZ2RZZ1NjR3ZQSQoNCgthVDhrNDhMajd3ZwoNCgs2LTZkNHFNeHFyYwoNCgt3ck9mSHFheFlpRQoNCgswYlliTEhVeFRhMAoNCgtxcGRVTHNDTGl1MAoNCgs4T2ZKcVNyMVgyMAoNCgtMZE9DS2F5czdUTQoNCgszRmtJNFdRVS1kVQoNCgtpeWhxRlFhMGpmOBAGGDdIAWgB\', \'loggingContext\': {\'vssLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}, \'qoeLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}}, \'ustreamerConfig\': \'CAwSGG1MdndaZU9qYzlpR3pxNnFMMkxGS1Q0PQ==\'}}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuNavigationItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Send feedback\'}]}, \'icon\': {\'iconType\': \'FEEDBACK\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CIkEEIf2BBgGIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'ignoreNavigation\': True}}, \'userFeedbackEndpoint\': {\'additionalDatas\': [{\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'video_id\', \'value\': \'aT8k48Lj7wg\'}}, {\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'lockup\', \'value\': \'shelf\'}}]}}, \'trackingParams\': \'CIkEEIf2BBgGIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Send feedback\'}}}}], \'trackingParams\': \'CIkEEIf2BBgGIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'More actions\'}}}}, \'trackingParams\': \'CIkEEIf2BBgGIhMIhrG-6KPDhwMVgovYBR0yWgBVQIjej5e8nMmfaQ==\', \'accessibility\': {\'accessibilityData\': {\'label\': \'soap or ice cream? \xc3\xb0\\x9f\\x98\\x82 \xc3\xa2\\x80\\x93 play Short\'}}, \'style\': \'REEL_ITEM_STYLE_AVATAR_CIRCLE\', \'videoType\': \'REEL_VIDEO_TYPE_VIDEO\', \'loggingDirectives\': {\'trackingParams\': \'CIkEEIf2BBgGIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'visibility\': {\'types\': \'12\'}, \'enableDisplayloggerExperiment\': True}}}, {\'reelItemRenderer\': {\'videoId\': \'6-6d4qMxqrc\', \'headline\': {\'simpleText\': \'Kis kisne kiya hai sach sach batao\xc3\xb0\\x9f\\x98\\x82 #comedy #schooldays #tiffin #childhood #memories #funny #memes\'}, \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/6-6d4qMxqrc/oardefault.jpg?sqp=-oaymwEkCJUDENAFSFqQAgHyq4qpAxMIARUAAAAAJQAAyEI9AICiQ3gB&rs=AOn4CLAPSErijSM0UjLb2-k-UfNWCS0hNg\', \'width\': 405, \'height\': 720}], \'isOriginalAspectRatio\': True}, \'viewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'801K views\'}}, \'simpleText\': \'801K views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CIcEEIf2BBgHIhMIhrG-6KPDhwMVgovYBR0yWgBVWgpGRXRyZW5kaW5nmgEHCLkBEPLwBQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/shorts/6-6d4qMxqrc\', \'webPageType\': \'WEB_PAGE_TYPE_SHORTS\', \'rootVe\': 37414}}, \'reelWatchEndpoint\': {\'videoId\': \'6-6d4qMxqrc\', \'playerParams\': \'8AEByAO5AbgEOKIGFQEBMtwSKggZubuS2ihw_yS6-CHXBg%3D%3D\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/6-6d4qMxqrc/frame0.jpg\', \'width\': 1080, \'height\': 1920}], \'isOriginalAspectRatio\': True}, \'overlay\': {\'reelPlayerOverlayRenderer\': {\'style\': \'REEL_PLAYER_OVERLAY_STYLE_SHORTS\', \'trackingParams\': \'CIgEELC1BCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'reelPlayerNavigationModel\': \'REEL_PLAYER_NAVIGATION_MODEL_UNSPECIFIED\'}}, \'params\': \'CDcwAg%3D%3D\', \'sequenceProvider\': \'REEL_WATCH_SEQUENCE_PROVIDER_RPC\', \'sequenceParams\': \'Cgs2LTZkNHFNeHFyYyrlAQoNCgt5U2VUOTlMXzBDcwoNCgs2bXhUbUpWMW5EawoNCgtNNnR2MS00dVMwNAoNCgtNdlB5d3FWMGF1QQoNCgtKTFpxdjRrTUJPMAoNCgtOZ2RZZ1NjR3ZQSQoNCgthVDhrNDhMajd3ZwoNCgs2LTZkNHFNeHFyYwoNCgt3ck9mSHFheFlpRQoNCgswYlliTEhVeFRhMAoNCgtxcGRVTHNDTGl1MAoNCgs4T2ZKcVNyMVgyMAoNCgtMZE9DS2F5czdUTQoNCgszRmtJNFdRVS1kVQoNCgtpeWhxRlFhMGpmOBAHGDdIAWgB\', \'loggingContext\': {\'vssLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}, \'qoeLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}}, \'ustreamerConfig\': \'CAwSGG1MdndaZU9qYzlpR3pxNnFMMkxGS1Q0PQ==\'}}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuNavigationItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Send feedback\'}]}, \'icon\': {\'iconType\': \'FEEDBACK\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CIcEEIf2BBgHIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'ignoreNavigation\': True}}, \'userFeedbackEndpoint\': {\'additionalDatas\': [{\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'video_id\', \'value\': \'6-6d4qMxqrc\'}}, {\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'lockup\', \'value\': \'shelf\'}}]}}, \'trackingParams\': \'CIcEEIf2BBgHIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Send feedback\'}}}}], \'trackingParams\': \'CIcEEIf2BBgHIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'More actions\'}}}}, \'trackingParams\': \'CIcEEIf2BBgHIhMIhrG-6KPDhwMVgovYBR0yWgBVQLfVxpmqvKf36wE=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Kis kisne kiya hai sach sach batao\xc3\xb0\\x9f\\x98\\x82 #comedy #schooldays #tiffin #childhood #memories #funny #memes \xc3\xa2\\x80\\x93 play Short\'}}, \'style\': \'REEL_ITEM_STYLE_AVATAR_CIRCLE\', \'videoType\': \'REEL_VIDEO_TYPE_VIDEO\', \'loggingDirectives\': {\'trackingParams\': \'CIcEEIf2BBgHIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'visibility\': {\'types\': \'12\'}, \'enableDisplayloggerExperiment\': True}}}, {\'reelItemRenderer\': {\'videoId\': \'wrOfHqaxYiE\', \'headline\': {\'simpleText\': \'My fav women ft my Fav Song \xc3\xa2\\x99\xc2\xa5\xc3\xaf\xc2\xb8\\x8f\xc3\xb0\\x9f\\x99\\x88\xc3\xb0\\x9f\\x98\\x8d #contentcreator #love #mom\'}, \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/wrOfHqaxYiE/oardefault.jpg?sqp=-oaymwEkCJUDENAFSFqQAgHyq4qpAxMIARUAAAAAJQAAyEI9AICiQ3gB&rs=AOn4CLCCVxfatS1N1kB4vIF0W1dbCsqwIA\', \'width\': 405, \'height\': 720}], \'isOriginalAspectRatio\': True}, \'viewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3 million views\'}}, \'simpleText\': \'3M views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CIUEEIf2BBgIIhMIhrG-6KPDhwMVgovYBR0yWgBVWgpGRXRyZW5kaW5nmgEHCLkBEPLwBQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/shorts/wrOfHqaxYiE\', \'webPageType\': \'WEB_PAGE_TYPE_SHORTS\', \'rootVe\': 37414}}, \'reelWatchEndpoint\': {\'videoId\': \'wrOfHqaxYiE\', \'playerParams\': \'8AEByAO5AbgEOKIGFQEBMtwSKu2S3xYXRWsNdPgbX4Hkxg%3D%3D\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/wrOfHqaxYiE/frame0.jpg\', \'width\': 1080, \'height\': 1920}], \'isOriginalAspectRatio\': True}, \'overlay\': {\'reelPlayerOverlayRenderer\': {\'style\': \'REEL_PLAYER_OVERLAY_STYLE_SHORTS\', \'trackingParams\': \'CIYEELC1BCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'reelPlayerNavigationModel\': \'REEL_PLAYER_NAVIGATION_MODEL_UNSPECIFIED\'}}, \'params\': \'CDcwAg%3D%3D\', \'sequenceProvider\': \'REEL_WATCH_SEQUENCE_PROVIDER_RPC\', \'sequenceParams\': \'Cgt3ck9mSHFheFlpRSrlAQoNCgt5U2VUOTlMXzBDcwoNCgs2bXhUbUpWMW5EawoNCgtNNnR2MS00dVMwNAoNCgtNdlB5d3FWMGF1QQoNCgtKTFpxdjRrTUJPMAoNCgtOZ2RZZ1NjR3ZQSQoNCgthVDhrNDhMajd3ZwoNCgs2LTZkNHFNeHFyYwoNCgt3ck9mSHFheFlpRQoNCgswYlliTEhVeFRhMAoNCgtxcGRVTHNDTGl1MAoNCgs4T2ZKcVNyMVgyMAoNCgtMZE9DS2F5czdUTQoNCgszRmtJNFdRVS1kVQoNCgtpeWhxRlFhMGpmOBAIGDdIAWgB\', \'loggingContext\': {\'vssLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}, \'qoeLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}}, \'ustreamerConfig\': \'CAwSGG1MdndaZU9qYzlpR3pxNnFMMkxGS1Q0PQ==\'}}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuNavigationItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Send feedback\'}]}, \'icon\': {\'iconType\': \'FEEDBACK\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CIUEEIf2BBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'ignoreNavigation\': True}}, \'userFeedbackEndpoint\': {\'additionalDatas\': [{\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'video_id\', \'value\': \'wrOfHqaxYiE\'}}, {\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'lockup\', \'value\': \'shelf\'}}]}}, \'trackingParams\': \'CIUEEIf2BBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Send feedback\'}}}}], \'trackingParams\': \'CIUEEIf2BBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'More actions\'}}}}, \'trackingParams\': \'CIUEEIf2BBgIIhMIhrG-6KPDhwMVgovYBR0yWgBVQKHExbXq4-fZwgE=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'My fav women ft my Fav Song \xc3\xa2\\x99\xc2\xa5\xc3\xaf\xc2\xb8\\x8f\xc3\xb0\\x9f\\x99\\x88\xc3\xb0\\x9f\\x98\\x8d #contentcreator #love #mom \xc3\xa2\\x80\\x93 play Short\'}}, \'style\': \'REEL_ITEM_STYLE_AVATAR_CIRCLE\', \'videoType\': \'REEL_VIDEO_TYPE_VIDEO\', \'loggingDirectives\': {\'trackingParams\': \'CIUEEIf2BBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'visibility\': {\'types\': \'12\'}, \'enableDisplayloggerExperiment\': True}}}, {\'reelItemRenderer\': {\'videoId\': \'0bYbLHUxTa0\', \'headline\': {\'simpleText\': \'Friend everyone deserves | Princy Parikh #janhvikapoor #whatyaaprincy #photo #friends\'}, \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/0bYbLHUxTa0/oar2.jpg?sqp=-oaymwEkCJUDENAFSFqQAgHyq4qpAxMIARUAAAAAJQAAyEI9AICiQ3gB&rs=AOn4CLBD6ENg05bM505SNDxZ45RjM7TqHQ\', \'width\': 405, \'height\': 720}], \'isOriginalAspectRatio\': True}, \'viewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'926K views\'}}, \'simpleText\': \'926K views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CIMEEIf2BBgJIhMIhrG-6KPDhwMVgovYBR0yWgBVWgpGRXRyZW5kaW5nmgEHCLkBEPLwBQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/shorts/0bYbLHUxTa0\', \'webPageType\': \'WEB_PAGE_TYPE_SHORTS\', \'rootVe\': 37414}}, \'reelWatchEndpoint\': {\'videoId\': \'0bYbLHUxTa0\', \'playerParams\': \'8AEByAO5AbgEOKIGFQEBMtwSMV7KdlrQTG9Cmx-FeK-n6Q%3D%3D\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/0bYbLHUxTa0/frame0.jpg\', \'width\': 1080, \'height\': 1920}], \'isOriginalAspectRatio\': True}, \'overlay\': {\'reelPlayerOverlayRenderer\': {\'style\': \'REEL_PLAYER_OVERLAY_STYLE_SHORTS\', \'trackingParams\': \'CIQEELC1BCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'reelPlayerNavigationModel\': \'REEL_PLAYER_NAVIGATION_MODEL_UNSPECIFIED\'}}, \'params\': \'CDcwAg%3D%3D\', \'sequenceProvider\': \'REEL_WATCH_SEQUENCE_PROVIDER_RPC\', \'sequenceParams\': \'CgswYlliTEhVeFRhMCrlAQoNCgt5U2VUOTlMXzBDcwoNCgs2bXhUbUpWMW5EawoNCgtNNnR2MS00dVMwNAoNCgtNdlB5d3FWMGF1QQoNCgtKTFpxdjRrTUJPMAoNCgtOZ2RZZ1NjR3ZQSQoNCgthVDhrNDhMajd3ZwoNCgs2LTZkNHFNeHFyYwoNCgt3ck9mSHFheFlpRQoNCgswYlliTEhVeFRhMAoNCgtxcGRVTHNDTGl1MAoNCgs4T2ZKcVNyMVgyMAoNCgtMZE9DS2F5czdUTQoNCgszRmtJNFdRVS1kVQoNCgtpeWhxRlFhMGpmOBAJGDdIAWgB\', \'loggingContext\': {\'vssLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}, \'qoeLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}}, \'ustreamerConfig\': \'CAwSGG1MdndaZU9qYzlpR3pxNnFMMkxGS1Q0PQ==\'}}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuNavigationItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Send feedback\'}]}, \'icon\': {\'iconType\': \'FEEDBACK\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CIMEEIf2BBgJIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'ignoreNavigation\': True}}, \'userFeedbackEndpoint\': {\'additionalDatas\': [{\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'video_id\', \'value\': \'0bYbLHUxTa0\'}}, {\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'lockup\', \'value\': \'shelf\'}}]}}, \'trackingParams\': \'CIMEEIf2BBgJIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Send feedback\'}}}}], \'trackingParams\': \'CIMEEIf2BBgJIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'More actions\'}}}}, \'trackingParams\': \'CIMEEIf2BBgJIhMIhrG-6KPDhwMVgovYBR0yWgBVQK2bxanH5Ybb0QE=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Friend everyone deserves | Princy Parikh #janhvikapoor #whatyaaprincy #photo #friends \xc3\xa2\\x80\\x93 play Short\'}}, \'style\': \'REEL_ITEM_STYLE_AVATAR_CIRCLE\', \'videoType\': \'REEL_VIDEO_TYPE_VIDEO\', \'loggingDirectives\': {\'trackingParams\': \'CIMEEIf2BBgJIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'visibility\': {\'types\': \'12\'}, \'enableDisplayloggerExperiment\': True}}}, {\'reelItemRenderer\': {\'videoId\': \'qpdULsCLiu0\', \'headline\': {\'simpleText\': \'Evolution of Toothbrushes !?\'}, \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/qpdULsCLiu0/oardefault.jpg?sqp=-oaymwEkCJUDENAFSFqQAgHyq4qpAxMIARUAAAAAJQAAyEI9AICiQ3gB&rs=AOn4CLDJzDWviiV5CSp1VE_AKQP2L9EDFg\', \'width\': 405, \'height\': 720}], \'isOriginalAspectRatio\': True}, \'viewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'4.6 million views\'}}, \'simpleText\': \'4.6M views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CIEEEIf2BBgKIhMIhrG-6KPDhwMVgovYBR0yWgBVWgpGRXRyZW5kaW5nmgEHCLkBEPLwBQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/shorts/qpdULsCLiu0\', \'webPageType\': \'WEB_PAGE_TYPE_SHORTS\', \'rootVe\': 37414}}, \'reelWatchEndpoint\': {\'videoId\': \'qpdULsCLiu0\', \'playerParams\': \'8AEByAO5AbgEOKIGFQEBMtwSKHaojd8ubSQ6HbOF_UM13Q%3D%3D\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/qpdULsCLiu0/frame0.jpg\', \'width\': 1080, \'height\': 1920}], \'isOriginalAspectRatio\': True}, \'overlay\': {\'reelPlayerOverlayRenderer\': {\'style\': \'REEL_PLAYER_OVERLAY_STYLE_SHORTS\', \'trackingParams\': \'CIIEELC1BCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'reelPlayerNavigationModel\': \'REEL_PLAYER_NAVIGATION_MODEL_UNSPECIFIED\'}}, \'params\': \'CDcwAg%3D%3D\', \'sequenceProvider\': \'REEL_WATCH_SEQUENCE_PROVIDER_RPC\', \'sequenceParams\': \'CgtxcGRVTHNDTGl1MCrlAQoNCgt5U2VUOTlMXzBDcwoNCgs2bXhUbUpWMW5EawoNCgtNNnR2MS00dVMwNAoNCgtNdlB5d3FWMGF1QQoNCgtKTFpxdjRrTUJPMAoNCgtOZ2RZZ1NjR3ZQSQoNCgthVDhrNDhMajd3ZwoNCgs2LTZkNHFNeHFyYwoNCgt3ck9mSHFheFlpRQoNCgswYlliTEhVeFRhMAoNCgtxcGRVTHNDTGl1MAoNCgs4T2ZKcVNyMVgyMAoNCgtMZE9DS2F5czdUTQoNCgszRmtJNFdRVS1kVQoNCgtpeWhxRlFhMGpmOBAKGDdIAWgB\', \'loggingContext\': {\'vssLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}, \'qoeLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}}, \'ustreamerConfig\': \'CAwSGG1MdndaZU9qYzlpR3pxNnFMMkxGS1Q0PQ==\'}}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuNavigationItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Send feedback\'}]}, \'icon\': {\'iconType\': \'FEEDBACK\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CIEEEIf2BBgKIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'ignoreNavigation\': True}}, \'userFeedbackEndpoint\': {\'additionalDatas\': [{\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'video_id\', \'value\': \'qpdULsCLiu0\'}}, {\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'lockup\', \'value\': \'shelf\'}}]}}, \'trackingParams\': \'CIEEEIf2BBgKIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Send feedback\'}}}}], \'trackingParams\': \'CIEEEIf2BBgKIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'More actions\'}}}}, \'trackingParams\': \'CIEEEIf2BBgKIhMIhrG-6KPDhwMVgovYBR0yWgBVQO2VroTshdXLqgE=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Evolution of Toothbrushes !? \xc3\xa2\\x80\\x93 play Short\'}}, \'style\': \'REEL_ITEM_STYLE_AVATAR_CIRCLE\', \'videoType\': \'REEL_VIDEO_TYPE_VIDEO\', \'loggingDirectives\': {\'trackingParams\': \'CIEEEIf2BBgKIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'visibility\': {\'types\': \'12\'}, \'enableDisplayloggerExperiment\': True}}}, {\'reelItemRenderer\': {\'videoId\': \'8OfJqSr1X20\', \'headline\': {\'simpleText\': \'Tauba Tauba Twist With Family\xc3\xb0\\x9f\\x98\\x8d#zidaanshahidaly #family #shorts\'}, \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/8OfJqSr1X20/oardefault.jpg?sqp=-oaymwEkCJUDENAFSFqQAgHyq4qpAxMIARUAAAAAJQAAyEI9AICiQ3gB&rs=AOn4CLDBe5qK9Sjrnj-KBpJ0x-jawq828w\', \'width\': 405, \'height\': 720}], \'isOriginalAspectRatio\': True}, \'viewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'1 million views\'}}, \'simpleText\': \'1M views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CP8DEIf2BBgLIhMIhrG-6KPDhwMVgovYBR0yWgBVWgpGRXRyZW5kaW5nmgEHCLkBEPLwBQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/shorts/8OfJqSr1X20\', \'webPageType\': \'WEB_PAGE_TYPE_SHORTS\', \'rootVe\': 37414}}, \'reelWatchEndpoint\': {\'videoId\': \'8OfJqSr1X20\', \'playerParams\': \'8AEByAO5AbgEOKIGFQEBMtwS66MkuNEqnj8iGf-SyzYcEQ%3D%3D\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/8OfJqSr1X20/frame0.jpg\', \'width\': 1080, \'height\': 1920}], \'isOriginalAspectRatio\': True}, \'overlay\': {\'reelPlayerOverlayRenderer\': {\'style\': \'REEL_PLAYER_OVERLAY_STYLE_SHORTS\', \'trackingParams\': \'CIAEELC1BCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'reelPlayerNavigationModel\': \'REEL_PLAYER_NAVIGATION_MODEL_UNSPECIFIED\'}}, \'params\': \'CDcwAg%3D%3D\', \'sequenceProvider\': \'REEL_WATCH_SEQUENCE_PROVIDER_RPC\', \'sequenceParams\': \'Cgs4T2ZKcVNyMVgyMCrlAQoNCgt5U2VUOTlMXzBDcwoNCgs2bXhUbUpWMW5EawoNCgtNNnR2MS00dVMwNAoNCgtNdlB5d3FWMGF1QQoNCgtKTFpxdjRrTUJPMAoNCgtOZ2RZZ1NjR3ZQSQoNCgthVDhrNDhMajd3ZwoNCgs2LTZkNHFNeHFyYwoNCgt3ck9mSHFheFlpRQoNCgswYlliTEhVeFRhMAoNCgtxcGRVTHNDTGl1MAoNCgs4T2ZKcVNyMVgyMAoNCgtMZE9DS2F5czdUTQoNCgszRmtJNFdRVS1kVQoNCgtpeWhxRlFhMGpmOBALGDdIAWgB\', \'loggingContext\': {\'vssLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}, \'qoeLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}}, \'ustreamerConfig\': \'CAwSGG1MdndaZU9qYzlpR3pxNnFMMkxGS1Q0PQ==\'}}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuNavigationItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Send feedback\'}]}, \'icon\': {\'iconType\': \'FEEDBACK\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CP8DEIf2BBgLIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'ignoreNavigation\': True}}, \'userFeedbackEndpoint\': {\'additionalDatas\': [{\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'video_id\', \'value\': \'8OfJqSr1X20\'}}, {\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'lockup\', \'value\': \'shelf\'}}]}}, \'trackingParams\': \'CP8DEIf2BBgLIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Send feedback\'}}}}], \'trackingParams\': \'CP8DEIf2BBgLIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'More actions\'}}}}, \'trackingParams\': \'CP8DEIf2BBgLIhMIhrG-6KPDhwMVgovYBR0yWgBVQO2-1deStfLz8AE=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Tauba Tauba Twist With Family\xc3\xb0\\x9f\\x98\\x8d#zidaanshahidaly #family #shorts \xc3\xa2\\x80\\x93 play Short\'}}, \'style\': \'REEL_ITEM_STYLE_AVATAR_CIRCLE\', \'videoType\': \'REEL_VIDEO_TYPE_VIDEO\', \'loggingDirectives\': {\'trackingParams\': \'CP8DEIf2BBgLIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'visibility\': {\'types\': \'12\'}, \'enableDisplayloggerExperiment\': True}}}, {\'reelItemRenderer\': {\'videoId\': \'LdOCKays7TM\', \'headline\': {\'simpleText\': \'Tauba Tauba! | Free Fire MAX\'}, \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/LdOCKays7TM/oar2.jpg?sqp=-oaymwEkCJUDENAFSFqQAgHyq4qpAxMIARUAAAAAJQAAyEI9AICiQ3gB&rs=AOn4CLBj1hoCt_z_mvyrXBmrNeSFFmAVCA\', \'width\': 405, \'height\': 720}], \'isOriginalAspectRatio\': True}, \'viewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'1.5 million views\'}}, \'simpleText\': \'1.5M views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CP0DEIf2BBgMIhMIhrG-6KPDhwMVgovYBR0yWgBVWgpGRXRyZW5kaW5nmgEHCLkBEPLwBQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/shorts/LdOCKays7TM\', \'webPageType\': \'WEB_PAGE_TYPE_SHORTS\', \'rootVe\': 37414}}, \'reelWatchEndpoint\': {\'videoId\': \'LdOCKays7TM\', \'playerParams\': \'8AEByAO5AbgEOKIGFQEBMtwSqV7TvqkCuyTlA233cRWYXg%3D%3D\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/LdOCKays7TM/frame0.jpg\', \'width\': 1080, \'height\': 1920}], \'isOriginalAspectRatio\': True}, \'overlay\': {\'reelPlayerOverlayRenderer\': {\'style\': \'REEL_PLAYER_OVERLAY_STYLE_SHORTS\', \'trackingParams\': \'CP4DELC1BCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'reelPlayerNavigationModel\': \'REEL_PLAYER_NAVIGATION_MODEL_UNSPECIFIED\'}}, \'params\': \'CDcwAg%3D%3D\', \'sequenceProvider\': \'REEL_WATCH_SEQUENCE_PROVIDER_RPC\', \'sequenceParams\': \'CgtMZE9DS2F5czdUTSrlAQoNCgt5U2VUOTlMXzBDcwoNCgs2bXhUbUpWMW5EawoNCgtNNnR2MS00dVMwNAoNCgtNdlB5d3FWMGF1QQoNCgtKTFpxdjRrTUJPMAoNCgtOZ2RZZ1NjR3ZQSQoNCgthVDhrNDhMajd3ZwoNCgs2LTZkNHFNeHFyYwoNCgt3ck9mSHFheFlpRQoNCgswYlliTEhVeFRhMAoNCgtxcGRVTHNDTGl1MAoNCgs4T2ZKcVNyMVgyMAoNCgtMZE9DS2F5czdUTQoNCgszRmtJNFdRVS1kVQoNCgtpeWhxRlFhMGpmOBAMGDdIAWgB\', \'loggingContext\': {\'vssLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}, \'qoeLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}}, \'ustreamerConfig\': \'CAwSGG1MdndaZU9qYzlpR3pxNnFMMkxGS1Q0PQ==\'}}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuNavigationItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Send feedback\'}]}, \'icon\': {\'iconType\': \'FEEDBACK\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CP0DEIf2BBgMIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'ignoreNavigation\': True}}, \'userFeedbackEndpoint\': {\'additionalDatas\': [{\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'video_id\', \'value\': \'LdOCKays7TM\'}}, {\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'lockup\', \'value\': \'shelf\'}}]}}, \'trackingParams\': \'CP0DEIf2BBgMIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Send feedback\'}}}}], \'trackingParams\': \'CP0DEIf2BBgMIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'More actions\'}}}}, \'trackingParams\': \'CP0DEIf2BBgMIhMIhrG-6KPDhwMVgovYBR0yWgBVQLPas-WaxeDpLQ==\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Tauba Tauba! | Free Fire MAX \xc3\xa2\\x80\\x93 play Short\'}}, \'style\': \'REEL_ITEM_STYLE_AVATAR_CIRCLE\', \'videoType\': \'REEL_VIDEO_TYPE_VIDEO\', \'loggingDirectives\': {\'trackingParams\': \'CP0DEIf2BBgMIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'visibility\': {\'types\': \'12\'}, \'enableDisplayloggerExperiment\': True}}}, {\'reelItemRenderer\': {\'videoId\': \'3FkI4WQU-dU\', \'headline\': {\'simpleText\': \'A Day at @Brotomotiv \xc3\xb0\\x9f\xc2\xa4\xc2\xa9#brogang #brotomotiv #dailyvlog #cars #vlogs\'}, \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/3FkI4WQU-dU/oar2.jpg?sqp=-oaymwEkCJUDENAFSFqQAgHyq4qpAxMIARUAAAAAJQAAyEI9AICiQ3gB&rs=AOn4CLD-7S_z_ijWraPHkxDj80sZ99ZPVw\', \'width\': 405, \'height\': 720}], \'isOriginalAspectRatio\': True}, \'viewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'703K views\'}}, \'simpleText\': \'703K views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CPsDEIf2BBgNIhMIhrG-6KPDhwMVgovYBR0yWgBVWgpGRXRyZW5kaW5nmgEHCLkBEPLwBQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/shorts/3FkI4WQU-dU\', \'webPageType\': \'WEB_PAGE_TYPE_SHORTS\', \'rootVe\': 37414}}, \'reelWatchEndpoint\': {\'videoId\': \'3FkI4WQU-dU\', \'playerParams\': \'8AEByAO5AbgEOKIGFQEBMtwSKU6Gbja439v7lt_q5mmvrg%3D%3D\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/3FkI4WQU-dU/frame0.jpg\', \'width\': 1080, \'height\': 1920}], \'isOriginalAspectRatio\': True}, \'overlay\': {\'reelPlayerOverlayRenderer\': {\'style\': \'REEL_PLAYER_OVERLAY_STYLE_SHORTS\', \'trackingParams\': \'CPwDELC1BCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'reelPlayerNavigationModel\': \'REEL_PLAYER_NAVIGATION_MODEL_UNSPECIFIED\'}}, \'params\': \'CDcwAg%3D%3D\', \'sequenceProvider\': \'REEL_WATCH_SEQUENCE_PROVIDER_RPC\', \'sequenceParams\': \'CgszRmtJNFdRVS1kVSrlAQoNCgt5U2VUOTlMXzBDcwoNCgs2bXhUbUpWMW5EawoNCgtNNnR2MS00dVMwNAoNCgtNdlB5d3FWMGF1QQoNCgtKTFpxdjRrTUJPMAoNCgtOZ2RZZ1NjR3ZQSQoNCgthVDhrNDhMajd3ZwoNCgs2LTZkNHFNeHFyYwoNCgt3ck9mSHFheFlpRQoNCgswYlliTEhVeFRhMAoNCgtxcGRVTHNDTGl1MAoNCgs4T2ZKcVNyMVgyMAoNCgtMZE9DS2F5czdUTQoNCgszRmtJNFdRVS1kVQoNCgtpeWhxRlFhMGpmOBANGDdIAWgB\', \'loggingContext\': {\'vssLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}, \'qoeLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}}, \'ustreamerConfig\': \'CAwSGG1MdndaZU9qYzlpR3pxNnFMMkxGS1Q0PQ==\'}}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuNavigationItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Send feedback\'}]}, \'icon\': {\'iconType\': \'FEEDBACK\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CPsDEIf2BBgNIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'ignoreNavigation\': True}}, \'userFeedbackEndpoint\': {\'additionalDatas\': [{\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'video_id\', \'value\': \'3FkI4WQU-dU\'}}, {\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'lockup\', \'value\': \'shelf\'}}]}}, \'trackingParams\': \'CPsDEIf2BBgNIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Send feedback\'}}}}], \'trackingParams\': \'CPsDEIf2BBgNIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'More actions\'}}}}, \'trackingParams\': \'CPsDEIf2BBgNIhMIhrG-6KPDhwMVgovYBR0yWgBVQNXz06CWnMKs3AE=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'A Day at @Brotomotiv \xc3\xb0\\x9f\xc2\xa4\xc2\xa9#brogang #brotomotiv #dailyvlog #cars #vlogs \xc3\xa2\\x80\\x93 play Short\'}}, \'style\': \'REEL_ITEM_STYLE_AVATAR_CIRCLE\', \'videoType\': \'REEL_VIDEO_TYPE_VIDEO\', \'loggingDirectives\': {\'trackingParams\': \'CPsDEIf2BBgNIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'visibility\': {\'types\': \'12\'}, \'enableDisplayloggerExperiment\': True}}}, {\'reelItemRenderer\': {\'videoId\': \'iyhqFQa0jf8\', \'headline\': {\'simpleText\': \'Time never passes when you want it to pass\xc3\xb0\\x9f\\x98\\xad | Raj Grover | #shorts\'}, \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/iyhqFQa0jf8/oardefault.jpg?sqp=-oaymwEkCJUDENAFSFqQAgHyq4qpAxMIARUAAAAAJQAAyEI9AICiQ3gB&rs=AOn4CLBoijB9IWw2A8VKea5o25LfHOtYdQ\', \'width\': 405, \'height\': 720}], \'isOriginalAspectRatio\': True}, \'viewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3.4 million views\'}}, \'simpleText\': \'3.4M views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CPkDEIf2BBgOIhMIhrG-6KPDhwMVgovYBR0yWgBVWgpGRXRyZW5kaW5nmgEHCLkBEPLwBQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/shorts/iyhqFQa0jf8\', \'webPageType\': \'WEB_PAGE_TYPE_SHORTS\', \'rootVe\': 37414}}, \'reelWatchEndpoint\': {\'videoId\': \'iyhqFQa0jf8\', \'playerParams\': \'8AEByAO5AbgEOKIGFQEBMtwSUSvovjMAaIVF_9_6mWJprQ%3D%3D\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/iyhqFQa0jf8/frame0.jpg\', \'width\': 1080, \'height\': 1920}], \'isOriginalAspectRatio\': True}, \'overlay\': {\'reelPlayerOverlayRenderer\': {\'style\': \'REEL_PLAYER_OVERLAY_STYLE_SHORTS\', \'trackingParams\': \'CPoDELC1BCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'reelPlayerNavigationModel\': \'REEL_PLAYER_NAVIGATION_MODEL_UNSPECIFIED\'}}, \'params\': \'CDcwAg%3D%3D\', \'sequenceProvider\': \'REEL_WATCH_SEQUENCE_PROVIDER_RPC\', \'sequenceParams\': \'CgtpeWhxRlFhMGpmOCrlAQoNCgt5U2VUOTlMXzBDcwoNCgs2bXhUbUpWMW5EawoNCgtNNnR2MS00dVMwNAoNCgtNdlB5d3FWMGF1QQoNCgtKTFpxdjRrTUJPMAoNCgtOZ2RZZ1NjR3ZQSQoNCgthVDhrNDhMajd3ZwoNCgs2LTZkNHFNeHFyYwoNCgt3ck9mSHFheFlpRQoNCgswYlliTEhVeFRhMAoNCgtxcGRVTHNDTGl1MAoNCgs4T2ZKcVNyMVgyMAoNCgtMZE9DS2F5czdUTQoNCgszRmtJNFdRVS1kVQoNCgtpeWhxRlFhMGpmOBAOGDdIAWgB\', \'loggingContext\': {\'vssLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}, \'qoeLoggingContext\': {\'serializedContextData\': \'CgIIDA%3D%3D\'}}, \'ustreamerConfig\': \'CAwSGG1MdndaZU9qYzlpR3pxNnFMMkxGS1Q0PQ==\'}}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuNavigationItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Send feedback\'}]}, \'icon\': {\'iconType\': \'FEEDBACK\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CPkDEIf2BBgOIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'ignoreNavigation\': True}}, \'userFeedbackEndpoint\': {\'additionalDatas\': [{\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'video_id\', \'value\': \'iyhqFQa0jf8\'}}, {\'userFeedbackEndpointProductSpecificValueData\': {\'key\': \'lockup\', \'value\': \'shelf\'}}]}}, \'trackingParams\': \'CPkDEIf2BBgOIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Send feedback\'}}}}], \'trackingParams\': \'CPkDEIf2BBgOIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibility\': {\'accessibilityData\': {\'label\': \'More actions\'}}}}, \'trackingParams\': \'CPkDEIf2BBgOIhMIhrG-6KPDhwMVgovYBR0yWgBVQP-b0rXQwpqUiwE=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Time never passes when you want it to pass\xc3\xb0\\x9f\\x98\\xad | Raj Grover | #shorts \xc3\xa2\\x80\\x93 play Short\'}}, \'style\': \'REEL_ITEM_STYLE_AVATAR_CIRCLE\', \'videoType\': \'REEL_VIDEO_TYPE_VIDEO\', \'loggingDirectives\': {\'trackingParams\': \'CPkDEIf2BBgOIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'visibility\': {\'types\': \'12\'}, \'enableDisplayloggerExperiment\': True}}}], \'trackingParams\': \'CPgDEN-DAxgAIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}], \'trackingParams\': \'CPcDELsvGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'itemSectionRenderer\': {\'contents\': [{\'shelfRenderer\': {\'content\': {\'expandedShelfContentsRenderer\': {\'items\': [{\'videoRenderer\': {\'videoId\': \'ATGQdcN4UBs\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/ATGQdcN4UBs/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLAe13fPVVPIycCwKdTdkP3lx8nnbA\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/ATGQdcN4UBs/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBhiomrNQXRFyDIFSZYtkaNVzlTdg\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/ATGQdcN4UBs/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCyfHAtPB3JA7SqnK2RXD9CNq00lQ\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315377, \'section3Color\': 15919847, \'primaryTitleColor\': 1643280, \'secondaryTitleColor\': 8019280, \'section4Color\': 15459037}, \'darkColorPalette\': {\'section2Color\': 3352097, \'section3Color\': 2497817, \'primaryTitleColor\': 16772581, \'secondaryTitleColor\': 13414307, \'section4Color\': 1643280}}, \'title\': {\'runs\': [{\'text\': \'Phir Aayi Hasseen Dillruba | Official Trailer | Taapsee P, Vikrant M, Sunny K, Jimmy S\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Phir Aayi Hasseen Dillruba | Official Trailer | Taapsee P, Vikrant M, Sunny K, Jimmy S by Netflix India 9,701,830 views 17 hours ago 2 minutes, 42 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Dil ke haal se kya pata, kaun bhala, aur kaun bawla? \xc3\xb0\\x9f\\x91\\x80 \xc3\xb0\\x9f\xc2\xa5\\x80\\r\\nPhir Aayi Hasseen Dillruba iss rahasya ko mitane, on 9 August, only on Netflix \xc3\xa2\\x9d\xc2\xa4\xc3\xaf\xc2\xb8\\x8f\\u200d\xc3\xb0\\x9f\\x94\xc2\xa5\\r\\n\\r\\nWatch on Netflix: https://www.netflix...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Netflix India\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CPIDENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@NetflixIndiaOfficial\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCZSNzBgFub_WWil6TOTYwAg\', \'canonicalBaseUrl\': \'/@NetflixIndiaOfficial\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'17 hours ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'2 minutes, 42 seconds\'}}, \'simpleText\': \'2:42\'}, \'viewCountText\': {\'simpleText\': \'9,701,830 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CPIDENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=ATGQdcN4UBs\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'ATGQdcN4UBs\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr5---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=01319075c378501b&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CPIDENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Netflix India\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CPIDENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@NetflixIndiaOfficial\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCZSNzBgFub_WWil6TOTYwAg\', \'canonicalBaseUrl\': \'/@NetflixIndiaOfficial\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Netflix India\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CPIDENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@NetflixIndiaOfficial\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCZSNzBgFub_WWil6TOTYwAg\', \'canonicalBaseUrl\': \'/@NetflixIndiaOfficial\'}}}]}, \'trackingParams\': \'CPIDENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFVAm6Dhm9yO5JgB\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'9.7 million views\'}}, \'simpleText\': \'9.7M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CPYDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CPYDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'ATGQdcN4UBs\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CPYDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'ATGQdcN4UBs\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'ATGQdcN4UBs\']}}]}}, \'trackingParams\': \'CPYDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CPIDENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtBVEdRZGNONFVCcw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CPIDENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CPUDEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CPIDENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CPIDENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/zgMN9BuSQByG1SrpmLwcNB3MQhjDhS_pl9H1h7TaRievMfS4UpU7Z36j77z5_hnIW4N8uFX3NA=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CPIDENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@NetflixIndiaOfficial\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCZSNzBgFub_WWil6TOTYwAg\', \'canonicalBaseUrl\': \'/@NetflixIndiaOfficial\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'2 minutes, 42 seconds\'}}, \'simpleText\': \'2:42\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CPQDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'ATGQdcN4UBs\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CPQDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'ATGQdcN4UBs\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CPQDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CPMDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CPMDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'ATGQdcN4UBs\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CPMDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'ATGQdcN4UBs\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'ATGQdcN4UBs\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CPMDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/zgMN9BuSQByG1SrpmLwcNB3MQhjDhS_pl9H1h7TaRievMfS4UpU7Z36j77z5_hnIW4N8uFX3NA=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CPIDENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@NetflixIndiaOfficial\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCZSNzBgFub_WWil6TOTYwAg\', \'canonicalBaseUrl\': \'/@NetflixIndiaOfficial\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'k7tLllmRVu4\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/k7tLllmRVu4/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLCtUaYL5ai41zMAE-VOSDmkYDNEhA\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/k7tLllmRVu4/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCNQbAx09ScLSvv_aHTqYovweBDuQ\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/k7tLllmRVu4/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLAUVcUjcifcfMjulmByg5cY7eKsIQ\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315377, \'section3Color\': 15920103, \'primaryTitleColor\': 1643280, \'secondaryTitleColor\': 7690828, \'section4Color\': 15459037}, \'darkColorPalette\': {\'section2Color\': 3348747, \'section3Color\': 2494984, \'primaryTitleColor\': 16772837, \'secondaryTitleColor\': 13414563, \'section4Color\': 1641477}}, \'title\': {\'runs\': [{\'text\': \'Guardian (2024) New Released Full Hindi Dubbed Horror Movie | Hansika Motwani, Suresh Chandra Menon\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Guardian (2024) New Released Full Hindi Dubbed Horror Movie | Hansika Motwani, Suresh Chandra Menon by RKD Studios 4,816,052 views 3 days ago 1 hour, 36 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Check out Our Blockbuster Horror Movie "GUARDIAN". It is the Hindi dubbed version of the TAMIL Blockbuster Movie "GUARDIAN". The film stars Hansika Motwani, Suresh Menon, Sriman and Rajendran...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'RKD Studios\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CO0DENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@rkddigital\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjBwQ6M9QyCgO5Pp-TQRFUA\', \'canonicalBaseUrl\': \'/@rkddigital\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'3 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'1 hour, 36 minutes, 58 seconds\'}}, \'simpleText\': \'1:36:58\'}, \'viewCountText\': {\'simpleText\': \'4,816,052 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CO0DENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=k7tLllmRVu4\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'k7tLllmRVu4\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr4---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=93bb4b96599156ee&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CO0DENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'RKD Studios\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CO0DENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@rkddigital\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjBwQ6M9QyCgO5Pp-TQRFUA\', \'canonicalBaseUrl\': \'/@rkddigital\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'RKD Studios\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CO0DENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@rkddigital\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjBwQ6M9QyCgO5Pp-TQRFUA\', \'canonicalBaseUrl\': \'/@rkddigital\'}}}]}, \'trackingParams\': \'CO0DENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFVA7q3FzOXy0t2TAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'4.8 million views\'}}, \'simpleText\': \'4.8M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CPEDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CPEDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'k7tLllmRVu4\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CPEDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'k7tLllmRVu4\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'k7tLllmRVu4\']}}]}}, \'trackingParams\': \'CPEDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CO0DENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtrN3RMbGxtUlZ1NA%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CO0DENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CPADEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CO0DENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CO0DENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/JxO-AGHTUPTCU_Irgbhchh0_5sYjE_AZYX2bPtsaEug68dUXiIrIAFqNOjI9VrxZv262sU4hpQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CO0DENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@rkddigital\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjBwQ6M9QyCgO5Pp-TQRFUA\', \'canonicalBaseUrl\': \'/@rkddigital\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'1 hour, 36 minutes, 58 seconds\'}}, \'simpleText\': \'1:36:58\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CO8DEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'k7tLllmRVu4\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CO8DEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'k7tLllmRVu4\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CO8DEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CO4DEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CO4DEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'k7tLllmRVu4\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CO4DEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'k7tLllmRVu4\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'k7tLllmRVu4\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CO4DEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/JxO-AGHTUPTCU_Irgbhchh0_5sYjE_AZYX2bPtsaEug68dUXiIrIAFqNOjI9VrxZv262sU4hpQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CO0DENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@rkddigital\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjBwQ6M9QyCgO5Pp-TQRFUA\', \'canonicalBaseUrl\': \'/@rkddigital\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'a2AD7Wa8Jx0\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/a2AD7Wa8Jx0/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLDtrENTYI-nHac8RvqSoyd5ksELlA\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/a2AD7Wa8Jx0/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBn4YYGC7bx5ycgXyfv9HeC-fsoqA\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/a2AD7Wa8Jx0/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDmPNhzgEwPBN_zxyNHvytkfoQTVQ\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16314866, \'section3Color\': 15919081, \'primaryTitleColor\': 1643027, \'secondaryTitleColor\': 8018014, \'section4Color\': 15457760}, \'darkColorPalette\': {\'section2Color\': 3351591, \'section3Color\': 2497309, \'primaryTitleColor\': 16770537, \'secondaryTitleColor\': 13411242, \'section4Color\': 1643027}}, \'title\': {\'runs\': [{\'text\': \'Savi-Sai-Rajat ka \xc3\xa0\xc2\xa4\xc2\xb0\xc3\xa0\xc2\xa4\\x82\xc3\xa0\xc2\xa4\\x97\xc3\xa0\xc2\xa5\\x80\xc3\xa0\xc2\xa4\xc2\xb2\xc3\xa0\xc2\xa4\xc2\xbe hug! | Ep.1284 | Latest | Ghum Hai Kisikey Pyaar Meiin | Mon-Sun | 8PM\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Savi-Sai-Rajat ka \xc3\xa0\xc2\xa4\xc2\xb0\xc3\xa0\xc2\xa4\\x82\xc3\xa0\xc2\xa4\\x97\xc3\xa0\xc2\xa5\\x80\xc3\xa0\xc2\xa4\xc2\xb2\xc3\xa0\xc2\xa4\xc2\xbe hug! | Ep.1284 | Latest | Ghum Hai Kisikey Pyaar Meiin | Mon-Sun | 8PM by Ghum Hai Kisikey Pyaar Meiin 1,468,391 views 1 day ago 3 minutes, 21 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Click here to Subscribe Ghum Hai Kisikey Pyaar Meiin : https://www.youtube.com/channel/UCh9Ao0KLPNXGsHqvIU1pdVw\\n\\nClick here to Subscribe Star Plus : https://www.youtube.com/channel/UC-LPIU24bQXVljU...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Ghum Hai Kisikey Pyaar Meiin \', \'navigationEndpoint\': {\'clickTrackingParams\': \'COgDENwwGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@GhumHaiKisikeyPyaarMeiin\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCh9Ao0KLPNXGsHqvIU1pdVw\', \'canonicalBaseUrl\': \'/@GhumHaiKisikeyPyaarMeiin\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'1 day ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3 minutes, 21 seconds\'}}, \'simpleText\': \'3:21\'}, \'viewCountText\': {\'simpleText\': \'1,468,391 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'COgDENwwGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=a2AD7Wa8Jx0\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'a2AD7Wa8Jx0\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr1---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=6b6003ed66bc271d&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerText\': {\'runs\': [{\'text\': \'Ghum Hai Kisikey Pyaar Meiin \', \'navigationEndpoint\': {\'clickTrackingParams\': \'COgDENwwGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@GhumHaiKisikeyPyaarMeiin\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCh9Ao0KLPNXGsHqvIU1pdVw\', \'canonicalBaseUrl\': \'/@GhumHaiKisikeyPyaarMeiin\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Ghum Hai Kisikey Pyaar Meiin \', \'navigationEndpoint\': {\'clickTrackingParams\': \'COgDENwwGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@GhumHaiKisikeyPyaarMeiin\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCh9Ao0KLPNXGsHqvIU1pdVw\', \'canonicalBaseUrl\': \'/@GhumHaiKisikeyPyaarMeiin\'}}}]}, \'trackingParams\': \'COgDENwwGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFVAnc7wtdb9gLBr\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'1.4 million views\'}}, \'simpleText\': \'1.4M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'COwDEP6YBBgHIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'COwDEP6YBBgHIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'a2AD7Wa8Jx0\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'COwDEP6YBBgHIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'a2AD7Wa8Jx0\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'a2AD7Wa8Jx0\']}}]}}, \'trackingParams\': \'COwDEP6YBBgHIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'COgDENwwGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgthMkFEN1dhOEp4MA%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'COgDENwwGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'COsDEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'COgDENwwGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'COgDENwwGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/MHFaHBZzV3kCZRrZ-DVE_gnGuisdfsskorOC0Kc24q5UnC5liL92W9xbqnEeCvwW-2jHBYEGyw=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'COgDENwwGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@GhumHaiKisikeyPyaarMeiin\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCh9Ao0KLPNXGsHqvIU1pdVw\', \'canonicalBaseUrl\': \'/@GhumHaiKisikeyPyaarMeiin\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3 minutes, 21 seconds\'}}, \'simpleText\': \'3:21\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'COoDEPnnAxgBIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'a2AD7Wa8Jx0\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'COoDEPnnAxgBIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'a2AD7Wa8Jx0\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'COoDEPnnAxgBIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'COkDEMfsBBgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'COkDEMfsBBgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'a2AD7Wa8Jx0\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'COkDEMfsBBgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'a2AD7Wa8Jx0\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'a2AD7Wa8Jx0\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'COkDEMfsBBgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/MHFaHBZzV3kCZRrZ-DVE_gnGuisdfsskorOC0Kc24q5UnC5liL92W9xbqnEeCvwW-2jHBYEGyw=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'COgDENwwGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@GhumHaiKisikeyPyaarMeiin\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCh9Ao0KLPNXGsHqvIU1pdVw\', \'canonicalBaseUrl\': \'/@GhumHaiKisikeyPyaarMeiin\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'PiRW6KOaM5c\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/PiRW6KOaM5c/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLCvgtbocfLGslpt2oYMClaHbAVu2Q\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/PiRW6KOaM5c/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDhxs0rgzt4kZX1ZaODSRMA_OI8pg\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/PiRW6KOaM5c/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLA6FHWyfqI-gXs0iDkedbKWIg0iGg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15856888, \'section3Color\': 15199474, \'primaryTitleColor\': 1316377, \'secondaryTitleColor\': 5858160, \'section4Color\': 14542059}, \'darkColorPalette\': {\'section2Color\': 2633011, \'section3Color\': 1974566, \'primaryTitleColor\': 15069695, \'secondaryTitleColor\': 10728908, \'section4Color\': 1316377}}, \'title\': {\'runs\': [{\'text\': \'CABBAGE with EGGS | Vegetables with Egg Recipe Cooking in Village | Quick and Easy Omelette Recipe\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'CABBAGE with EGGS | Vegetables with Egg Recipe Cooking in Village | Quick and Easy Omelette Recipe by Village Cooking Channel 2,153,456 views 1 day ago 9 minutes, 41 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'We add an egg to the cabbage to make this delicious recipe. We use some fresh vegetables and cabbage, mix them together, and cook them in a big hot vessel. This is the trending omelet recipe...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Village Cooking Channel\', \'navigationEndpoint\': {\'clickTrackingParams\': \'COMDENwwGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@VillageCookingChannel\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCk3JZr7eS3pg5AGEvBdEvFg\', \'canonicalBaseUrl\': \'/@VillageCookingChannel\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'1 day ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'9 minutes, 41 seconds\'}}, \'simpleText\': \'9:41\'}, \'viewCountText\': {\'simpleText\': \'2,153,456 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'COMDENwwGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=PiRW6KOaM5c\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'PiRW6KOaM5c\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr5---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=3e2456e8a39a3397&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'COMDENwwGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Village Cooking Channel\', \'navigationEndpoint\': {\'clickTrackingParams\': \'COMDENwwGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@VillageCookingChannel\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCk3JZr7eS3pg5AGEvBdEvFg\', \'canonicalBaseUrl\': \'/@VillageCookingChannel\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Village Cooking Channel\', \'navigationEndpoint\': {\'clickTrackingParams\': \'COMDENwwGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@VillageCookingChannel\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCk3JZr7eS3pg5AGEvBdEvFg\', \'canonicalBaseUrl\': \'/@VillageCookingChannel\'}}}]}, \'trackingParams\': \'COMDENwwGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFVAl-fonIrdlZI-\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'2.1 million views\'}}, \'simpleText\': \'2.1M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'COcDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'COcDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'PiRW6KOaM5c\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'COcDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'PiRW6KOaM5c\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'PiRW6KOaM5c\']}}]}}, \'trackingParams\': \'COcDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'COMDENwwGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtQaVJXNktPYU01Yw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'COMDENwwGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'COYDEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'COMDENwwGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'COMDENwwGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/4eEETdAR33227A9KRhQ1T4P2NyYReiZKMeaN_rZ8QZ1LSCLUudaggLhZ1C40RkDyw6SejAmW=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'COMDENwwGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@VillageCookingChannel\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCk3JZr7eS3pg5AGEvBdEvFg\', \'canonicalBaseUrl\': \'/@VillageCookingChannel\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'9 minutes, 41 seconds\'}}, \'simpleText\': \'9:41\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'COUDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'PiRW6KOaM5c\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'COUDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'PiRW6KOaM5c\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'COUDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'COQDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'COQDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'PiRW6KOaM5c\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'COQDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'PiRW6KOaM5c\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'PiRW6KOaM5c\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'COQDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/4eEETdAR33227A9KRhQ1T4P2NyYReiZKMeaN_rZ8QZ1LSCLUudaggLhZ1C40RkDyw6SejAmW=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'COMDENwwGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@VillageCookingChannel\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCk3JZr7eS3pg5AGEvBdEvFg\', \'canonicalBaseUrl\': \'/@VillageCookingChannel\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'SFuNit9HO8g\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/SFuNit9HO8g/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLDHQWmxNWU8UdIg_1X_zx56FoIqiQ\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/SFuNit9HO8g/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLD6RUXnMMSJju6Db1rYkcOJ2Xn9UA\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/SFuNit9HO8g/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCAWUFsQt7heFrHqa89n9U5YA_4kg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15856376, \'section3Color\': 15198450, \'primaryTitleColor\': 1052953, \'secondaryTitleColor\': 5659780, \'section4Color\': 14540779}, \'darkColorPalette\': {\'section2Color\': 1579827, \'section3Color\': 1184806, \'primaryTitleColor\': 15067391, \'secondaryTitleColor\': 10725580, \'section4Color\': 789785}}, \'title\': {\'runs\': [{\'text\': "Testing Virat Kohli\'s Favourite Restaurants | SlayyPop"}], \'accessibility\': {\'accessibilityData\': {\'label\': "Testing Virat Kohli\'s Favourite Restaurants | SlayyPop by SlayyPop 1,823,686 views 2 days ago 12 minutes, 42 seconds"}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': "This herbal hair oil is amazing for getting that healthy, shiny hair we all love. If you also want to get the original Neelambari Hair Oil, check out the link below! Don\'t wait, get yours now!..."}]}, \'longBylineText\': {\'runs\': [{\'text\': \'SlayyPop\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CN4DENwwGAQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SlayyPop\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCSfxFZFzcpYMbOB3A1rWHAg\', \'canonicalBaseUrl\': \'/@SlayyPop\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'12 minutes, 42 seconds\'}}, \'simpleText\': \'12:42\'}, \'viewCountText\': {\'simpleText\': \'1,823,686 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CN4DENwwGAQiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=SFuNit9HO8g\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'SFuNit9HO8g\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr1---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=485b8d8adf473bc8&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CN4DENwwGAQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'SlayyPop\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CN4DENwwGAQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SlayyPop\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCSfxFZFzcpYMbOB3A1rWHAg\', \'canonicalBaseUrl\': \'/@SlayyPop\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'SlayyPop\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CN4DENwwGAQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SlayyPop\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCSfxFZFzcpYMbOB3A1rWHAg\', \'canonicalBaseUrl\': \'/@SlayyPop\'}}}]}, \'trackingParams\': \'CN4DENwwGAQiEwiGsb7oo8OHAxWCi9gFHTJaAFVAyPec-q2x461I\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'1.8 million views\'}}, \'simpleText\': \'1.8M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'COIDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'COIDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'SFuNit9HO8g\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'COIDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'SFuNit9HO8g\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'SFuNit9HO8g\']}}]}}, \'trackingParams\': \'COIDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CN4DENwwGAQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtTRnVOaXQ5SE84Zw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CN4DENwwGAQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'COEDEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CN4DENwwGAQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CN4DENwwGAQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_mFh-WLjsiIXXBm9h4WXNGIPW16BRtArKpa4lNQnI8iXjg=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CN4DENwwGAQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SlayyPop\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCSfxFZFzcpYMbOB3A1rWHAg\', \'canonicalBaseUrl\': \'/@SlayyPop\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'12 minutes, 42 seconds\'}}, \'simpleText\': \'12:42\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'COADEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'SFuNit9HO8g\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'COADEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'SFuNit9HO8g\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'COADEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CN8DEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CN8DEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'SFuNit9HO8g\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CN8DEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'SFuNit9HO8g\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'SFuNit9HO8g\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CN8DEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_mFh-WLjsiIXXBm9h4WXNGIPW16BRtArKpa4lNQnI8iXjg=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CN4DENwwGAQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SlayyPop\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCSfxFZFzcpYMbOB3A1rWHAg\', \'canonicalBaseUrl\': \'/@SlayyPop\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'av9BiY6pb7M\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/av9BiY6pb7M/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLAbgIqRlTPcsbWHpz160r0E59JtJA\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/av9BiY6pb7M/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBOTQY4sU5K3vG2xa6n5hmh3y4O1w\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/av9BiY6pb7M/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBu6RwuQWl7gmC494p3nvn4RxlLcA\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315633, \'section3Color\': 15920359, \'primaryTitleColor\': 1643536, \'secondaryTitleColor\': 7691852, \'section4Color\': 15459549}, \'darkColorPalette\': {\'section2Color\': 3350287, \'section3Color\': 2496267, \'primaryTitleColor\': 16773349, \'secondaryTitleColor\': 13415843, \'section4Color\': 1642247}}, \'title\': {\'runs\': [{\'text\': \'Kabhi Main Kabhi Tum Episode 6 | Fahad Mustafa | Hania Aamir | 23 July 2024 (Eng Sub) ARY Digital\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Kabhi Main Kabhi Tum Episode 6 | Fahad Mustafa | Hania Aamir | 23 July 2024 (Eng Sub) ARY Digital by ARY Digital HD 4,804,004 views 2 days ago 41 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Kabhi Main Kabhi Tum | Episode 6 | Digitally Presented by Master Paints , Food Panda , Sunsilk & Skin White | Fahad Mustafa | Hania Aamir | 23 July 2024 | ARY Digital Drama \\n\\nThe drama revolves...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'ARY Digital HD\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CNkDENwwGAUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ARYDigitalasia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC4JCksJF76g_MdzPVBJoC3Q\', \'canonicalBaseUrl\': \'/@ARYDigitalasia\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'41 minutes, 8 seconds\'}}, \'simpleText\': \'41:08\'}, \'viewCountText\': {\'simpleText\': \'4,804,004 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CNkDENwwGAUiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=av9BiY6pb7M\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'av9BiY6pb7M\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr2---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=6aff41898ea96fb3&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CNkDENwwGAUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'ARY Digital HD\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CNkDENwwGAUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ARYDigitalasia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC4JCksJF76g_MdzPVBJoC3Q\', \'canonicalBaseUrl\': \'/@ARYDigitalasia\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'ARY Digital HD\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CNkDENwwGAUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ARYDigitalasia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC4JCksJF76g_MdzPVBJoC3Q\', \'canonicalBaseUrl\': \'/@ARYDigitalasia\'}}}]}, \'trackingParams\': \'CNkDENwwGAUiEwiGsb7oo8OHAxWCi9gFHTJaAFVAs9-l9Zix0P9q\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'4.8 million views\'}}, \'simpleText\': \'4.8M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CN0DEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CN0DEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'av9BiY6pb7M\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CN0DEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'av9BiY6pb7M\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'av9BiY6pb7M\']}}]}}, \'trackingParams\': \'CN0DEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CNkDENwwGAUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgthdjlCaVk2cGI3TQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CNkDENwwGAUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CNwDEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CNkDENwwGAUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CNkDENwwGAUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/QhOVHhLgg5wFu4H4gA9qOVoavng-T2xoA62cXVV-dk-j8phnED3P8whca8CETo0GuAVhQgtO=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CNkDENwwGAUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ARYDigitalasia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC4JCksJF76g_MdzPVBJoC3Q\', \'canonicalBaseUrl\': \'/@ARYDigitalasia\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'41 minutes, 8 seconds\'}}, \'simpleText\': \'41:08\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CNsDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'av9BiY6pb7M\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CNsDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'av9BiY6pb7M\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CNsDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CNoDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CNoDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'av9BiY6pb7M\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CNoDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'av9BiY6pb7M\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'av9BiY6pb7M\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CNoDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/QhOVHhLgg5wFu4H4gA9qOVoavng-T2xoA62cXVV-dk-j8phnED3P8whca8CETo0GuAVhQgtO=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CNkDENwwGAUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ARYDigitalasia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC4JCksJF76g_MdzPVBJoC3Q\', \'canonicalBaseUrl\': \'/@ARYDigitalasia\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'sBBCXKbrT3I\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/sBBCXKbrT3I/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLA92HHkWozW1YGiXIW09ITES8D7BA\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/sBBCXKbrT3I/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLClejhzkaPKctW0hl8riomeILjMGA\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/sBBCXKbrT3I/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLA-F0rBfraDIlKTOINxH-CqBnbXeg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15856376, \'section3Color\': 15198450, \'primaryTitleColor\': 1052953, \'secondaryTitleColor\': 5659524, \'section4Color\': 14540779}, \'darkColorPalette\': {\'section2Color\': 856627, \'section3Color\': 658726, \'primaryTitleColor\': 15067391, \'secondaryTitleColor\': 10725580, \'section4Color\': 395545}}, \'title\': {\'runs\': [{\'text\': "India (W) vs Nepal (W) | ACC Women\'s Asia Cup | Match 10 | Highlights"}], \'accessibility\': {\'accessibilityData\': {\'label\': "India (W) vs Nepal (W) | ACC Women\'s Asia Cup | Match 10 | Highlights by Asian Cricket Council 1,937,069 views 2 days ago 12 minutes, 5 seconds"}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': "Match 10 of India (W) vs Nepal (W), ACC Women\'s Asia Cup"}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Asian Cricket Council\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CNQDENwwGAYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AsianCricketCouncilTV\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC7ITT3ooYWDYY_ehIUbt6eg\', \'canonicalBaseUrl\': \'/@AsianCricketCouncilTV\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'12 minutes, 5 seconds\'}}, \'simpleText\': \'12:05\'}, \'viewCountText\': {\'simpleText\': \'1,937,069 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CNQDENwwGAYiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=sBBCXKbrT3I\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'sBBCXKbrT3I\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr4---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=b010425ca6eb4f72&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CNQDENwwGAYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Asian Cricket Council\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CNQDENwwGAYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AsianCricketCouncilTV\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC7ITT3ooYWDYY_ehIUbt6eg\', \'canonicalBaseUrl\': \'/@AsianCricketCouncilTV\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Asian Cricket Council\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CNQDENwwGAYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AsianCricketCouncilTV\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC7ITT3ooYWDYY_ehIUbt6eg\', \'canonicalBaseUrl\': \'/@AsianCricketCouncilTV\'}}}]}, \'trackingParams\': \'CNQDENwwGAYiEwiGsb7oo8OHAxWCi9gFHTJaAFVA8p6tt8rLkIiwAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'1.9 million views\'}}, \'simpleText\': \'1.9M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CNgDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CNgDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'sBBCXKbrT3I\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CNgDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'sBBCXKbrT3I\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'sBBCXKbrT3I\']}}]}}, \'trackingParams\': \'CNgDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CNQDENwwGAYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtzQkJDWEticlQzSQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CNQDENwwGAYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CNcDEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CNQDENwwGAYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CNQDENwwGAYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/6aLGUKNgK97FyqShBOoJwUd1kUtIJfDbx8Pvt31ceLmboNWMADnDSX7KsDxWrGWkLuPUO5vYpA=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CNQDENwwGAYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AsianCricketCouncilTV\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC7ITT3ooYWDYY_ehIUbt6eg\', \'canonicalBaseUrl\': \'/@AsianCricketCouncilTV\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'12 minutes, 5 seconds\'}}, \'simpleText\': \'12:05\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CNYDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'sBBCXKbrT3I\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CNYDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'sBBCXKbrT3I\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CNYDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CNUDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CNUDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'sBBCXKbrT3I\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CNUDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'sBBCXKbrT3I\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'sBBCXKbrT3I\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CNUDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/6aLGUKNgK97FyqShBOoJwUd1kUtIJfDbx8Pvt31ceLmboNWMADnDSX7KsDxWrGWkLuPUO5vYpA=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CNQDENwwGAYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AsianCricketCouncilTV\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC7ITT3ooYWDYY_ehIUbt6eg\', \'canonicalBaseUrl\': \'/@AsianCricketCouncilTV\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'Nd0gLi3SXno\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/Nd0gLi3SXno/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLCSr311in_OUEtcJxaudT76hqgXJQ\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/Nd0gLi3SXno/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDuTmOrsGtoGKGxnR65zf3RTjF2iA\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/Nd0gLi3SXno/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBdiks5NpFpBMCZ77Sr1tSIBdVSqA\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15857656, \'section3Color\': 15200242, \'primaryTitleColor\': 1054489, \'secondaryTitleColor\': 4745328, \'section4Color\': 14543083}, \'darkColorPalette\': {\'section2Color\': 335654, \'section3Color\': 202009, \'primaryTitleColor\': 15071743, \'secondaryTitleColor\': 10732492, \'section4Color\': 68108}}, \'title\': {\'runs\': [{\'text\': \'Level 1 SPIDERMAN to Level 1,000,000,000 SPIDERMAN in GTA 5\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Level 1 SPIDERMAN to Level 1,000,000,000 SPIDERMAN in GTA 5 by TheLoudDude 471,124 views 1 day ago 19 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': "Level 1 SPIDERMAN to Level 1,000,000,000 SPIDERMAN in GTA 5\\n\\nDon\'t forget to leave a Like, Comment and Favorite, helps out a lot!!\\n\\nFOLLOW, LIKE AND JOIN ME ON:\\n\\nInstagram - https://www.instagram.c..."}]}, \'longBylineText\': {\'runs\': [{\'text\': \'TheLoudDude\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CM8DENwwGAciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TheLoudDude\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCS8uIXvlSK3HtC0p0VIWyTQ\', \'canonicalBaseUrl\': \'/@TheLoudDude\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'1 day ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'19 minutes, 25 seconds\'}}, \'simpleText\': \'19:25\'}, \'viewCountText\': {\'simpleText\': \'471,124 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CM8DENwwGAciEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=Nd0gLi3SXno\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'Nd0gLi3SXno\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr2---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=35dd202e2dd25e7a&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CM8DENwwGAciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'TheLoudDude\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CM8DENwwGAciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TheLoudDude\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCS8uIXvlSK3HtC0p0VIWyTQ\', \'canonicalBaseUrl\': \'/@TheLoudDude\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'TheLoudDude\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CM8DENwwGAciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TheLoudDude\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCS8uIXvlSK3HtC0p0VIWyTQ\', \'canonicalBaseUrl\': \'/@TheLoudDude\'}}}]}, \'trackingParams\': \'CM8DENwwGAciEwiGsb7oo8OHAxWCi9gFHTJaAFVA-rzJ7uKFyO41\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'471K views\'}}, \'simpleText\': \'471K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CNMDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CNMDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'Nd0gLi3SXno\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CNMDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'Nd0gLi3SXno\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'Nd0gLi3SXno\']}}]}}, \'trackingParams\': \'CNMDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CM8DENwwGAciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtOZDBnTGkzU1hubw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CM8DENwwGAciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CNIDEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CM8DENwwGAciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CM8DENwwGAciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_kLVtNfwERunPCUNfPJ10eP5ZSJ-2ZTU44TITxEo29i9-U=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CM8DENwwGAciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TheLoudDude\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCS8uIXvlSK3HtC0p0VIWyTQ\', \'canonicalBaseUrl\': \'/@TheLoudDude\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'19 minutes, 25 seconds\'}}, \'simpleText\': \'19:25\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CNEDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'Nd0gLi3SXno\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CNEDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'Nd0gLi3SXno\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CNEDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CNADEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CNADEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'Nd0gLi3SXno\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CNADEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'Nd0gLi3SXno\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'Nd0gLi3SXno\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CNADEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_kLVtNfwERunPCUNfPJ10eP5ZSJ-2ZTU44TITxEo29i9-U=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CM8DENwwGAciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TheLoudDude\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCS8uIXvlSK3HtC0p0VIWyTQ\', \'canonicalBaseUrl\': \'/@TheLoudDude\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'T9d_JnE7y14\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/T9d_JnE7y14/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLCeSI_YMp4E3Qjykh6syt9xQpaEIQ\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/T9d_JnE7y14/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLD3pUzGDR0RWfSMlwnLe7zLb1NzaQ\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/T9d_JnE7y14/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBcmAzrvklGxbbM-S-3s7DOvMFqHw\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16314865, \'section3Color\': 15919079, \'primaryTitleColor\': 1642768, \'secondaryTitleColor\': 8344914, \'section4Color\': 15458013}, \'darkColorPalette\': {\'section2Color\': 3349273, \'section3Color\': 2495507, \'primaryTitleColor\': 16771045, \'secondaryTitleColor\': 13411747, \'section4Color\': 1641740}}, \'title\': {\'runs\': [{\'text\': \'Demonte Colony 2 - Release Trailer | Arulnithi, Priya Bhavani Shankar | Ajay R Gnanamuthu | Sam CS\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Demonte Colony 2 - Release Trailer | Arulnithi, Priya Bhavani Shankar | Ajay R Gnanamuthu | Sam CS by Think Music India 3,566,952 views 1 day ago 2 minutes, 27 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'#Demontecolony2 #AjayRGnanamuthu #Arulnithi\\n#PriyaBhavaniShankar #BobbyBalachandran #BTGUniversal #GnanamuthuPattarai #WhiteNightsEntertainment #DemonteColony2ReleaseTrailer\\n\\nPeek into the...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Think Music India\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CMoDENwwGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@thinkmusicofficial\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCLbdVvreihwZRL6kwuEUYsA\', \'canonicalBaseUrl\': \'/@thinkmusicofficial\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'1 day ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'2 minutes, 27 seconds\'}}, \'simpleText\': \'2:27\'}, \'viewCountText\': {\'simpleText\': \'3,566,952 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CMoDENwwGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=T9d_JnE7y14\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'T9d_JnE7y14\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr3---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=4fd77f26713bcb5e&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CMoDENwwGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Think Music India\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CMoDENwwGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@thinkmusicofficial\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCLbdVvreihwZRL6kwuEUYsA\', \'canonicalBaseUrl\': \'/@thinkmusicofficial\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Think Music India\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CMoDENwwGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@thinkmusicofficial\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCLbdVvreihwZRL6kwuEUYsA\', \'canonicalBaseUrl\': \'/@thinkmusicofficial\'}}}]}, \'trackingParams\': \'CMoDENwwGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFVA3pbviefk3-tP\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3.5 million views\'}}, \'simpleText\': \'3.5M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CM4DEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CM4DEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'T9d_JnE7y14\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CM4DEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'T9d_JnE7y14\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'T9d_JnE7y14\']}}]}}, \'trackingParams\': \'CM4DEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CMoDENwwGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtUOWRfSm5FN3kxNA%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CMoDENwwGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CM0DEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CMoDENwwGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CMoDENwwGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/dzgLCjRr-jI96sRdV8Ovl6F3LafGEh3a777hPBBwkN5VL2pixr98frJJwFL8fZQKBg289O574A=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CMoDENwwGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@thinkmusicofficial\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCLbdVvreihwZRL6kwuEUYsA\', \'canonicalBaseUrl\': \'/@thinkmusicofficial\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'2 minutes, 27 seconds\'}}, \'simpleText\': \'2:27\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CMwDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'T9d_JnE7y14\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CMwDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'T9d_JnE7y14\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CMwDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CMsDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CMsDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'T9d_JnE7y14\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CMsDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'T9d_JnE7y14\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'T9d_JnE7y14\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CMsDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/dzgLCjRr-jI96sRdV8Ovl6F3LafGEh3a777hPBBwkN5VL2pixr98frJJwFL8fZQKBg289O574A=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CMoDENwwGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@thinkmusicofficial\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCLbdVvreihwZRL6kwuEUYsA\', \'canonicalBaseUrl\': \'/@thinkmusicofficial\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'_OKAwz2MsJs\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/_OKAwz2MsJs/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLA4Yl6B4nS7KbUgPDmDw2reND6z2g\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/_OKAwz2MsJs/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLAZACUvz2aSCZ65N9YWQPCTlCR0fg\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/_OKAwz2MsJs/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLC-4FkCv_1w-CceiMZUC5oaykQ1wQ\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15857910, \'section3Color\': 15201007, \'primaryTitleColor\': 1054999, \'secondaryTitleColor\': 4549474, \'section4Color\': 14543848}, \'darkColorPalette\': {\'section2Color\': 1582626, \'section3Color\': 1054999, \'primaryTitleColor\': 15073272, \'secondaryTitleColor\': 10734786, \'section4Color\': 527371}}, \'title\': {\'runs\': [{\'text\': \'Joker: Folie \xc3\x83\\x80 Deux | Official Trailer\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Joker: Folie \xc3\x83\\x80 Deux | Official Trailer by Warner Bros. Pictures 15,926,400 views 2 days ago 2 minutes, 51 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'When you\xc3\xa2\\x80\\x99re smiling, the whole world smiles with you. Joker: Folie \xc3\x83\\x80 Deux \xc3\xa2\\x80\\x93 only in theaters and IMAX, October 4. #JokerMovie #FilmedForIMAX \\n\\nFrom acclaimed writer/director/producer Todd...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Warner Bros. Pictures\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CMUDENwwGAkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@WarnerBrosPictures\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjmJDM5pRKbUlVIzDYYWb6g\', \'canonicalBaseUrl\': \'/@WarnerBrosPictures\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'2 minutes, 51 seconds\'}}, \'simpleText\': \'2:51\'}, \'viewCountText\': {\'simpleText\': \'15,926,400 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CMUDENwwGAkiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=_OKAwz2MsJs\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'_OKAwz2MsJs\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr1---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=fce280c33d8cb09b&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CMUDENwwGAkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Warner Bros. Pictures\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CMUDENwwGAkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@WarnerBrosPictures\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjmJDM5pRKbUlVIzDYYWb6g\', \'canonicalBaseUrl\': \'/@WarnerBrosPictures\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Warner Bros. Pictures\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CMUDENwwGAkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@WarnerBrosPictures\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjmJDM5pRKbUlVIzDYYWb6g\', \'canonicalBaseUrl\': \'/@WarnerBrosPictures\'}}}]}, \'trackingParams\': \'CMUDENwwGAkiEwiGsb7oo8OHAxWCi9gFHTJaAFVAm-Gy7LOYoPH8AQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'15 million views\'}}, \'simpleText\': \'15M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CMkDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CMkDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'_OKAwz2MsJs\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CMkDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'_OKAwz2MsJs\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'_OKAwz2MsJs\']}}]}}, \'trackingParams\': \'CMkDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CMUDENwwGAkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtfT0tBd3oyTXNKcw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CMUDENwwGAkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CMgDEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CMUDENwwGAkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CMUDENwwGAkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/CoYiDB8ojHTQvSwr9h8clzpcm85wiFaHroW0MaVgTnDEXAIMxhGlzC5Vwo9N3-z3obfVqc_G62I=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CMUDENwwGAkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@WarnerBrosPictures\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjmJDM5pRKbUlVIzDYYWb6g\', \'canonicalBaseUrl\': \'/@WarnerBrosPictures\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'2 minutes, 51 seconds\'}}, \'simpleText\': \'2:51\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CMcDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'_OKAwz2MsJs\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CMcDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'_OKAwz2MsJs\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CMcDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CMYDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CMYDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'_OKAwz2MsJs\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CMYDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'_OKAwz2MsJs\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'_OKAwz2MsJs\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CMYDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/CoYiDB8ojHTQvSwr9h8clzpcm85wiFaHroW0MaVgTnDEXAIMxhGlzC5Vwo9N3-z3obfVqc_G62I=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CMUDENwwGAkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@WarnerBrosPictures\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjmJDM5pRKbUlVIzDYYWb6g\', \'canonicalBaseUrl\': \'/@WarnerBrosPictures\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'gcNmzgE1XWo\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/gcNmzgE1XWo/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLAKc6qCFr1c0wnOvXdS6b63wyLThw\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/gcNmzgE1XWo/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBse0VUjTXKaBjiSgwJGV9DbNPo_w\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/gcNmzgE1XWo/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLC5jc0dQ1mi63rD6YMR5xJpfrJRlA\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15987192, \'section3Color\': 15460338, \'primaryTitleColor\': 1249305, \'secondaryTitleColor\': 6706820, \'section4Color\': 14867947}, \'darkColorPalette\': {\'section2Color\': 1773107, \'section3Color\': 1313574, \'primaryTitleColor\': 15656447, \'secondaryTitleColor\': 11641804, \'section4Color\': 853785}}, \'title\': {\'runs\': [{\'text\': \'Blockbuster or Disaster? | Budget 2024 EXPLAINED in just 15 minutes\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Blockbuster or Disaster? | Budget 2024 EXPLAINED in just 15 minutes by Labour Law Advisor 630,261 views 2 days ago 16 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\\nBuy Health Insurance: https://health.lla.in\\nBuy Term Insurance: https://term.lla.in\\n\\nHax to Save Tax Courses by LLA:...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Labour Law Advisor\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CMADENwwGAoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@LabourLawAdvisor\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCVOTBwF0vnSxMRIbfSE_K_g\', \'canonicalBaseUrl\': \'/@LabourLawAdvisor\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'16 minutes, 31 seconds\'}}, \'simpleText\': \'16:31\'}, \'viewCountText\': {\'simpleText\': \'630,261 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CMADENwwGAoiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=gcNmzgE1XWo\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'gcNmzgE1XWo\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr5---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=81c366ce01355d6a&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CMADENwwGAoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Labour Law Advisor\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CMADENwwGAoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@LabourLawAdvisor\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCVOTBwF0vnSxMRIbfSE_K_g\', \'canonicalBaseUrl\': \'/@LabourLawAdvisor\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Labour Law Advisor\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CMADENwwGAoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@LabourLawAdvisor\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCVOTBwF0vnSxMRIbfSE_K_g\', \'canonicalBaseUrl\': \'/@LabourLawAdvisor\'}}}]}, \'trackingParams\': \'CMADENwwGAoiEwiGsb7oo8OHAxWCi9gFHTJaAFVA6rrVieDZ2eGBAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'630K views\'}}, \'simpleText\': \'630K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CMQDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CMQDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'gcNmzgE1XWo\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CMQDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'gcNmzgE1XWo\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'gcNmzgE1XWo\']}}]}}, \'trackingParams\': \'CMQDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CMADENwwGAoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtnY05temdFMVhXbw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CMADENwwGAoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CMMDEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CMADENwwGAoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CMADENwwGAoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/CVvE7vApeq2jgHhty_LsDBVJPnp-msvs7r3spAZo_14T_nBqd1CWTjhUdjg1TTAztO7MOxu2=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CMADENwwGAoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@LabourLawAdvisor\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCVOTBwF0vnSxMRIbfSE_K_g\', \'canonicalBaseUrl\': \'/@LabourLawAdvisor\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'16 minutes, 31 seconds\'}}, \'simpleText\': \'16:31\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CMIDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'gcNmzgE1XWo\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CMIDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'gcNmzgE1XWo\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CMIDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CMEDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CMEDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'gcNmzgE1XWo\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CMEDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'gcNmzgE1XWo\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'gcNmzgE1XWo\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CMEDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/CVvE7vApeq2jgHhty_LsDBVJPnp-msvs7r3spAZo_14T_nBqd1CWTjhUdjg1TTAztO7MOxu2=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CMADENwwGAoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@LabourLawAdvisor\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCVOTBwF0vnSxMRIbfSE_K_g\', \'canonicalBaseUrl\': \'/@LabourLawAdvisor\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'x8YP-rk8w2Y\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/x8YP-rk8w2Y/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLBiau5WsbOK5Xf7AzfkJSxOu2BcPw\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/x8YP-rk8w2Y/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDEMTJEEGvp-e1UrL2mHJInGtTTbg\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/x8YP-rk8w2Y/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBb1W6T6cx68_y5Bx8alhlAFSKXCg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15857144, \'section3Color\': 15199730, \'primaryTitleColor\': 1053977, \'secondaryTitleColor\': 5006453, \'section4Color\': 14542315}, \'darkColorPalette\': {\'section2Color\': 729651, \'section3Color\': 530982, \'primaryTitleColor\': 15070463, \'secondaryTitleColor\': 10730188, \'section4Color\': 332057}}, \'title\': {\'runs\': [{\'text\': \'We Opened 100 Mystery Boxes Worth \xc3\xa2\\x82\xc2\xb930,00,000 With JCB | \xc3\xa0\xc2\xa4\\x86\xc3\xa0\xc2\xa4\\x9c \xc3\xa0\xc2\xa4\xc2\xa4\xc3\xa0\xc2\xa5\\x8b \xc3\xa0\xc2\xa4\xc2\xb2\xc3\xa0\xc2\xa5\\x89\xc3\xa0\xc2\xa4\\x9f\xc3\xa0\xc2\xa4\xc2\xb0\xc3\xa0\xc2\xa5\\x80 \xc3\xa0\xc2\xa4\xc2\xb2\xc3\xa0\xc2\xa4\\x97 \xc3\xa0\xc2\xa4\\x97\xc3\xa0\xc2\xa4\\x88\xc3\xb0\\x9f\xc2\xa4\\x91\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'We Opened 100 Mystery Boxes Worth \xc3\xa2\\x82\xc2\xb930,00,000 With JCB | \xc3\xa0\xc2\xa4\\x86\xc3\xa0\xc2\xa4\\x9c \xc3\xa0\xc2\xa4\xc2\xa4\xc3\xa0\xc2\xa5\\x8b \xc3\xa0\xc2\xa4\xc2\xb2\xc3\xa0\xc2\xa5\\x89\xc3\xa0\xc2\xa4\\x9f\xc3\xa0\xc2\xa4\xc2\xb0\xc3\xa0\xc2\xa5\\x80 \xc3\xa0\xc2\xa4\xc2\xb2\xc3\xa0\xc2\xa4\\x97 \xc3\xa0\xc2\xa4\\x97\xc3\xa0\xc2\xa4\\x88\xc3\xb0\\x9f\xc2\xa4\\x91 by Crazy XYZ 1,946,974 views 16 hours ago 23 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Sign-up on Hibox through my link within next 24 hours and get 100rs instant cashback on your first purchase.\\n\\nhttps://share.hibox.com.in/down/app?recommender=634891\\n\\nReferral ID - 634891\\n\\nHibox...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Crazy XYZ\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CLsDENwwGAsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@CrazyXYZ\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCebC4x5l2-PQxg46Ucv9CsA\', \'canonicalBaseUrl\': \'/@CrazyXYZ\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'16 hours ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'23 minutes, 50 seconds\'}}, \'simpleText\': \'23:50\'}, \'viewCountText\': {\'simpleText\': \'1,946,974 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CLsDENwwGAsiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=x8YP-rk8w2Y\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'x8YP-rk8w2Y\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr1---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=c7c60ffab93cc366&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CLsDENwwGAsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Crazy XYZ\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CLsDENwwGAsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@CrazyXYZ\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCebC4x5l2-PQxg46Ucv9CsA\', \'canonicalBaseUrl\': \'/@CrazyXYZ\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Crazy XYZ\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CLsDENwwGAsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@CrazyXYZ\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCebC4x5l2-PQxg46Ucv9CsA\', \'canonicalBaseUrl\': \'/@CrazyXYZ\'}}}]}, \'trackingParams\': \'CLsDENwwGAsiEwiGsb7oo8OHAxWCi9gFHTJaAFVA5obzyav_g-PHAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'1.9 million views\'}}, \'simpleText\': \'1.9M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CL8DEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CL8DEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'x8YP-rk8w2Y\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CL8DEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'x8YP-rk8w2Y\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'x8YP-rk8w2Y\']}}]}}, \'trackingParams\': \'CL8DEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CLsDENwwGAsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'Cgt4OFlQLXJrOHcyWQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CLsDENwwGAsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CL4DEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CLsDENwwGAsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CLsDENwwGAsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_m_dwfeg3dT3tiDA8BJyWUyAk9EYZKjB5J_HGXBqSMcqmE=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CLsDENwwGAsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@CrazyXYZ\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCebC4x5l2-PQxg46Ucv9CsA\', \'canonicalBaseUrl\': \'/@CrazyXYZ\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'23 minutes, 50 seconds\'}}, \'simpleText\': \'23:50\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CL0DEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'x8YP-rk8w2Y\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CL0DEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'x8YP-rk8w2Y\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CL0DEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CLwDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CLwDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'x8YP-rk8w2Y\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CLwDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'x8YP-rk8w2Y\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'x8YP-rk8w2Y\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CLwDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_m_dwfeg3dT3tiDA8BJyWUyAk9EYZKjB5J_HGXBqSMcqmE=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CLsDENwwGAsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@CrazyXYZ\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCebC4x5l2-PQxg46Ucv9CsA\', \'canonicalBaseUrl\': \'/@CrazyXYZ\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'8DHetOLjAXk\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/8DHetOLjAXk/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLC7owsgTMYmtBybCd6TNUgOM2qc1w\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/8DHetOLjAXk/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLB93hSyCUiT5f4zs_uZjwG0lPG0Qw\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/8DHetOLjAXk/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLAewwYyQSPx65-KPAzm6xE5sOVu4g\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16314865, \'section3Color\': 15919079, \'primaryTitleColor\': 1642768, \'secondaryTitleColor\': 8344658, \'section4Color\': 15458013}, \'darkColorPalette\': {\'section2Color\': 3349788, \'section3Color\': 2496021, \'primaryTitleColor\': 16770789, \'secondaryTitleColor\': 13411747, \'section4Color\': 1641998}}, \'title\': {\'runs\': [{\'text\': \'\xc3\xa0\xc2\xa4\\x8f\xc3\xa0\xc2\xa4\\x95 Skit \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa5\\x87 Through CID \xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\xc2\xb9\xc3\xa0\xc2\xa4\xc2\xb2 \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa5\\x80 Case \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa5\\x80 Mystery! | CID | \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa5\\x80.\xc3\xa0\xc2\xa4\\x86\xc3\xa0\xc2\xa4\\x88.\xc3\xa0\xc2\xa4\xc2\xa1\xc3\xa0\xc2\xa5\\x80.| Latest Episode| 23 July 2024\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'\xc3\xa0\xc2\xa4\\x8f\xc3\xa0\xc2\xa4\\x95 Skit \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa5\\x87 Through CID \xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\xc2\xb9\xc3\xa0\xc2\xa4\xc2\xb2 \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa5\\x80 Case \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa5\\x80 Mystery! | CID | \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa5\\x80.\xc3\xa0\xc2\xa4\\x86\xc3\xa0\xc2\xa4\\x88.\xc3\xa0\xc2\xa4\xc2\xa1\xc3\xa0\xc2\xa5\\x80.| Latest Episode| 23 July 2024 by LIV Crime 756,588 views 2 days ago 48 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': "Click here to Subscribe to LIV Crime: \\nhttps://www.youtube.com/channel/UCzXpAx4v6rFLYXkJZ5nmSvQ?sub_confirmation=1\\n\\nA woman\'s ghost is haunting the city and causing destruction around. The..."}]}, \'longBylineText\': {\'runs\': [{\'text\': \'LIV Crime\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CLYDENwwGAwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@LIVCrime\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCzXpAx4v6rFLYXkJZ5nmSvQ\', \'canonicalBaseUrl\': \'/@LIVCrime\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'48 minutes\'}}, \'simpleText\': \'48:00\'}, \'viewCountText\': {\'simpleText\': \'756,588 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CLYDENwwGAwiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=8DHetOLjAXk\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'8DHetOLjAXk\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr1---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=f031deb4e2e30179&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CLYDENwwGAwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'LIV Crime\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CLYDENwwGAwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@LIVCrime\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCzXpAx4v6rFLYXkJZ5nmSvQ\', \'canonicalBaseUrl\': \'/@LIVCrime\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'LIV Crime\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CLYDENwwGAwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@LIVCrime\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCzXpAx4v6rFLYXkJZ5nmSvQ\', \'canonicalBaseUrl\': \'/@LIVCrime\'}}}]}, \'trackingParams\': \'CLYDENwwGAwiEwiGsb7oo8OHAxWCi9gFHTJaAFVA-YKMl87W95jwAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'756K views\'}}, \'simpleText\': \'756K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CLoDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CLoDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'8DHetOLjAXk\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CLoDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'8DHetOLjAXk\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'8DHetOLjAXk\']}}]}}, \'trackingParams\': \'CLoDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CLYDENwwGAwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'Cgs4REhldE9MakFYaw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CLYDENwwGAwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CLkDEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CLYDENwwGAwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CLYDENwwGAwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/KUIS6mJgrYkNTaUuCdda7ewat5IFHzGK0hULzV0c0b5BsIeThimuIULKg2IcQemtmPwbDDnOPg=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CLYDENwwGAwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@LIVCrime\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCzXpAx4v6rFLYXkJZ5nmSvQ\', \'canonicalBaseUrl\': \'/@LIVCrime\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'48 minutes\'}}, \'simpleText\': \'48:00\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CLgDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'8DHetOLjAXk\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CLgDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'8DHetOLjAXk\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CLgDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CLcDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CLcDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'8DHetOLjAXk\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CLcDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'8DHetOLjAXk\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'8DHetOLjAXk\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CLcDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/KUIS6mJgrYkNTaUuCdda7ewat5IFHzGK0hULzV0c0b5BsIeThimuIULKg2IcQemtmPwbDDnOPg=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CLYDENwwGAwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@LIVCrime\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCzXpAx4v6rFLYXkJZ5nmSvQ\', \'canonicalBaseUrl\': \'/@LIVCrime\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'ltAbK1EhW3s\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/ltAbK1EhW3s/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLBMDasRYD9NzddtCvuynZZMLwqr5Q\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/ltAbK1EhW3s/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDvTgmSCfAX5a_3mpd-M-_ysV461g\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/ltAbK1EhW3s/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDLkJvzFMmUwSTjUF1Xj_bSunxhNg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315121, \'section3Color\': 15919591, \'primaryTitleColor\': 1643024, \'secondaryTitleColor\': 8018255, \'section4Color\': 15458525}, \'darkColorPalette\': {\'section2Color\': 3346695, \'section3Color\': 2493701, \'primaryTitleColor\': 16772069, \'secondaryTitleColor\': 13413539, \'section4Color\': 1640451}}, \'title\': {\'runs\': [{\'text\': \'Hamster Kombat Withdrawal Successful | Hamster Kombat \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\xc2\xaa\xc3\xa0\xc2\xa5\\x88\xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa4\xc2\xbe \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa5\\x88\xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa5\\x87 Withdraw \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xb0\xc3\xa0\xc2\xa5\\x87 ?\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Hamster Kombat Withdrawal Successful | Hamster Kombat \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\xc2\xaa\xc3\xa0\xc2\xa5\\x88\xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa4\xc2\xbe \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa5\\x88\xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa5\\x87 Withdraw \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xb0\xc3\xa0\xc2\xa5\\x87 ? by Manoj Dey 448,946 views 2 days ago 6 minutes, 33 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Joining Link - https://t.me/hamstEr_kombat_bot/start?startapp=kentId5325436803\\n\\nPart 1 Video - https://youtu.be/EC0djBtl4Vg?si=U_hMeMJ-k6AFog93\\n\\nFOLLOW ME ON:\\n\xc3\xb0\\x9f\\x93\xc2\xb8 Instagram: https://instagram.com/...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Manoj Dey\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CLEDENwwGA0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ManojDey\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCT2xzagsBVtStUCA2ulvKmQ\', \'canonicalBaseUrl\': \'/@ManojDey\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'6 minutes, 33 seconds\'}}, \'simpleText\': \'6:33\'}, \'viewCountText\': {\'simpleText\': \'448,946 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CLEDENwwGA0iEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=ltAbK1EhW3s\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'ltAbK1EhW3s\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr3---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=96d01b2b51215b7b&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CLEDENwwGA0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Manoj Dey\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CLEDENwwGA0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ManojDey\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCT2xzagsBVtStUCA2ulvKmQ\', \'canonicalBaseUrl\': \'/@ManojDey\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Manoj Dey\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CLEDENwwGA0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ManojDey\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCT2xzagsBVtStUCA2ulvKmQ\', \'canonicalBaseUrl\': \'/@ManojDey\'}}}]}, \'trackingParams\': \'CLEDENwwGA0iEwiGsb7oo8OHAxWCi9gFHTJaAFVA-7aFibXlhuiWAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'448K views\'}}, \'simpleText\': \'448K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CLUDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CLUDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'ltAbK1EhW3s\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CLUDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'ltAbK1EhW3s\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'ltAbK1EhW3s\']}}]}}, \'trackingParams\': \'CLUDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CLEDENwwGA0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtsdEFiSzFFaFczcw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CLEDENwwGA0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CLQDEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CLEDENwwGA0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CLEDENwwGA0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_lLkEfWaXwrWypl4d7tEWiz-s8JzPSqKvXGn25qh9IgNF0=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CLEDENwwGA0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ManojDey\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCT2xzagsBVtStUCA2ulvKmQ\', \'canonicalBaseUrl\': \'/@ManojDey\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'6 minutes, 33 seconds\'}}, \'simpleText\': \'6:33\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CLMDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'ltAbK1EhW3s\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CLMDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'ltAbK1EhW3s\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CLMDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CLIDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CLIDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'ltAbK1EhW3s\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CLIDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'ltAbK1EhW3s\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'ltAbK1EhW3s\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CLIDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_lLkEfWaXwrWypl4d7tEWiz-s8JzPSqKvXGn25qh9IgNF0=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CLEDENwwGA0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ManojDey\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCT2xzagsBVtStUCA2ulvKmQ\', \'canonicalBaseUrl\': \'/@ManojDey\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'NvFshE8GjEI\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/NvFshE8GjEI/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLBoLpc8bF9Vk_alIT2R9fpHq4gpqQ\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/NvFshE8GjEI/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBwVJVEwHtkNum-6_-cZtNpbwbqjA\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/NvFshE8GjEI/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCEjSaI5xAxhbvFWU5RvFCRoQxJKg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315121, \'section3Color\': 15919591, \'primaryTitleColor\': 1643024, \'secondaryTitleColor\': 8017487, \'section4Color\': 15458525}, \'darkColorPalette\': {\'section2Color\': 3349271, \'section3Color\': 2495505, \'primaryTitleColor\': 16771557, \'secondaryTitleColor\': 13413027, \'section4Color\': 1641739}}, \'title\': {\'runs\': [{\'text\': \'New Evo Parafal Max Lvl Solo Vs Squad Gameplay | Badge99\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'New Evo Parafal Max Lvl Solo Vs Squad Gameplay | Badge99 by Badge 99 292,721 views 1 day ago 13 minutes, 38 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'New Evo Parafal Max Lvl Solo Vs Squad Gameplay | Badge99\\n\\nMy Instagram \xc3\xa2\\x96\xc2\xba https://www.instagram.com/badge_99/\\n\\nTwitter \xc3\xa2\\x96\xc2\xba https://twitter.com/Badge99_\\nFacebook \xc3\xa2\\x96\xc2\xba https://fb.me/badge99yt...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Badge 99\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CKwDENwwGA4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@Badge99ff\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCPhZzHKo3Y5YYoazMQWuLTg\', \'canonicalBaseUrl\': \'/@Badge99ff\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'1 day ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'13 minutes, 38 seconds\'}}, \'simpleText\': \'13:38\'}, \'viewCountText\': {\'simpleText\': \'292,721 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CKwDENwwGA4iEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=NvFshE8GjEI\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'NvFshE8GjEI\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr3---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=36f16c844f068c42&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CKwDENwwGA4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Badge 99\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CKwDENwwGA4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@Badge99ff\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCPhZzHKo3Y5YYoazMQWuLTg\', \'canonicalBaseUrl\': \'/@Badge99ff\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Badge 99\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CKwDENwwGA4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@Badge99ff\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCPhZzHKo3Y5YYoazMQWuLTg\', \'canonicalBaseUrl\': \'/@Badge99ff\'}}}]}, \'trackingParams\': \'CKwDENwwGA4iEwiGsb7oo8OHAxWCi9gFHTJaAFVAwpia-MSQ2_g2\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'292K views\'}}, \'simpleText\': \'292K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CLADEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CLADEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'NvFshE8GjEI\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CLADEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'NvFshE8GjEI\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'NvFshE8GjEI\']}}]}}, \'trackingParams\': \'CLADEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CKwDENwwGA4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtOdkZzaEU4R2pFSQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CKwDENwwGA4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CK8DEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CKwDENwwGA4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CKwDENwwGA4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_m1JGhbBG2Pvjoo6GkT35X7Wg0tnWWVUORQADsc4QqOT-o=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CKwDENwwGA4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@Badge99ff\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCPhZzHKo3Y5YYoazMQWuLTg\', \'canonicalBaseUrl\': \'/@Badge99ff\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'13 minutes, 38 seconds\'}}, \'simpleText\': \'13:38\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CK4DEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'NvFshE8GjEI\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CK4DEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'NvFshE8GjEI\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CK4DEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CK0DEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CK0DEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'NvFshE8GjEI\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CK0DEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'NvFshE8GjEI\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'NvFshE8GjEI\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CK0DEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_m1JGhbBG2Pvjoo6GkT35X7Wg0tnWWVUORQADsc4QqOT-o=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CKwDENwwGA4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@Badge99ff\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCPhZzHKo3Y5YYoazMQWuLTg\', \'canonicalBaseUrl\': \'/@Badge99ff\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'IOpjcKzqNhs\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/IOpjcKzqNhs/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLDMx97AqGSUDO6kyOBdbZQ1pipohQ\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/IOpjcKzqNhs/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLB11YfzWFW5LyC3WoLURqHyya-sjw\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/IOpjcKzqNhs/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCosQlFd7mulTNaespa7IIWAHR8lA\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16250871, \'section3Color\': 15724527, \'primaryTitleColor\': 1644825, \'secondaryTitleColor\': 6645093, \'section4Color\': 15263976}, \'darkColorPalette\': {\'section2Color\': 3355443, \'section3Color\': 2500134, \'primaryTitleColor\': 16777215, \'secondaryTitleColor\': 13421772, \'section4Color\': 1644825}}, \'title\': {\'runs\': [{\'text\': \'What Villager Hide in His Inventory in Minecraft\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'What Villager Hide in His Inventory in Minecraft by Adi-Spot 512,262 views 2 days ago 10 minutes, 33 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'What Villager Hide in His Inventory in Minecraft\\n\\n\\nMy Second Channel @Blazzy... \\n\\n\xc3\xa2\\x96\xc2\xac\xc3\xa2\\x96\xc2\xac\xc3\xa2\\x96\xc2\xac\xc3\xa2\\x96\xc2\xac\xc3\xa2\\x96\xc2\xac\xc3\xa2\\x96\xc2\xac\xc3\xa2\\x96\xc2\xac\xc3\xa2\\x96\xc2\xac\xc3\xa2\\x96\xc2\xac\xc3\xa2\\x96\xc2\xac\xc3\xa2\\x96\xc2\xac\xc3\xa2\\x96\xc2\xac\xc3\xa2\\x96\xc2\xac\\nSocial Media :\\n\\nFollow karlo jaldi sai :)\\nhttps://www.instagram.com/adisp...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Adi-Spot\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CKcDENwwGA8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AdiSpot\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCxm-rmArnUkNc-Lpf5s6X8g\', \'canonicalBaseUrl\': \'/@AdiSpot\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'10 minutes, 33 seconds\'}}, \'simpleText\': \'10:33\'}, \'viewCountText\': {\'simpleText\': \'512,262 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CKcDENwwGA8iEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=IOpjcKzqNhs\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'IOpjcKzqNhs\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr1---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=20ea6370acea361b&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CKcDENwwGA8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Adi-Spot\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CKcDENwwGA8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AdiSpot\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCxm-rmArnUkNc-Lpf5s6X8g\', \'canonicalBaseUrl\': \'/@AdiSpot\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Adi-Spot\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CKcDENwwGA8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AdiSpot\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCxm-rmArnUkNc-Lpf5s6X8g\', \'canonicalBaseUrl\': \'/@AdiSpot\'}}}]}, \'trackingParams\': \'CKcDENwwGA8iEwiGsb7oo8OHAxWCi9gFHTJaAFVAm-yo54rumPUg\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'512K views\'}}, \'simpleText\': \'512K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CKsDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CKsDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'IOpjcKzqNhs\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CKsDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'IOpjcKzqNhs\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'IOpjcKzqNhs\']}}]}}, \'trackingParams\': \'CKsDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CKcDENwwGA8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtJT3BqY0t6cU5ocw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CKcDENwwGA8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CKoDEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CKcDENwwGA8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CKcDENwwGA8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/5AIANn5GsWevl-bEfnSJ09z3HFEx2S1amog17T671BiKyfVAXd2AYIbc3BPTXO4hKmiSxqIY=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CKcDENwwGA8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AdiSpot\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCxm-rmArnUkNc-Lpf5s6X8g\', \'canonicalBaseUrl\': \'/@AdiSpot\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'10 minutes, 33 seconds\'}}, \'simpleText\': \'10:33\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CKkDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'IOpjcKzqNhs\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CKkDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'IOpjcKzqNhs\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CKkDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CKgDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CKgDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'IOpjcKzqNhs\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CKgDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'IOpjcKzqNhs\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'IOpjcKzqNhs\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CKgDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/5AIANn5GsWevl-bEfnSJ09z3HFEx2S1amog17T671BiKyfVAXd2AYIbc3BPTXO4hKmiSxqIY=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CKcDENwwGA8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AdiSpot\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCxm-rmArnUkNc-Lpf5s6X8g\', \'canonicalBaseUrl\': \'/@AdiSpot\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'csD9NAgPcRA\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/csD9NAgPcRA/hqdefault.jpg?sqp=-oaymwE8CNIBEHZIWvKriqkDLwgBFQAAAAAYASUAAMhCPQCAokN4AfABAfgB_gmAAtAFigIMCAAQARhlIFYoUzAP&rs=AOn4CLDCO8F4dj-24wbWBtdUOFu9g39m5g\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/csD9NAgPcRA/hqdefault.jpg?sqp=-oaymwE9CPYBEIoBSFryq4qpAy8IARUAAAAAGAElAADIQj0AgKJDeAHwAQH4Af4JgALQBYoCDAgAEAEYZSBWKFMwDw==&rs=AOn4CLB1E7pgX6tY6KqNLM5SjcaFP-rAlg\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/csD9NAgPcRA/hqdefault.jpg?sqp=-oaymwE9CNACELwBSFryq4qpAy8IARUAAAAAGAElAADIQj0AgKJDeAHwAQH4Af4JgALQBYoCDAgAEAEYZSBWKFMwDw==&rs=AOn4CLA0if8z4q5lJv5sDXkZ2dW7IM2Frg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315121, \'section3Color\': 15919591, \'primaryTitleColor\': 1643796, \'secondaryTitleColor\': 7035735, \'section4Color\': 15458525}, \'darkColorPalette\': {\'section2Color\': 3353385, \'section3Color\': 2498591, \'primaryTitleColor\': 16771557, \'secondaryTitleColor\': 13413799, \'section4Color\': 1643796}}, \'title\': {\'runs\': [{\'text\': \'Tishaa Kumar Death Reason | Tishaa Kumar Funeral | Tishaa Kumar Cancer News|Tishaa Kumar Passes Away\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Tishaa Kumar Death Reason | Tishaa Kumar Funeral | Tishaa Kumar Cancer News|Tishaa Kumar Passes Away by FilmiBeat 545,583 views 2 days ago 4 minutes, 27 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': "Tishaa Kumar RIP: Bhushan Kumar\'s Cousin Passes Away At 21 After Battling With Cancer. Bhushan Kumar Cousin Tishaa Kumar Funeral, Mother\'s condition after seeing daughter\'s dead body. Dead..."}]}, \'longBylineText\': {\'runs\': [{\'text\': \'FilmiBeat\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CKIDENwwGBAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@filmibeat\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCsaoYBUHz_lVB_dOmFwA9Zw\', \'canonicalBaseUrl\': \'/@filmibeat\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'4 minutes, 27 seconds\'}}, \'simpleText\': \'4:27\'}, \'viewCountText\': {\'simpleText\': \'545,583 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CKIDENwwGBAiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=csD9NAgPcRA\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'csD9NAgPcRA\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr2---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=72c0fd34080f7110&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CKIDENwwGBAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'FilmiBeat\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CKIDENwwGBAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@filmibeat\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCsaoYBUHz_lVB_dOmFwA9Zw\', \'canonicalBaseUrl\': \'/@filmibeat\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'FilmiBeat\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CKIDENwwGBAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@filmibeat\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCsaoYBUHz_lVB_dOmFwA9Zw\', \'canonicalBaseUrl\': \'/@filmibeat\'}}}]}, \'trackingParams\': \'CKIDENwwGBAiEwiGsb7oo8OHAxWCi9gFHTJaAFVAkOK9wMCmv-By\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'545K views\'}}, \'simpleText\': \'545K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CKYDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CKYDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'csD9NAgPcRA\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CKYDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'csD9NAgPcRA\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'csD9NAgPcRA\']}}]}}, \'trackingParams\': \'CKYDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CKIDENwwGBAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'Cgtjc0Q5TkFnUGNSQQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CKIDENwwGBAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CKUDEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CKIDENwwGBAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CKIDENwwGBAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/BXqPHu0uA_kZcazrRMwixHrnXJWU8SmmC05nejKT72f6E6B2Lj-9fg3HZOf_KPFB5E_QCka8=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CKIDENwwGBAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@filmibeat\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCsaoYBUHz_lVB_dOmFwA9Zw\', \'canonicalBaseUrl\': \'/@filmibeat\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'4 minutes, 27 seconds\'}}, \'simpleText\': \'4:27\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CKQDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'csD9NAgPcRA\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CKQDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'csD9NAgPcRA\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CKQDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CKMDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CKMDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'csD9NAgPcRA\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CKMDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'csD9NAgPcRA\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'csD9NAgPcRA\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CKMDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/BXqPHu0uA_kZcazrRMwixHrnXJWU8SmmC05nejKT72f6E6B2Lj-9fg3HZOf_KPFB5E_QCka8=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CKIDENwwGBAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@filmibeat\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCsaoYBUHz_lVB_dOmFwA9Zw\', \'canonicalBaseUrl\': \'/@filmibeat\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'wZ89Zg3_Ubo\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/wZ89Zg3_Ubo/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLAngW4GLKn1oESyovuPe5iEdgy3rw\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/wZ89Zg3_Ubo/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLAw0bESxCgFJH09X0QDzy2NJabAlA\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/wZ89Zg3_Ubo/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLD_mSZZg0aDHxEucceXAd1JJE8BZw\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16314865, \'section3Color\': 15919080, \'primaryTitleColor\': 1642513, \'secondaryTitleColor\': 8344150, \'section4Color\': 15457758}, \'darkColorPalette\': {\'section2Color\': 3344139, \'section3Color\': 2491656, \'primaryTitleColor\': 16770535, \'secondaryTitleColor\': 13411238, \'section4Color\': 1639173}}, \'title\': {\'runs\': [{\'text\': \'Nepal Crash Sole Survivor Rose From Ashes As Others Perish | Rare Details Of Kathmandu Tragedy\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Nepal Crash Sole Survivor Rose From Ashes As Others Perish | Rare Details Of Kathmandu Tragedy by Times Of India 466,304 views 1 day ago 3 minutes, 17 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'The Kathmandu airport plane crash had a sole survivor. The aircraft, carrying 2 crew members and 17 technicians, crashed while taking off. The lone survivor, Captain Manish Ratna Shakya, a...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Times Of India\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJ0DENwwGBEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@timesofindia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCckHqySbfy5FcPP6MD_S-Yg\', \'canonicalBaseUrl\': \'/@timesofindia\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'1 day ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3 minutes, 17 seconds\'}}, \'simpleText\': \'3:17\'}, \'viewCountText\': {\'simpleText\': \'466,304 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CJ0DENwwGBEiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=wZ89Zg3_Ubo\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'wZ89Zg3_Ubo\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr2---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=c19f3d660dff51ba&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CJ0DENwwGBEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Times Of India\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJ0DENwwGBEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@timesofindia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCckHqySbfy5FcPP6MD_S-Yg\', \'canonicalBaseUrl\': \'/@timesofindia\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Times Of India\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJ0DENwwGBEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@timesofindia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCckHqySbfy5FcPP6MD_S-Yg\', \'canonicalBaseUrl\': \'/@timesofindia\'}}}]}, \'trackingParams\': \'CJ0DENwwGBEiEwiGsb7oo8OHAxWCi9gFHTJaAFVAuqP97-Csz8_BAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'466K views\'}}, \'simpleText\': \'466K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CKEDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CKEDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'wZ89Zg3_Ubo\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CKEDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'wZ89Zg3_Ubo\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'wZ89Zg3_Ubo\']}}]}}, \'trackingParams\': \'CKEDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CJ0DENwwGBEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'Cgt3Wjg5WmczX1Vibw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CJ0DENwwGBEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CKADEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CJ0DENwwGBEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CJ0DENwwGBEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/VbGkSvLpAmSOVxSQ-42YlR4uQjaRbADrBZ0Jbm8rpeI7RiFSEp2_8DJqzgqH4dWViwYOQy2QJnQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CJ0DENwwGBEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@timesofindia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCckHqySbfy5FcPP6MD_S-Yg\', \'canonicalBaseUrl\': \'/@timesofindia\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3 minutes, 17 seconds\'}}, \'simpleText\': \'3:17\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CJ8DEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'wZ89Zg3_Ubo\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CJ8DEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'wZ89Zg3_Ubo\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CJ8DEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CJ4DEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CJ4DEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'wZ89Zg3_Ubo\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CJ4DEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'wZ89Zg3_Ubo\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'wZ89Zg3_Ubo\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CJ4DEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/VbGkSvLpAmSOVxSQ-42YlR4uQjaRbADrBZ0Jbm8rpeI7RiFSEp2_8DJqzgqH4dWViwYOQy2QJnQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CJ0DENwwGBEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@timesofindia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCckHqySbfy5FcPP6MD_S-Yg\', \'canonicalBaseUrl\': \'/@timesofindia\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'qCm69ALv0U0\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/qCm69ALv0U0/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLAxCMFib6An8CElkCwpuCwMqr_t6A\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/qCm69ALv0U0/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCjAGr46UPeytCk38JZYMFNtbzd5w\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/qCm69ALv0U0/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCtrxTogHEp7fGk50WmV97PmLlHGw\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15856120, \'section3Color\': 15198450, \'primaryTitleColor\': 1052953, \'secondaryTitleColor\': 5659268, \'section4Color\': 14540779}, \'darkColorPalette\': {\'section2Color\': 1119539, \'section3Color\': 855846, \'primaryTitleColor\': 15067391, \'secondaryTitleColor\': 10725324, \'section4Color\': 526873}}, \'title\': {\'runs\': [{\'text\': \'BSNL New 4G Sim Testing - Better Than Jio & Airtel?? | My Experience\xc3\xb0\\x9f\\x98\xc2\xb1 !\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'BSNL New 4G Sim Testing - Better Than Jio & Airtel?? | My Experience\xc3\xb0\\x9f\\x98\xc2\xb1 ! by Techno Ruhez 340,977 views 2 days ago 7 minutes, 35 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'BSNL New 4G Sim Testing \\nHello Dosto is video me maine aap logo ko BSNL New 4G k bare me Full Details diya hu, Umeed hai aapko video pasand aayegi\\n\\n#bsnl #bsnl4g #bsnl_plans #technoruhez...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Techno Ruhez\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJgDENwwGBIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TechnoRuhez\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC8vlDm5xvbxOrCvdu9UNOiA\', \'canonicalBaseUrl\': \'/@TechnoRuhez\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'7 minutes, 35 seconds\'}}, \'simpleText\': \'7:35\'}, \'viewCountText\': {\'simpleText\': \'340,977 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CJgDENwwGBIiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=qCm69ALv0U0\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'qCm69ALv0U0\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr3---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=a829baf402efd14d&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CJgDENwwGBIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Techno Ruhez\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJgDENwwGBIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TechnoRuhez\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC8vlDm5xvbxOrCvdu9UNOiA\', \'canonicalBaseUrl\': \'/@TechnoRuhez\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Techno Ruhez\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJgDENwwGBIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TechnoRuhez\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC8vlDm5xvbxOrCvdu9UNOiA\', \'canonicalBaseUrl\': \'/@TechnoRuhez\'}}}]}, \'trackingParams\': \'CJgDENwwGBIiEwiGsb7oo8OHAxWCi9gFHTJaAFVAzaK_l8De7pSoAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'340K views\'}}, \'simpleText\': \'340K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CJwDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CJwDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'qCm69ALv0U0\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CJwDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'qCm69ALv0U0\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'qCm69ALv0U0\']}}]}}, \'trackingParams\': \'CJwDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CJgDENwwGBIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtxQ202OUFMdjBVMA%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CJgDENwwGBIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CJsDEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CJgDENwwGBIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CJgDENwwGBIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_mqeNLs7gdh0NEmiY8MbBJuyyk_KGBQmbM5b1U6BEcZoyQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CJgDENwwGBIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TechnoRuhez\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC8vlDm5xvbxOrCvdu9UNOiA\', \'canonicalBaseUrl\': \'/@TechnoRuhez\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'7 minutes, 35 seconds\'}}, \'simpleText\': \'7:35\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CJoDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'qCm69ALv0U0\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CJoDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'qCm69ALv0U0\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CJoDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CJkDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CJkDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'qCm69ALv0U0\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CJkDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'qCm69ALv0U0\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'qCm69ALv0U0\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CJkDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_mqeNLs7gdh0NEmiY8MbBJuyyk_KGBQmbM5b1U6BEcZoyQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CJgDENwwGBIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TechnoRuhez\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC8vlDm5xvbxOrCvdu9UNOiA\', \'canonicalBaseUrl\': \'/@TechnoRuhez\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'f1FobBUfz1s\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/f1FobBUfz1s/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLCduZD7zN8o-d_4EOG72cnYuHsGyw\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/f1FobBUfz1s/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCTmP6rnrFC-ldeFhyBrKLqVG0PFA\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/f1FobBUfz1s/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLAF-xUxI7yrLhINdlrcPXMrPDykuQ\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315633, \'section3Color\': 15920359, \'primaryTitleColor\': 1643536, \'secondaryTitleColor\': 7691852, \'section4Color\': 15459549}, \'darkColorPalette\': {\'section2Color\': 3350287, \'section3Color\': 2496267, \'primaryTitleColor\': 16773349, \'secondaryTitleColor\': 13415843, \'section4Color\': 1642247}}, \'title\': {\'runs\': [{\'text\': \'Kabhi Main Kabhi Tum Episode 5 | Fahad Mustafa | Hania Aamir | 22 July 2024 (Eng Sub) ARY Digital\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Kabhi Main Kabhi Tum Episode 5 | Fahad Mustafa | Hania Aamir | 22 July 2024 (Eng Sub) ARY Digital by ARY Digital HD 5,145,240 views 3 days ago 42 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Kabhi Main Kabhi Tum | Episode 5 | Digitally Presented by Master Paints , Food Panda , Sunsilk & Skin White | Fahad Mustafa | Hania Aamir | 22 July 2024 | ARY Digital Drama \\n\\nThe drama revolves...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'ARY Digital HD\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJMDENwwGBMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ARYDigitalasia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC4JCksJF76g_MdzPVBJoC3Q\', \'canonicalBaseUrl\': \'/@ARYDigitalasia\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'3 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'42 minutes, 45 seconds\'}}, \'simpleText\': \'42:45\'}, \'viewCountText\': {\'simpleText\': \'5,145,240 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CJMDENwwGBMiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=f1FobBUfz1s\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'f1FobBUfz1s\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr2---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=7f51686c151fcf5b&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CJMDENwwGBMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'ARY Digital HD\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJMDENwwGBMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ARYDigitalasia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC4JCksJF76g_MdzPVBJoC3Q\', \'canonicalBaseUrl\': \'/@ARYDigitalasia\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'ARY Digital HD\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJMDENwwGBMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ARYDigitalasia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC4JCksJF76g_MdzPVBJoC3Q\', \'canonicalBaseUrl\': \'/@ARYDigitalasia\'}}}]}, \'trackingParams\': \'CJMDENwwGBMiEwiGsb7oo8OHAxWCi9gFHTJaAFVA257_qMGN2qh_\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'5.1 million views\'}}, \'simpleText\': \'5.1M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CJcDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CJcDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'f1FobBUfz1s\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CJcDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'f1FobBUfz1s\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'f1FobBUfz1s\']}}]}}, \'trackingParams\': \'CJcDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CJMDENwwGBMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtmMUZvYkJVZnoxcw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CJMDENwwGBMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CJYDEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CJMDENwwGBMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CJMDENwwGBMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/QhOVHhLgg5wFu4H4gA9qOVoavng-T2xoA62cXVV-dk-j8phnED3P8whca8CETo0GuAVhQgtO=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CJMDENwwGBMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ARYDigitalasia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC4JCksJF76g_MdzPVBJoC3Q\', \'canonicalBaseUrl\': \'/@ARYDigitalasia\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'42 minutes, 45 seconds\'}}, \'simpleText\': \'42:45\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CJUDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'f1FobBUfz1s\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CJUDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'f1FobBUfz1s\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CJUDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CJQDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CJQDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'f1FobBUfz1s\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CJQDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'f1FobBUfz1s\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'f1FobBUfz1s\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CJQDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/QhOVHhLgg5wFu4H4gA9qOVoavng-T2xoA62cXVV-dk-j8phnED3P8whca8CETo0GuAVhQgtO=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CJMDENwwGBMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ARYDigitalasia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC4JCksJF76g_MdzPVBJoC3Q\', \'canonicalBaseUrl\': \'/@ARYDigitalasia\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'dyY4uSb4E2A\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/dyY4uSb4E2A/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLAL40mM1KNnTxJGF7yY6LqhnHGsTw\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/dyY4uSb4E2A/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLA_Z8Y0-84SwoW2B5cIgn7iizv33g\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/dyY4uSb4E2A/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDK8Wb31RVxYyNoUhfz--NkHSytCg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16314867, \'section3Color\': 15919082, \'primaryTitleColor\': 1642515, \'secondaryTitleColor\': 8344159, \'section4Color\': 15457761}, \'darkColorPalette\': {\'section2Color\': 3344404, \'section3Color\': 2491919, \'primaryTitleColor\': 16770540, \'secondaryTitleColor\': 13411246, \'section4Color\': 1639434}}, \'title\': {\'runs\': [{\'text\': \'How Good was the Budget? In-depth Review and Explanation!\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'How Good was the Budget? In-depth Review and Explanation! by pranjal kamra 229,174 views 2 days ago 11 minutes, 40 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'In this video, I will explain the major changes in the Union Budget 2024-25 in 3 to 4 segments. I will not only cover the budget backstory but also the reasons behind these changes.\\n\\n--------------...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'pranjal kamra\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CI4DENwwGBQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@pranjalkamra\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCwAdQUuPT6laN-AQR17fe1g\', \'canonicalBaseUrl\': \'/@pranjalkamra\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'11 minutes, 40 seconds\'}}, \'simpleText\': \'11:40\'}, \'viewCountText\': {\'simpleText\': \'229,174 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CI4DENwwGBQiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=dyY4uSb4E2A\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'dyY4uSb4E2A\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr1---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=772638b926f81360&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CI4DENwwGBQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'pranjal kamra\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CI4DENwwGBQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@pranjalkamra\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCwAdQUuPT6laN-AQR17fe1g\', \'canonicalBaseUrl\': \'/@pranjalkamra\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'pranjal kamra\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CI4DENwwGBQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@pranjalkamra\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCwAdQUuPT6laN-AQR17fe1g\', \'canonicalBaseUrl\': \'/@pranjalkamra\'}}}]}, \'trackingParams\': \'CI4DENwwGBQiEwiGsb7oo8OHAxWCi9gFHTJaAFVA4Kbgt5KXjpN3\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'229K views\'}}, \'simpleText\': \'229K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CJIDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CJIDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'dyY4uSb4E2A\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CJIDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'dyY4uSb4E2A\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'dyY4uSb4E2A\']}}]}}, \'trackingParams\': \'CJIDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CI4DENwwGBQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtkeVk0dVNiNEUyQQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CI4DENwwGBQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CJEDEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CI4DENwwGBQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CI4DENwwGBQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/s-bTyc4XP0dfybkL7Cw2iKdS5RJswGTMPgdKe1mARRTUd3Kz6v-ZkZLz0FEWWk1yV6dVX2I9aA=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CI4DENwwGBQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@pranjalkamra\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCwAdQUuPT6laN-AQR17fe1g\', \'canonicalBaseUrl\': \'/@pranjalkamra\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'11 minutes, 40 seconds\'}}, \'simpleText\': \'11:40\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CJADEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'dyY4uSb4E2A\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CJADEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'dyY4uSb4E2A\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CJADEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CI8DEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CI8DEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'dyY4uSb4E2A\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CI8DEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'dyY4uSb4E2A\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'dyY4uSb4E2A\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CI8DEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/s-bTyc4XP0dfybkL7Cw2iKdS5RJswGTMPgdKe1mARRTUd3Kz6v-ZkZLz0FEWWk1yV6dVX2I9aA=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CI4DENwwGBQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@pranjalkamra\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCwAdQUuPT6laN-AQR17fe1g\', \'canonicalBaseUrl\': \'/@pranjalkamra\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'PxBR17orfRc\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/PxBR17orfRc/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLCnjNMy4F3JU6SphFCky1Rggxu2Dg\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/PxBR17orfRc/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLD1CXcL8jxjgQYm8LCAh31wDJe7zQ\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/PxBR17orfRc/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDeXm5oF-cbI4tRjnZ0SANANGkxIA\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16250871, \'section3Color\': 15724527, \'primaryTitleColor\': 1644825, \'secondaryTitleColor\': 6645093, \'section4Color\': 15263976}, \'darkColorPalette\': {\'section2Color\': 2500134, \'section3Color\': 1644825, \'primaryTitleColor\': 16777215, \'secondaryTitleColor\': 13421772, \'section4Color\': 789516}}, \'title\': {\'runs\': [{\'text\': \'Suriya 44 | Birthday Promo | Suriya | Karthik Subbaraj | Pooja Hegde | Santhosh Narayanan\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Suriya 44 | Birthday Promo | Suriya | Karthik Subbaraj | Pooja Hegde | Santhosh Narayanan by 2D Entertainment 2,440,641 views 2 days ago 1 minute, 37 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Suriya 44 | Birthday Promo | Suriya | Karthik Subbaraj | Pooja Hegde | Santhosh Narayanan\\n\\nCast & Crew :\\n\\nDirected by Karthik Subbaraj\\nCast : Suriya, Pooja Hegde, Joju George, Jayaram, Karunakaran...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'2D Entertainment\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CIkDENwwGBUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@2DMusic\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCj6rqKA33Ywu2GTFRDxHhnA\', \'canonicalBaseUrl\': \'/@2DMusic\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'1 minute, 37 seconds\'}}, \'simpleText\': \'1:37\'}, \'viewCountText\': {\'simpleText\': \'2,440,641 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CIkDENwwGBUiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=PxBR17orfRc\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'PxBR17orfRc\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr3---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=3f1051d7ba2b7d17&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CIkDENwwGBUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'2D Entertainment\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CIkDENwwGBUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@2DMusic\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCj6rqKA33Ywu2GTFRDxHhnA\', \'canonicalBaseUrl\': \'/@2DMusic\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'2D Entertainment\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CIkDENwwGBUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@2DMusic\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCj6rqKA33Ywu2GTFRDxHhnA\', \'canonicalBaseUrl\': \'/@2DMusic\'}}}]}, \'trackingParams\': \'CIkDENwwGBUiEwiGsb7oo8OHAxWCi9gFHTJaAFVAl_qt0fu6lIg_\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'2.4 million views\'}}, \'simpleText\': \'2.4M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CI0DEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CI0DEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'PxBR17orfRc\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CI0DEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'PxBR17orfRc\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'PxBR17orfRc\']}}]}}, \'trackingParams\': \'CI0DEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CIkDENwwGBUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtQeEJSMTdvcmZSYw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CIkDENwwGBUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CIwDEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CIkDENwwGBUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CIkDENwwGBUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_mVecr4yj_pkjR-EZzh4i7K6ULbMSQLzpti7DQ0Xp7u2A=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CIkDENwwGBUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@2DMusic\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCj6rqKA33Ywu2GTFRDxHhnA\', \'canonicalBaseUrl\': \'/@2DMusic\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'1 minute, 37 seconds\'}}, \'simpleText\': \'1:37\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CIsDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'PxBR17orfRc\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CIsDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'PxBR17orfRc\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CIsDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CIoDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CIoDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'PxBR17orfRc\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CIoDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'PxBR17orfRc\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'PxBR17orfRc\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CIoDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_mVecr4yj_pkjR-EZzh4i7K6ULbMSQLzpti7DQ0Xp7u2A=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CIkDENwwGBUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@2DMusic\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCj6rqKA33Ywu2GTFRDxHhnA\', \'canonicalBaseUrl\': \'/@2DMusic\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'xiYjs_JPFg4\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/xiYjs_JPFg4/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLDq2IhFWRXGJT8Z3W7_dyuibj2PNQ\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/xiYjs_JPFg4/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDyNqji0J7nQHj4zBGBEO4Zo4mF1A\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/xiYjs_JPFg4/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLB873-jMNp-BWMe5chk4S2zs8DdSA\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15857400, \'section3Color\': 15200242, \'primaryTitleColor\': 1054489, \'secondaryTitleColor\': 4745072, \'section4Color\': 14543083}, \'darkColorPalette\': {\'section2Color\': 597798, \'section3Color\': 398617, \'primaryTitleColor\': 15071743, \'secondaryTitleColor\': 10732236, \'section4Color\': 199180}}, \'title\': {\'runs\': [{\'text\': \'HIGHLIGHTS | MAN CITY 3-4 CELTIC | Haaland, Bobb, Perone, Kuhn (2), Furuhashi, Palma Goals!\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'HIGHLIGHTS | MAN CITY 3-4 CELTIC | Haaland, Bobb, Perone, Kuhn (2), Furuhashi, Palma Goals! by Man City 2,975,500 views 1 day ago 8 minutes, 20 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': "Manchester City\'s pre-season tour of the United States began with a 4-3 defeat to Celtic in North Carolina.\\n\\nA first half brace from Nicolas Kuhn and smart Kyogo Furuhashi finish meant City..."}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Man City\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CIQDENwwGBYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@mancity\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCkzCjdRMrW2vXLx8mvPVLdQ\', \'canonicalBaseUrl\': \'/@mancity\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'1 day ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'8 minutes, 20 seconds\'}}, \'simpleText\': \'8:20\'}, \'viewCountText\': {\'simpleText\': \'2,975,500 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CIQDENwwGBYiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=xiYjs_JPFg4\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'xiYjs_JPFg4\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr5---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=c62623b3f24f160e&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CIQDENwwGBYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Man City\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CIQDENwwGBYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@mancity\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCkzCjdRMrW2vXLx8mvPVLdQ\', \'canonicalBaseUrl\': \'/@mancity\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Man City\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CIQDENwwGBYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@mancity\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCkzCjdRMrW2vXLx8mvPVLdQ\', \'canonicalBaseUrl\': \'/@mancity\'}}}]}, \'trackingParams\': \'CIQDENwwGBYiEwiGsb7oo8OHAxWCi9gFHTJaAFVAjqy8kr_2iJPGAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'2.9 million views\'}}, \'simpleText\': \'2.9M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CIgDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CIgDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'xiYjs_JPFg4\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CIgDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'xiYjs_JPFg4\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'xiYjs_JPFg4\']}}]}}, \'trackingParams\': \'CIgDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CIQDENwwGBYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'Cgt4aVlqc19KUEZnNA%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CIQDENwwGBYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CIcDEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CIQDENwwGBYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CIQDENwwGBYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/U9x-_BMoXJBPf9RWEab_TEu2TX1o1plDjeY52_BQVshkLYDtiQkCo3MVZsmq5X0gf0cTvRkFig=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CIQDENwwGBYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@mancity\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCkzCjdRMrW2vXLx8mvPVLdQ\', \'canonicalBaseUrl\': \'/@mancity\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'8 minutes, 20 seconds\'}}, \'simpleText\': \'8:20\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CIYDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'xiYjs_JPFg4\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CIYDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'xiYjs_JPFg4\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CIYDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CIUDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CIUDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'xiYjs_JPFg4\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CIUDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'xiYjs_JPFg4\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'xiYjs_JPFg4\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CIUDEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/U9x-_BMoXJBPf9RWEab_TEu2TX1o1plDjeY52_BQVshkLYDtiQkCo3MVZsmq5X0gf0cTvRkFig=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CIQDENwwGBYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@mancity\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCkzCjdRMrW2vXLx8mvPVLdQ\', \'canonicalBaseUrl\': \'/@mancity\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'Q6oDwoDsmyo\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/Q6oDwoDsmyo/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLB0ykM0AqXHYVqv7aqCV_LATvMZ1A\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/Q6oDwoDsmyo/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDnE1Q5z8XmGL3m_hr9OR9WAYuRvA\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/Q6oDwoDsmyo/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLAE3FaGazv_72PEy0AesTVYAFGPzQ\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15857910, \'section3Color\': 15201007, \'primaryTitleColor\': 1120535, \'secondaryTitleColor\': 4746082, \'section4Color\': 14543848}, \'darkColorPalette\': {\'section2Color\': 1648163, \'section3Color\': 1120535, \'primaryTitleColor\': 15073273, \'secondaryTitleColor\': 10734786, \'section4Color\': 527371}}, \'title\': {\'runs\': [{\'text\': \'\xc3\xa2\\x80\\x98True Face Of Fascist Govt\xc3\xa2\\x80\\x99: Abhishek Banerjee Delivers Fiery Speech In Lok Sabha On Union Budget\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'\xc3\xa2\\x80\\x98True Face Of Fascist Govt\xc3\xa2\\x80\\x99: Abhishek Banerjee Delivers Fiery Speech In Lok Sabha On Union Budget by HW News Network 38,145 views 1 day ago 38 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'All India Trinamool Congress Lok Sabha Member of Parliament Abhishek Banerjee took a swipe at the Bharatiya Janata Party government in the Lower House. Mr. Banerjee in his speech talked about...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'HW News Network\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CP8CENwwGBciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@HWNewsNetwork\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCGbasSKN8Nbxv1IWAAq3kUA\', \'canonicalBaseUrl\': \'/@HWNewsNetwork\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'1 day ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'38 minutes, 8 seconds\'}}, \'simpleText\': \'38:08\'}, \'viewCountText\': {\'simpleText\': \'38,145 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CP8CENwwGBciEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=Q6oDwoDsmyo\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'Q6oDwoDsmyo\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr4---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=43aa03c280ec9b2a&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CP8CENwwGBciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'HW News Network\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CP8CENwwGBciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@HWNewsNetwork\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCGbasSKN8Nbxv1IWAAq3kUA\', \'canonicalBaseUrl\': \'/@HWNewsNetwork\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'HW News Network\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CP8CENwwGBciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@HWNewsNetwork\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCGbasSKN8Nbxv1IWAAq3kUA\', \'canonicalBaseUrl\': \'/@HWNewsNetwork\'}}}]}, \'trackingParams\': \'CP8CENwwGBciEwiGsb7oo8OHAxWCi9gFHTJaAFVAqrayh6j4gNVD\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'38K views\'}}, \'simpleText\': \'38K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CIMDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CIMDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'Q6oDwoDsmyo\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CIMDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'Q6oDwoDsmyo\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'Q6oDwoDsmyo\']}}]}}, \'trackingParams\': \'CIMDEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CP8CENwwGBciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtRNm9Ed29Ec215bw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CP8CENwwGBciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CIIDEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CP8CENwwGBciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CP8CENwwGBciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_nprmTFgC9Qw0iYBEzXMEOL9Bm7fmBEY7nCKliO1KIN2qc=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CP8CENwwGBciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@HWNewsNetwork\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCGbasSKN8Nbxv1IWAAq3kUA\', \'canonicalBaseUrl\': \'/@HWNewsNetwork\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'38 minutes, 8 seconds\'}}, \'simpleText\': \'38:08\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CIEDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'Q6oDwoDsmyo\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CIEDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'Q6oDwoDsmyo\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CIEDEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CIADEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CIADEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'Q6oDwoDsmyo\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CIADEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'Q6oDwoDsmyo\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'Q6oDwoDsmyo\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CIADEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_nprmTFgC9Qw0iYBEzXMEOL9Bm7fmBEY7nCKliO1KIN2qc=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CP8CENwwGBciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@HWNewsNetwork\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCGbasSKN8Nbxv1IWAAq3kUA\', \'canonicalBaseUrl\': \'/@HWNewsNetwork\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'15o_NjL93ig\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/15o_NjL93ig/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLBtfY6fLOZ7Xc_aLwmgwtRBIRqdRQ\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/15o_NjL93ig/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDzsV8aXHKQL3JsAYa_zfXlEPyD8g\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/15o_NjL93ig/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCBrc1dBLEdIrztrOMgWObirhKK9w\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15857911, \'section3Color\': 15201008, \'primaryTitleColor\': 1054999, \'secondaryTitleColor\': 4549476, \'section4Color\': 14543849}, \'darkColorPalette\': {\'section2Color\': 337440, \'section3Color\': 203029, \'primaryTitleColor\': 15073274, \'secondaryTitleColor\': 10734789, \'section4Color\': 68618}}, \'title\': {\'runs\': [{\'text\': \'Kolkata Protest: Student unions stage a protest amid the ongoing anti quota protests in Bangladesh\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Kolkata Protest: Student unions stage a protest amid the ongoing anti quota protests in Bangladesh by Sangbad Pratidin 3,088,229 views 6 days ago 5 minutes, 32 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': "Kolkata Protest: \'\xc3\xa0\xc2\xa6\\x96\xc3\xa0\xc2\xa7\\x81\xc3\xa0\xc2\xa6\xc2\xa8\xc3\xa0\xc2\xa6\xc2\xbf \xc3\xa0\xc2\xa6\xc2\xb9\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xb8\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\xc2\xa8\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\xc2\xb6\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xb8\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xa4\xc3\xa0\xc2\xa6\xc2\xbf \xc3\xa0\xc2\xa6\\x9a\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\\x87\', \xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\\x82\xc3\xa0\xc2\xa6\xc2\xb2\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xa6\xc3\xa0\xc2\xa7\\x87\xc3\xa0\xc2\xa6\xc2\xb6-\xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xb7\xc3\xa0\xc2\xa7\\x8b\xc3\xa0\xc2\xa6\\xad\xc3\xa0\xc2\xa7\\x87 \xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa6\xc2\xa3\xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xb7\xc3\xa0\xc2\xa7\\x87\xc3\xa0\xc2\xa6\xc2\xa4\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa7\\x83\xc3\xa0\xc2\xa6\xc2\xb7\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\\x9f\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\\xad\xc3\xa0\xc2\xa7\\x87\xc3\xa0\xc2\xa6\\x9c\xc3\xa0\xc2\xa6\xc2\xbe..."}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Sangbad Pratidin\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CPoCENwwGBgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SangbadPratidin\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCLPCvTftdZpZQSM-mckfqXQ\', \'canonicalBaseUrl\': \'/@SangbadPratidin\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'6 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'5 minutes, 32 seconds\'}}, \'simpleText\': \'5:32\'}, \'viewCountText\': {\'simpleText\': \'3,088,229 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CPoCENwwGBgiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=15o_NjL93ig\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'15o_NjL93ig\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr4---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=d79a3f3632fdde28&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CPoCENwwGBgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Sangbad Pratidin\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CPoCENwwGBgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SangbadPratidin\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCLPCvTftdZpZQSM-mckfqXQ\', \'canonicalBaseUrl\': \'/@SangbadPratidin\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Sangbad Pratidin\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CPoCENwwGBgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SangbadPratidin\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCLPCvTftdZpZQSM-mckfqXQ\', \'canonicalBaseUrl\': \'/@SangbadPratidin\'}}}]}, \'trackingParams\': \'CPoCENwwGBgiEwiGsb7oo8OHAxWCi9gFHTJaAFVAqLz3l-Pmj83XAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3 million views\'}}, \'simpleText\': \'3M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CP4CEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CP4CEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'15o_NjL93ig\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CP4CEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'15o_NjL93ig\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'15o_NjL93ig\']}}]}}, \'trackingParams\': \'CP4CEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CPoCENwwGBgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgsxNW9fTmpMOTNpZw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CPoCENwwGBgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CP0CEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CPoCENwwGBgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CPoCENwwGBgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_minbJIhJspwyQQfZwq2XPJyzKMZ5dobhPnR5D5yrF3VkY=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CPoCENwwGBgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SangbadPratidin\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCLPCvTftdZpZQSM-mckfqXQ\', \'canonicalBaseUrl\': \'/@SangbadPratidin\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'5 minutes, 32 seconds\'}}, \'simpleText\': \'5:32\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CPwCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'15o_NjL93ig\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CPwCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'15o_NjL93ig\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CPwCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CPsCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CPsCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'15o_NjL93ig\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CPsCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'15o_NjL93ig\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'15o_NjL93ig\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CPsCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_minbJIhJspwyQQfZwq2XPJyzKMZ5dobhPnR5D5yrF3VkY=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CPoCENwwGBgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SangbadPratidin\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCLPCvTftdZpZQSM-mckfqXQ\', \'canonicalBaseUrl\': \'/@SangbadPratidin\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'Z7_NNgXbyR4\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/Z7_NNgXbyR4/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLAZgfXfLzP-Lsvij0LkWYIZ6vJWbg\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/Z7_NNgXbyR4/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCO1yyagYydNvz7N7gG2jb2YS7Ekw\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/Z7_NNgXbyR4/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDXXnTt7ruIBasPzBuTdLKdYJtOeg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15857400, \'section3Color\': 15199986, \'primaryTitleColor\': 1447961, \'secondaryTitleColor\': 5923429, \'section4Color\': 14542827}, \'darkColorPalette\': {\'section2Color\': 2171942, \'section3Color\': 1447961, \'primaryTitleColor\': 15071231, \'secondaryTitleColor\': 11846860, \'section4Color\': 723980}}, \'title\': {\'runs\': [{\'text\': \'Realme 13 Pro plus is here - Ultra clear camera vs DSLR\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Realme 13 Pro plus is here - Ultra clear camera vs DSLR by Technology Gyan 834,775 views 3 days ago 13 minutes, 9 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Realme 13 pro+ aa gaya hai dslr level camera k sath...\\n\\naaj is video mein camera test krte hai realme ke new smartphone realme 13 pro plus ka side by side compare krenge dslr se jange bhai...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Technology Gyan\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CPUCENwwGBkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TechnologyGyan\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC1tVU8H153ZFO9eRsxdJlhA\', \'canonicalBaseUrl\': \'/@TechnologyGyan\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'3 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'13 minutes, 9 seconds\'}}, \'simpleText\': \'13:09\'}, \'viewCountText\': {\'simpleText\': \'834,775 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CPUCENwwGBkiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=Z7_NNgXbyR4\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'Z7_NNgXbyR4\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr3---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=67bfcd3605dbc91e&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CPUCENwwGBkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Technology Gyan\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CPUCENwwGBkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TechnologyGyan\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC1tVU8H153ZFO9eRsxdJlhA\', \'canonicalBaseUrl\': \'/@TechnologyGyan\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Technology Gyan\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CPUCENwwGBkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TechnologyGyan\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC1tVU8H153ZFO9eRsxdJlhA\', \'canonicalBaseUrl\': \'/@TechnologyGyan\'}}}]}, \'trackingParams\': \'CPUCENwwGBkiEwiGsb7oo8OHAxWCi9gFHTJaAFVAnpLvruCm899n\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'834K views\'}}, \'simpleText\': \'834K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CPkCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CPkCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'Z7_NNgXbyR4\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CPkCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'Z7_NNgXbyR4\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'Z7_NNgXbyR4\']}}]}}, \'trackingParams\': \'CPkCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CPUCENwwGBkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtaN19OTmdYYnlSNA%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CPUCENwwGBkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CPgCEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CPUCENwwGBkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CPUCENwwGBkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/tC7T8-4MvARqycrxkYbYQh5ygYMjqIn4ET9s-OAjmWeM349qscepubONTcBvb_vG43jwW_Xi_g=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CPUCENwwGBkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TechnologyGyan\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC1tVU8H153ZFO9eRsxdJlhA\', \'canonicalBaseUrl\': \'/@TechnologyGyan\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'13 minutes, 9 seconds\'}}, \'simpleText\': \'13:09\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CPcCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'Z7_NNgXbyR4\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CPcCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'Z7_NNgXbyR4\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CPcCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CPYCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CPYCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'Z7_NNgXbyR4\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CPYCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'Z7_NNgXbyR4\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'Z7_NNgXbyR4\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CPYCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/tC7T8-4MvARqycrxkYbYQh5ygYMjqIn4ET9s-OAjmWeM349qscepubONTcBvb_vG43jwW_Xi_g=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CPUCENwwGBkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TechnologyGyan\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC1tVU8H153ZFO9eRsxdJlhA\', \'canonicalBaseUrl\': \'/@TechnologyGyan\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'_TZInXCnA60\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/_TZInXCnA60/hqdefault.jpg?sqp=-oaymwE8CNIBEHZIWvKriqkDLwgBFQAAAAAYASUAAMhCPQCAokN4AfABAfgB_gmAAtAFigIMCAAQARhPIFIoZTAP&rs=AOn4CLCD5shhOmWsiAkfh76KTGqXVPzZ9g\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/_TZInXCnA60/hqdefault.jpg?sqp=-oaymwE9CPYBEIoBSFryq4qpAy8IARUAAAAAGAElAADIQj0AgKJDeAHwAQH4Af4JgALQBYoCDAgAEAEYTyBSKGUwDw==&rs=AOn4CLAWWKYzEWKxnyGBxbP2abBEg4dN2w\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/_TZInXCnA60/hqdefault.jpg?sqp=-oaymwE9CNACELwBSFryq4qpAy8IARUAAAAAGAElAADIQj0AgKJDeAHwAQH4Af4JgALQBYoCDAgAEAEYTyBSKGUwDw==&rs=AOn4CLCwfnweJCh3DrOCMnGamHS_1yY31w\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15856376, \'section3Color\': 15198450, \'primaryTitleColor\': 1250329, \'secondaryTitleColor\': 5988213, \'section4Color\': 14540779}, \'darkColorPalette\': {\'section2Color\': 2566451, \'section3Color\': 1908518, \'primaryTitleColor\': 15067647, \'secondaryTitleColor\': 10725836, \'section4Color\': 1250329}}, \'title\': {\'runs\': [{\'text\': \'Geeta LLB | \xc3\xa0\xc2\xa6\xc2\xa4\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xa8\xc3\xa0\xc2\xa6\\xad\xc3\xa0\xc2\xa6\xc2\xbf \xc3\xa0\xc2\xa6\\x86\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\xc2\xb8\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xa4\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa7\\x87\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\\x9a\xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xa8\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xa4 \xc3\xa0\xc2\xa6\xc2\xab\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\\x81\xc3\xa0\xc2\xa6\xc2\xb8 \xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa6\xc2\xb2\xc3\xa0\xc2\xa7\\x8b \xc3\xa0\xc2\xa6\\x97\xc3\xa0\xc2\xa7\\x80\xc3\xa0\xc2\xa6\xc2\xa4\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa5\xc2\xa4 \xc3\xa0\xc2\xa6\xc2\xaa\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa6\xc2\xa4\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\xc2\xa6\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\xc2\xa8 6:30 PM |\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Geeta LLB | \xc3\xa0\xc2\xa6\xc2\xa4\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xa8\xc3\xa0\xc2\xa6\\xad\xc3\xa0\xc2\xa6\xc2\xbf \xc3\xa0\xc2\xa6\\x86\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\xc2\xb8\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xa4\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa7\\x87\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\\x9a\xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xa8\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xa4 \xc3\xa0\xc2\xa6\xc2\xab\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\\x81\xc3\xa0\xc2\xa6\xc2\xb8 \xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa6\xc2\xb2\xc3\xa0\xc2\xa7\\x8b \xc3\xa0\xc2\xa6\\x97\xc3\xa0\xc2\xa7\\x80\xc3\xa0\xc2\xa6\xc2\xa4\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa5\xc2\xa4 \xc3\xa0\xc2\xa6\xc2\xaa\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa6\xc2\xa4\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\xc2\xa6\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\xc2\xa8 6:30 PM | by Star Jalsha 321,287 views 1 day ago 3 minutes, 20 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Geeta LLB | \xc3\xa0\xc2\xa6\xc2\xa4\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xa8\xc3\xa0\xc2\xa6\\xad\xc3\xa0\xc2\xa6\xc2\xbf \xc3\xa0\xc2\xa6\\x86\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\xc2\xb8\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xa4\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa7\\x87\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\\x9a\xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xa8\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xa4 \xc3\xa0\xc2\xa6\xc2\xab\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\\x81\xc3\xa0\xc2\xa6\xc2\xb8 \xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa6\xc2\xb2\xc3\xa0\xc2\xa7\\x8b \xc3\xa0\xc2\xa6\\x97\xc3\xa0\xc2\xa7\\x80\xc3\xa0\xc2\xa6\xc2\xa4\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa5\xc2\xa4\\n\xc3\xa0\xc2\xa6\xc2\xaa\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa6\xc2\xa4\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\xc2\xa6\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\xc2\xa8 6:30 PM | \\n#GeetaLLB #\xc3\xa0\xc2\xa6\\x97\xc3\xa0\xc2\xa7\\x80\xc3\xa0\xc2\xa6\xc2\xa4\xc3\xa0\xc2\xa6\xc2\xbeLLB...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Star Jalsha\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CPACENwwGBoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@starjalshaindia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCvMd32ON30vh2bd-_A5KA1A\', \'canonicalBaseUrl\': \'/@starjalshaindia\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'1 day ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3 minutes, 20 seconds\'}}, \'simpleText\': \'3:20\'}, \'viewCountText\': {\'simpleText\': \'321,287 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CPACENwwGBoiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=_TZInXCnA60\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'_TZInXCnA60\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr1---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=fd36489d70a703ad&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CPACENwwGBoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Star Jalsha\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CPACENwwGBoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@starjalshaindia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCvMd32ON30vh2bd-_A5KA1A\', \'canonicalBaseUrl\': \'/@starjalshaindia\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Star Jalsha\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CPACENwwGBoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@starjalshaindia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCvMd32ON30vh2bd-_A5KA1A\', \'canonicalBaseUrl\': \'/@starjalshaindia\'}}}]}, \'trackingParams\': \'CPACENwwGBoiEwiGsb7oo8OHAxWCi9gFHTJaAFVArYechdeTkpv9AQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'321K views\'}}, \'simpleText\': \'321K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CPQCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CPQCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'_TZInXCnA60\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CPQCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'_TZInXCnA60\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'_TZInXCnA60\']}}]}}, \'trackingParams\': \'CPQCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CPACENwwGBoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtfVFpJblhDbkE2MA%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CPACENwwGBoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CPMCEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CPACENwwGBoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CPACENwwGBoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/8Ex39hGjdgzPY05MsPLajf7y312w5RtJA0ZwryXWg4u_ZSfT59rRc902bcbsO5Eh6O2JS_mUvQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CPACENwwGBoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@starjalshaindia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCvMd32ON30vh2bd-_A5KA1A\', \'canonicalBaseUrl\': \'/@starjalshaindia\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3 minutes, 20 seconds\'}}, \'simpleText\': \'3:20\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CPICEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'_TZInXCnA60\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CPICEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'_TZInXCnA60\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CPICEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CPECEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CPECEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'_TZInXCnA60\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CPECEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'_TZInXCnA60\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'_TZInXCnA60\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CPECEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/8Ex39hGjdgzPY05MsPLajf7y312w5RtJA0ZwryXWg4u_ZSfT59rRc902bcbsO5Eh6O2JS_mUvQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CPACENwwGBoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@starjalshaindia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCvMd32ON30vh2bd-_A5KA1A\', \'canonicalBaseUrl\': \'/@starjalshaindia\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'0ktr83UQAaw\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/0ktr83UQAaw/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLCxwXSXN_rgM7mUAzg1WKsQczMFFw\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/0ktr83UQAaw/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBf4EScqOzO0eL9Og8KYrrAboZmnQ\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/0ktr83UQAaw/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLAveNu95lRyqYFvMXGfzsVTMoQY4Q\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16316145, \'section3Color\': 15921127, \'primaryTitleColor\': 1644565, \'secondaryTitleColor\': 7038554, \'section4Color\': 15460317}, \'darkColorPalette\': {\'section2Color\': 2631458, \'section3Color\': 1644565, \'primaryTitleColor\': 16775141, \'secondaryTitleColor\': 13419436, \'section4Color\': 789514}}, \'title\': {\'runs\': [{\'text\': \'\xc3\xa0\xc2\xa6\\x8f\xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa6\\x9f\xc3\xa0\xc2\xa6\xc2\xbf \xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa7\\x83\xc3\xa0\xc2\xa6\xc2\xa4 \xc3\xa0\xc2\xa6\xc2\xaa\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa6\xc2\xb2\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xaa\xc3\xa0\xc2\xa6\xc2\xa8\xc3\xa0\xc2\xa6\xc2\xbe | Gopal Bhar (Bengali) | Double Gopal\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'\xc3\xa0\xc2\xa6\\x8f\xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa6\\x9f\xc3\xa0\xc2\xa6\xc2\xbf \xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa7\\x83\xc3\xa0\xc2\xa6\xc2\xa4 \xc3\xa0\xc2\xa6\xc2\xaa\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa6\xc2\xb2\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xaa\xc3\xa0\xc2\xa6\xc2\xa8\xc3\xa0\xc2\xa6\xc2\xbe | Gopal Bhar (Bengali) | Double Gopal by Sony AATH 325,622 views 1 day ago 44 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Click here to Subscribe to SONY AATH Channel: https://www.youtube.com/channel/UCBz9qbqujcjIavFmBJW2oZw?sub_confirmation=1\\n\\nA king is sitting and thinking about how to exercise his reign in...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Sony AATH\', \'navigationEndpoint\': {\'clickTrackingParams\': \'COsCENwwGBsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SonyAATH\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCBz9qbqujcjIavFmBJW2oZw\', \'canonicalBaseUrl\': \'/@SonyAATH\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'1 day ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'44 minutes, 22 seconds\'}}, \'simpleText\': \'44:22\'}, \'viewCountText\': {\'simpleText\': \'325,622 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'COsCENwwGBsiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=0ktr83UQAaw\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'0ktr83UQAaw\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr3---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=d24b6bf3751001ac&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'COsCENwwGBsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Sony AATH\', \'navigationEndpoint\': {\'clickTrackingParams\': \'COsCENwwGBsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SonyAATH\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCBz9qbqujcjIavFmBJW2oZw\', \'canonicalBaseUrl\': \'/@SonyAATH\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Sony AATH\', \'navigationEndpoint\': {\'clickTrackingParams\': \'COsCENwwGBsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SonyAATH\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCBz9qbqujcjIavFmBJW2oZw\', \'canonicalBaseUrl\': \'/@SonyAATH\'}}}]}, \'trackingParams\': \'COsCENwwGBsiEwiGsb7oo8OHAxWCi9gFHTJaAFVArIPAqLf-2qXSAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'325K views\'}}, \'simpleText\': \'325K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CO8CEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CO8CEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'0ktr83UQAaw\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CO8CEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'0ktr83UQAaw\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'0ktr83UQAaw\']}}]}}, \'trackingParams\': \'CO8CEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'COsCENwwGBsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'Cgswa3RyODNVUUFhdw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'COsCENwwGBsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CO4CEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'COsCENwwGBsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'COsCENwwGBsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/5uZAuYDhUt_iliyZjcxhPKY_HQYH7dGbKGDfp8cMtfZN6E56SVK3svaUwhLY35ECWlVfijdgTw=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'COsCENwwGBsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SonyAATH\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCBz9qbqujcjIavFmBJW2oZw\', \'canonicalBaseUrl\': \'/@SonyAATH\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'44 minutes, 22 seconds\'}}, \'simpleText\': \'44:22\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CO0CEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'0ktr83UQAaw\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CO0CEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'0ktr83UQAaw\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CO0CEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'COwCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'COwCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'0ktr83UQAaw\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'COwCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'0ktr83UQAaw\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'0ktr83UQAaw\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'COwCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/5uZAuYDhUt_iliyZjcxhPKY_HQYH7dGbKGDfp8cMtfZN6E56SVK3svaUwhLY35ECWlVfijdgTw=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'COsCENwwGBsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SonyAATH\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCBz9qbqujcjIavFmBJW2oZw\', \'canonicalBaseUrl\': \'/@SonyAATH\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'Umh-TUBbxjI\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/Umh-TUBbxjI/hqdefault.jpg?sqp=-oaymwE8CNIBEHZIWvKriqkDLwgBFQAAAAAYASUAAMhCPQCAokN4AfABAfgB_gmAAtAFigIMCAAQARhlIEooQzAP&rs=AOn4CLBQxQf7qNY4A1Ffu4WAMMiXm_QaWA\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/Umh-TUBbxjI/hqdefault.jpg?sqp=-oaymwE9CPYBEIoBSFryq4qpAy8IARUAAAAAGAElAADIQj0AgKJDeAHwAQH4Af4JgALQBYoCDAgAEAEYZSBKKEMwDw==&rs=AOn4CLDryQ8kE2fly-U2kd8wuti_mLoOPA\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/Umh-TUBbxjI/hqdefault.jpg?sqp=-oaymwE9CNACELwBSFryq4qpAy8IARUAAAAAGAElAADIQj0AgKJDeAHwAQH4Af4JgALQBYoCDAgAEAEYZSBKKEMwDw==&rs=AOn4CLBb75UaJ9lku8zMX0d_jGSebEWToA\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315121, \'section3Color\': 15919591, \'primaryTitleColor\': 1643024, \'secondaryTitleColor\': 8018257, \'section4Color\': 15458525}, \'darkColorPalette\': {\'section2Color\': 3351841, \'section3Color\': 2497305, \'primaryTitleColor\': 16771813, \'secondaryTitleColor\': 13413027, \'section4Color\': 1643024}}, \'title\': {\'runs\': [{\'text\': \'I Opened My Own Grocery Store (Supermarket Simulator Part 1)\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'I Opened My Own Grocery Store (Supermarket Simulator Part 1) by Live Insaan 1,786,410 views 2 days ago 47 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Playing Supermarket Simulator today, a game where we start our own shop and make it into a big mall.\\n\\nBecome a Channel Member \xc3\xa2\\x96\xc2\xba https://www.youtube.com/channel/UCFwKgzKe-EdTz83r6wzhmOw/join...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Live Insaan\', \'navigationEndpoint\': {\'clickTrackingParams\': \'COYCENwwGBwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@liveinsaan\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCFwKgzKe-EdTz83r6wzhmOw\', \'canonicalBaseUrl\': \'/@liveinsaan\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'47 minutes, 22 seconds\'}}, \'simpleText\': \'47:22\'}, \'viewCountText\': {\'simpleText\': \'1,786,410 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'COYCENwwGBwiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=Umh-TUBbxjI\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'Umh-TUBbxjI\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr2---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=52687e4d405bc632&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'COYCENwwGBwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Live Insaan\', \'navigationEndpoint\': {\'clickTrackingParams\': \'COYCENwwGBwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@liveinsaan\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCFwKgzKe-EdTz83r6wzhmOw\', \'canonicalBaseUrl\': \'/@liveinsaan\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Live Insaan\', \'navigationEndpoint\': {\'clickTrackingParams\': \'COYCENwwGBwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@liveinsaan\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCFwKgzKe-EdTz83r6wzhmOw\', \'canonicalBaseUrl\': \'/@liveinsaan\'}}}]}, \'trackingParams\': \'COYCENwwGBwiEwiGsb7oo8OHAxWCi9gFHTJaAFVAsozvgtTJn7RS\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'1.7 million views\'}}, \'simpleText\': \'1.7M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'COoCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'COoCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'Umh-TUBbxjI\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'COoCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'Umh-TUBbxjI\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'Umh-TUBbxjI\']}}]}}, \'trackingParams\': \'COoCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'COYCENwwGBwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtVbWgtVFVCYnhqSQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'COYCENwwGBwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'COkCEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'COYCENwwGBwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'COYCENwwGBwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_nfsMq7BaO5zHVHhYcu_wHgQVimFgC7uBCbboM7a1koBWk=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'COYCENwwGBwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@liveinsaan\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCFwKgzKe-EdTz83r6wzhmOw\', \'canonicalBaseUrl\': \'/@liveinsaan\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'47 minutes, 22 seconds\'}}, \'simpleText\': \'47:22\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'COgCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'Umh-TUBbxjI\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'COgCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'Umh-TUBbxjI\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'COgCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'COcCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'COcCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'Umh-TUBbxjI\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'COcCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'Umh-TUBbxjI\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'Umh-TUBbxjI\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'COcCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_nfsMq7BaO5zHVHhYcu_wHgQVimFgC7uBCbboM7a1koBWk=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'COYCENwwGBwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@liveinsaan\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCFwKgzKe-EdTz83r6wzhmOw\', \'canonicalBaseUrl\': \'/@liveinsaan\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'2ZTNc5ONivY\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/2ZTNc5ONivY/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLDS-fnduuby4dbnHfBcOU5kxi7COA\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/2ZTNc5ONivY/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCAwzai6kefolhRq_W_Rzep2CYnmQ\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/2ZTNc5ONivY/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLA1dLCENjjrmOfgErxEs9x3UpWJmg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315121, \'section3Color\': 15919591, \'primaryTitleColor\': 1643024, \'secondaryTitleColor\': 8017999, \'section4Color\': 15458525}, \'darkColorPalette\': {\'section2Color\': 3350813, \'section3Color\': 2496790, \'primaryTitleColor\': 16771813, \'secondaryTitleColor\': 13413283, \'section4Color\': 1642510}}, \'title\': {\'runs\': [{\'text\': \'Etna Bada TV Le Liya \xc3\xb0\\x9f\\x98\\x8d\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Etna Bada TV Le Liya \xc3\xb0\\x9f\\x98\\x8d by Sourav Joshi Vlogs 3,889,009 views 20 hours ago 9 minutes, 18 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Folllow me on Instagram- https://www.instagram.com/souravjoshivlogs/?hl=en\\n \\nI hope you enjoyed this video\\n\\nhit likes.\\nAnd do subscribe to my channel\\n\\nThank you so much for watching\\n\\ngod bless...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Sourav Joshi Vlogs\', \'navigationEndpoint\': {\'clickTrackingParams\': \'COECENwwGB0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@souravjoshivlogs7028\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjvgGbPPn-FgYeguc5nxG4A\', \'canonicalBaseUrl\': \'/@souravjoshivlogs7028\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'20 hours ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'9 minutes, 18 seconds\'}}, \'simpleText\': \'9:18\'}, \'viewCountText\': {\'simpleText\': \'3,889,009 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'COECENwwGB0iEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=2ZTNc5ONivY\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'2ZTNc5ONivY\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr4---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=d994cd73938d8af6&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'COECENwwGB0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Sourav Joshi Vlogs\', \'navigationEndpoint\': {\'clickTrackingParams\': \'COECENwwGB0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@souravjoshivlogs7028\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjvgGbPPn-FgYeguc5nxG4A\', \'canonicalBaseUrl\': \'/@souravjoshivlogs7028\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Sourav Joshi Vlogs\', \'navigationEndpoint\': {\'clickTrackingParams\': \'COECENwwGB0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@souravjoshivlogs7028\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjvgGbPPn-FgYeguc5nxG4A\', \'canonicalBaseUrl\': \'/@souravjoshivlogs7028\'}}}]}, \'trackingParams\': \'COECENwwGB0iEwiGsb7oo8OHAxWCi9gFHTJaAFVA9pW2nLmus8rZAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3.8 million views\'}}, \'simpleText\': \'3.8M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'COUCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'COUCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'2ZTNc5ONivY\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'COUCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'2ZTNc5ONivY\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'2ZTNc5ONivY\']}}]}}, \'trackingParams\': \'COUCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'COECENwwGB0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgsyWlROYzVPTml2WQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'COECENwwGB0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'COQCEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'COECENwwGB0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'COECENwwGB0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/f6BWKFJa-1DcnqCIqiGCqNl2daN4rSo21UogJbKcmPC6h_VkvlF3TQ1rF-I6hN66hZ6Dfjb-bA=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'COECENwwGB0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@souravjoshivlogs7028\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjvgGbPPn-FgYeguc5nxG4A\', \'canonicalBaseUrl\': \'/@souravjoshivlogs7028\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'9 minutes, 18 seconds\'}}, \'simpleText\': \'9:18\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'COMCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'2ZTNc5ONivY\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'COMCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'2ZTNc5ONivY\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'COMCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'COICEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'COICEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'2ZTNc5ONivY\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'COICEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'2ZTNc5ONivY\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'2ZTNc5ONivY\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'COICEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/f6BWKFJa-1DcnqCIqiGCqNl2daN4rSo21UogJbKcmPC6h_VkvlF3TQ1rF-I6hN66hZ6Dfjb-bA=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'COECENwwGB0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@souravjoshivlogs7028\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjvgGbPPn-FgYeguc5nxG4A\', \'canonicalBaseUrl\': \'/@souravjoshivlogs7028\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'tPGHoOMKkuI\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/tPGHoOMKkuI/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLBevIvKWNMu4cbwoy3qE5wXj0sCRQ\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/tPGHoOMKkuI/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCX7JfgNnDnYIYaLb1N45md5Ri3ug\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/tPGHoOMKkuI/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCUHdBD5YXEv3fBV77PqpLH-6GzcQ\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16316401, \'section3Color\': 15921383, \'primaryTitleColor\': 1644304, \'secondaryTitleColor\': 7038021, \'section4Color\': 15460829}, \'darkColorPalette\': {\'section2Color\': 2630150, \'section3Color\': 1643779, \'primaryTitleColor\': 16775909, \'secondaryTitleColor\': 13419683, \'section4Color\': 788993}}, \'title\': {\'runs\': [{\'text\': \'Fire Song (Tamil) - Lyrical | Kanguva | Suriya | Devi Sri Prasad | Siva | Viveka\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Fire Song (Tamil) - Lyrical | Kanguva | Suriya | Devi Sri Prasad | Siva | Viveka by Saregama Tamil 13,105,976 views 2 days ago 3 minutes, 42 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'For more latest songs & videos, subscribe \xc3\xb0\\x9f\\x91\\x89 https://bit.ly/Saregama_Tamil\\n\\nFeel the fierce of the "Fire Song (Tamil)" from \\\'Kanguva\\\' starring Suriya, Disha Patani, Bobby Deol & others. Directed...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Saregama Tamil\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CNwCENwwGB4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SaregamaTamil\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCzee67JnEcuvjErRyWP3GpQ\', \'canonicalBaseUrl\': \'/@SaregamaTamil\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3 minutes, 42 seconds\'}}, \'simpleText\': \'3:42\'}, \'viewCountText\': {\'simpleText\': \'13,105,976 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CNwCENwwGB4iEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=tPGHoOMKkuI\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'tPGHoOMKkuI\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr3---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=b4f187a0e30a92e2&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CNwCENwwGB4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Saregama Tamil\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CNwCENwwGB4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SaregamaTamil\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCzee67JnEcuvjErRyWP3GpQ\', \'canonicalBaseUrl\': \'/@SaregamaTamil\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Saregama Tamil\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CNwCENwwGB4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SaregamaTamil\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCzee67JnEcuvjErRyWP3GpQ\', \'canonicalBaseUrl\': \'/@SaregamaTamil\'}}}]}, \'trackingParams\': \'CNwCENwwGB4iEwiGsb7oo8OHAxWCi9gFHTJaAFVA4qWqmI704fi0AQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'13 million views\'}}, \'simpleText\': \'13M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'COACEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'COACEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'tPGHoOMKkuI\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'COACEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'tPGHoOMKkuI\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'tPGHoOMKkuI\']}}]}}, \'trackingParams\': \'COACEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CNwCENwwGB4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'Cgt0UEdIb09NS2t1SQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CNwCENwwGB4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CN8CEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CNwCENwwGB4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CNwCENwwGB4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/4F-yeAEe13w301lipg9c63oWgvg9BwbNpn3NILdtZKldTMTlnxgED2an5up86xUoL0bQx73LDQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CNwCENwwGB4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SaregamaTamil\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCzee67JnEcuvjErRyWP3GpQ\', \'canonicalBaseUrl\': \'/@SaregamaTamil\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3 minutes, 42 seconds\'}}, \'simpleText\': \'3:42\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CN4CEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'tPGHoOMKkuI\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CN4CEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'tPGHoOMKkuI\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CN4CEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CN0CEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CN0CEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'tPGHoOMKkuI\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CN0CEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'tPGHoOMKkuI\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'tPGHoOMKkuI\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CN0CEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/4F-yeAEe13w301lipg9c63oWgvg9BwbNpn3NILdtZKldTMTlnxgED2an5up86xUoL0bQx73LDQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CNwCENwwGB4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SaregamaTamil\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCzee67JnEcuvjErRyWP3GpQ\', \'canonicalBaseUrl\': \'/@SaregamaTamil\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'b7sQ8MZt_hI\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/b7sQ8MZt_hI/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLCYW0nA_78Z_yqRr196HB3cwdknlQ\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/b7sQ8MZt_hI/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBZ__mBxAkWOJqBtDeiZDR_8N6fjQ\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/b7sQ8MZt_hI/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDKE94gFcuJ32l8oFf420g0qSganA\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315889, \'section3Color\': 15920615, \'primaryTitleColor\': 1644048, \'secondaryTitleColor\': 7364680, \'section4Color\': 15460061}, \'darkColorPalette\': {\'section2Color\': 2630426, \'section3Color\': 1643792, \'primaryTitleColor\': 16774629, \'secondaryTitleColor\': 13417635, \'section4Color\': 789000}}, \'title\': {\'runs\': [{\'text\': \'\xc3\xa0\xc2\xa6\\x97\xc3\xa0\xc2\xa7\\x81\xc3\xa0\xc2\xa6\xc2\xaa\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xa4\xc3\xa0\xc2\xa6\xc2\xa7\xc3\xa0\xc2\xa6\xc2\xa8 \xc3\xa0\xc2\xa6\\x8f\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\\xad\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\\x97 | Gopal Bhar (Bengali) | Double Gopal\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'\xc3\xa0\xc2\xa6\\x97\xc3\xa0\xc2\xa7\\x81\xc3\xa0\xc2\xa6\xc2\xaa\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xa4\xc3\xa0\xc2\xa6\xc2\xa7\xc3\xa0\xc2\xa6\xc2\xa8 \xc3\xa0\xc2\xa6\\x8f\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\\xad\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\\x97 | Gopal Bhar (Bengali) | Double Gopal by Sony AATH 416,365 views 2 days ago 43 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Click here to Subscribe to SONY AATH Channel: https://www.youtube.com/channel/UCBz9qbqujcjIavFmBJW2oZw?sub_confirmation=1\\n\\nIt starts raining heavily so Pandit advises everyone to take shelter...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Sony AATH\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CNcCENwwGB8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SonyAATH\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCBz9qbqujcjIavFmBJW2oZw\', \'canonicalBaseUrl\': \'/@SonyAATH\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'43 minutes, 35 seconds\'}}, \'simpleText\': \'43:35\'}, \'viewCountText\': {\'simpleText\': \'416,365 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CNcCENwwGB8iEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=b7sQ8MZt_hI\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'b7sQ8MZt_hI\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr1---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=6fbb10f0c66dfe12&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CNcCENwwGB8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Sony AATH\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CNcCENwwGB8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SonyAATH\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCBz9qbqujcjIavFmBJW2oZw\', \'canonicalBaseUrl\': \'/@SonyAATH\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Sony AATH\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CNcCENwwGB8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SonyAATH\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCBz9qbqujcjIavFmBJW2oZw\', \'canonicalBaseUrl\': \'/@SonyAATH\'}}}]}, \'trackingParams\': \'CNcCENwwGB8iEwiGsb7oo8OHAxWCi9gFHTJaAFVAkvy3s4yexN1v\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'416K views\'}}, \'simpleText\': \'416K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CNsCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CNsCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'b7sQ8MZt_hI\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CNsCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'b7sQ8MZt_hI\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'b7sQ8MZt_hI\']}}]}}, \'trackingParams\': \'CNsCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CNcCENwwGB8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtiN3NROE1adF9oSQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CNcCENwwGB8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CNoCEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CNcCENwwGB8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CNcCENwwGB8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/5uZAuYDhUt_iliyZjcxhPKY_HQYH7dGbKGDfp8cMtfZN6E56SVK3svaUwhLY35ECWlVfijdgTw=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CNcCENwwGB8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SonyAATH\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCBz9qbqujcjIavFmBJW2oZw\', \'canonicalBaseUrl\': \'/@SonyAATH\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'43 minutes, 35 seconds\'}}, \'simpleText\': \'43:35\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CNkCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'b7sQ8MZt_hI\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CNkCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'b7sQ8MZt_hI\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CNkCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CNgCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CNgCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'b7sQ8MZt_hI\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CNgCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'b7sQ8MZt_hI\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'b7sQ8MZt_hI\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CNgCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/5uZAuYDhUt_iliyZjcxhPKY_HQYH7dGbKGDfp8cMtfZN6E56SVK3svaUwhLY35ECWlVfijdgTw=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CNcCENwwGB8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SonyAATH\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCBz9qbqujcjIavFmBJW2oZw\', \'canonicalBaseUrl\': \'/@SonyAATH\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'YK1pIuPsl9I\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/YK1pIuPsl9I/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLBSKEOSl4ZlOK23gmcsEZ2MwCzNnA\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/YK1pIuPsl9I/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBBYbueyysEsCCM4jo4LHLJv5XpbQ\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/YK1pIuPsl9I/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLAvCUSswcI9XvVeE6gT4JwBYrLNBw\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315633, \'section3Color\': 15920103, \'primaryTitleColor\': 1643536, \'secondaryTitleColor\': 7691340, \'section4Color\': 15459293}, \'darkColorPalette\': {\'section2Color\': 3349775, \'section3Color\': 2495755, \'primaryTitleColor\': 16773093, \'secondaryTitleColor\': 13415331, \'section4Color\': 1641991}}, \'title\': {\'runs\': [{\'text\': "Bangladesh Student Protests | What Is \'Dictator\' Sheikh Hasina Afraid Of? | Akash Banerjee & Adwaith"}], \'accessibility\': {\'accessibilityData\': {\'label\': "Bangladesh Student Protests | What Is \'Dictator\' Sheikh Hasina Afraid Of? | Akash Banerjee & Adwaith by The Deshbhakt 2,412,582 views 3 days ago 19 minutes"}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Its the WORST crisis in the career of Sheikh Hasina - the undeclared Dictator of Bangladesh. Students have paid the ultimate price - fighting back a reservation system that makes no sense to...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'The Deshbhakt\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CNICENwwGCAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@thedeshbhakt\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCmTM_hPCeckqN3cPWtYZZcg\', \'canonicalBaseUrl\': \'/@thedeshbhakt\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'3 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'19 minutes, 23 seconds\'}}, \'simpleText\': \'19:23\'}, \'viewCountText\': {\'simpleText\': \'2,412,582 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CNICENwwGCAiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=YK1pIuPsl9I\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'YK1pIuPsl9I\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr5---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=60ad6922e3ec97d2&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CNICENwwGCAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'The Deshbhakt\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CNICENwwGCAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@thedeshbhakt\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCmTM_hPCeckqN3cPWtYZZcg\', \'canonicalBaseUrl\': \'/@thedeshbhakt\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'The Deshbhakt\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CNICENwwGCAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@thedeshbhakt\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCmTM_hPCeckqN3cPWtYZZcg\', \'canonicalBaseUrl\': \'/@thedeshbhakt\'}}}]}, \'trackingParams\': \'CNICENwwGCAiEwiGsb7oo8OHAxWCi9gFHTJaAFVA0q-yn66k2tZg\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'2.4 million views\'}}, \'simpleText\': \'2.4M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CNYCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CNYCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'YK1pIuPsl9I\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CNYCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'YK1pIuPsl9I\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'YK1pIuPsl9I\']}}]}}, \'trackingParams\': \'CNYCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CNICENwwGCAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtZSzFwSXVQc2w5SQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CNICENwwGCAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CNUCEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CNICENwwGCAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CNICENwwGCAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/wYGFSC15QYFe-lyOt3-MhR23aaNyOIKt3DG2RNj5V_uk9JDeayKHQK_Nx9oEzjiTmlCA5owo=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CNICENwwGCAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@thedeshbhakt\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCmTM_hPCeckqN3cPWtYZZcg\', \'canonicalBaseUrl\': \'/@thedeshbhakt\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'19 minutes, 23 seconds\'}}, \'simpleText\': \'19:23\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CNQCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'YK1pIuPsl9I\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CNQCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'YK1pIuPsl9I\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CNQCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CNMCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CNMCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'YK1pIuPsl9I\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CNMCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'YK1pIuPsl9I\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'YK1pIuPsl9I\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CNMCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/wYGFSC15QYFe-lyOt3-MhR23aaNyOIKt3DG2RNj5V_uk9JDeayKHQK_Nx9oEzjiTmlCA5owo=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CNICENwwGCAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@thedeshbhakt\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCmTM_hPCeckqN3cPWtYZZcg\', \'canonicalBaseUrl\': \'/@thedeshbhakt\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'7aqg9P9c2YM\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/7aqg9P9c2YM/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLCwpnIXgxor9fK3-g1s1oM7j2OZrQ\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/7aqg9P9c2YM/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDKuFMWKJl5HVL1rVoNqOKLB43cYA\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/7aqg9P9c2YM/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDw4XceO8ZuGL6v2T6Y_H3RRAPPGg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15857912, \'section3Color\': 15200754, \'primaryTitleColor\': 1054745, \'secondaryTitleColor\': 4614251, \'section4Color\': 14543595}, \'darkColorPalette\': {\'section2Color\': 1647910, \'section3Color\': 1054745, \'primaryTitleColor\': 15072767, \'secondaryTitleColor\': 10734028, \'section4Color\': 527372}}, \'title\': {\'runs\': [{\'text\': \'Budget 2024 highlights | Impact on Stock Market | CA Rachana Ranade\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Budget 2024 highlights | Impact on Stock Market | CA Rachana Ranade by CA Rachana Phadke Ranade 306,694 views 2 days ago 15 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'In this video, we will summarise the complexities of Budget 2024. Discover how the latest financial policies will shape the stock market and affect your personal finances. We break down the...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'CA Rachana Phadke Ranade\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CM0CENwwGCEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@CARachanaRanade\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCe3qdG0A_gr-sEdat5y2twQ\', \'canonicalBaseUrl\': \'/@CARachanaRanade\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'15 minutes, 32 seconds\'}}, \'simpleText\': \'15:32\'}, \'viewCountText\': {\'simpleText\': \'306,694 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CM0CENwwGCEiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=7aqg9P9c2YM\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'7aqg9P9c2YM\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr2---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=edaaa0f4ff5cd983&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CM0CENwwGCEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'CA Rachana Phadke Ranade\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CM0CENwwGCEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@CARachanaRanade\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCe3qdG0A_gr-sEdat5y2twQ\', \'canonicalBaseUrl\': \'/@CARachanaRanade\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'CA Rachana Phadke Ranade\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CM0CENwwGCEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@CARachanaRanade\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCe3qdG0A_gr-sEdat5y2twQ\', \'canonicalBaseUrl\': \'/@CARachanaRanade\'}}}]}, \'trackingParams\': \'CM0CENwwGCEiEwiGsb7oo8OHAxWCi9gFHTJaAFVAg7Pz-s-eqNXtAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'306K views\'}}, \'simpleText\': \'306K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CNECEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CNECEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'7aqg9P9c2YM\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CNECEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'7aqg9P9c2YM\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'7aqg9P9c2YM\']}}]}}, \'trackingParams\': \'CNECEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CM0CENwwGCEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'Cgs3YXFnOVA5YzJZTQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CM0CENwwGCEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CNACEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CM0CENwwGCEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CM0CENwwGCEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/sps3-8-kwMHBYY88j9KLXjxV3lV-RFWri_N4fFnizV1h4BeQepi9PdK9C5hK8MStydtyM_UrerI=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CM0CENwwGCEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@CARachanaRanade\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCe3qdG0A_gr-sEdat5y2twQ\', \'canonicalBaseUrl\': \'/@CARachanaRanade\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'15 minutes, 32 seconds\'}}, \'simpleText\': \'15:32\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CM8CEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'7aqg9P9c2YM\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CM8CEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'7aqg9P9c2YM\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CM8CEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CM4CEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CM4CEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'7aqg9P9c2YM\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CM4CEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'7aqg9P9c2YM\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'7aqg9P9c2YM\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CM4CEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/sps3-8-kwMHBYY88j9KLXjxV3lV-RFWri_N4fFnizV1h4BeQepi9PdK9C5hK8MStydtyM_UrerI=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CM0CENwwGCEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@CARachanaRanade\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCe3qdG0A_gr-sEdat5y2twQ\', \'canonicalBaseUrl\': \'/@CARachanaRanade\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'NHbURNI11yg\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/NHbURNI11yg/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLDzoyBgIqZif8f3QlvjC27eWI-pMw\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/NHbURNI11yg/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDWeCuiBJQwdH-layoXFH7xTyN8Ag\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/NHbURNI11yg/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCK7j7AZDKgVfpZaTZQn1Vh6rkQ3Q\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16251121, \'section3Color\': 15790823, \'primaryTitleColor\': 1579280, \'secondaryTitleColor\': 6646597, \'section4Color\': 15330269}, \'darkColorPalette\': {\'section2Color\': 2304006, \'section3Color\': 1448195, \'primaryTitleColor\': 16449509, \'secondaryTitleColor\': 12962979, \'section4Color\': 723969}}, \'title\': {\'runs\': [{\'text\': \'Alakh Sir promise FREE Batches for student After NO RE-NEET\xc3\xb0\\x9f\\x98\\x87 | Full Details\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Alakh Sir promise FREE Batches for student After NO RE-NEET\xc3\xb0\\x9f\\x98\\x87 | Full Details by Competition Wallah 238,386 views 1 day ago 7 minutes, 57 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Google Form - https://docs.google.com/forms/u/0/d/e/1FAIpQLSfxo2SVIg8Lsa6hrl5_Lq3D-CdsThoEFG2BFvrzQGXViguvBw/viewform?pli=1\\n\\nYakeen NEET 3.0 2025\\nhttps://physicswallah.onelink.me/ZAZB/hrebnz76...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Competition Wallah\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CMgCENwwGCIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@PW-NEETWallah\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCD16eo98AXl-9T61Xd711kQ\', \'canonicalBaseUrl\': \'/@PW-NEETWallah\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'1 day ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'7 minutes, 57 seconds\'}}, \'simpleText\': \'7:57\'}, \'viewCountText\': {\'simpleText\': \'238,386 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CMgCENwwGCIiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=NHbURNI11yg\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'NHbURNI11yg\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr1---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=3476d444d235d728&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CMgCENwwGCIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Competition Wallah\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CMgCENwwGCIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@PW-NEETWallah\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCD16eo98AXl-9T61Xd711kQ\', \'canonicalBaseUrl\': \'/@PW-NEETWallah\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Competition Wallah\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CMgCENwwGCIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@PW-NEETWallah\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCD16eo98AXl-9T61Xd711kQ\', \'canonicalBaseUrl\': \'/@PW-NEETWallah\'}}}]}, \'trackingParams\': \'CMgCENwwGCIiEwiGsb7oo8OHAxWCi9gFHTJaAFVAqK7Xkc2Itbs0\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'238K views\'}}, \'simpleText\': \'238K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CMwCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CMwCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'NHbURNI11yg\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CMwCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'NHbURNI11yg\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'NHbURNI11yg\']}}]}}, \'trackingParams\': \'CMwCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CMgCENwwGCIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtOSGJVUk5JMTF5Zw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CMgCENwwGCIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CMsCEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CMgCENwwGCIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CMgCENwwGCIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/y4aXsm5Sa4c0KSLdF7rAP2E6Ku9DD8skwqJt6MDBL2UKutQ8phrwGc9vJ0sf3HDBuox_qtWC=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CMgCENwwGCIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@PW-NEETWallah\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCD16eo98AXl-9T61Xd711kQ\', \'canonicalBaseUrl\': \'/@PW-NEETWallah\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'7 minutes, 57 seconds\'}}, \'simpleText\': \'7:57\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CMoCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'NHbURNI11yg\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CMoCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'NHbURNI11yg\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CMoCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CMkCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CMkCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'NHbURNI11yg\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CMkCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'NHbURNI11yg\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'NHbURNI11yg\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CMkCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/y4aXsm5Sa4c0KSLdF7rAP2E6Ku9DD8skwqJt6MDBL2UKutQ8phrwGc9vJ0sf3HDBuox_qtWC=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CMgCENwwGCIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@PW-NEETWallah\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCD16eo98AXl-9T61Xd711kQ\', \'canonicalBaseUrl\': \'/@PW-NEETWallah\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'xO_4nFHuLn0\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/xO_4nFHuLn0/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLDDfTScg53GAiXJ421qMA5EJn8LKQ\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/xO_4nFHuLn0/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLB4qiWXw-3vJOlNMku16cFqLvVGqw\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/xO_4nFHuLn0/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBP5A_-yKb-O0E2jcfwYS-8CbGTdQ\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15857656, \'section3Color\': 15200754, \'primaryTitleColor\': 1120281, \'secondaryTitleColor\': 4810603, \'section4Color\': 14543595}, \'darkColorPalette\': {\'section2Color\': 1713446, \'section3Color\': 1120281, \'primaryTitleColor\': 15072511, \'secondaryTitleColor\': 10733772, \'section4Color\': 527372}}, \'title\': {\'runs\': [{\'text\': \'Strongest Phone Ever Unboxing\xc3\xb0\\x9f\\x94\xc2\xa5! \xc3\xa0\xc2\xa4\\x86 \xc3\xa0\xc2\xa4\\x97\xc3\xa0\xc2\xa4\xc2\xaf\xc3\xa0\xc2\xa4\xc2\xbe \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa4\xc2\xac \xc3\xa0\xc2\xa4\xc2\xab\xc3\xa0\xc2\xa4\xc2\xbc\xc3\xa0\xc2\xa5\\x8b\xc3\xa0\xc2\xa4\xc2\xa8 \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xbe \xc3\xa0\xc2\xa4\xc2\xac\xc3\xa0\xc2\xa4\xc2\xbe\xc3\xa0\xc2\xa4\xc2\xaa - Phone Nahi Stone Hai\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Strongest Phone Ever Unboxing\xc3\xb0\\x9f\\x94\xc2\xa5! \xc3\xa0\xc2\xa4\\x86 \xc3\xa0\xc2\xa4\\x97\xc3\xa0\xc2\xa4\xc2\xaf\xc3\xa0\xc2\xa4\xc2\xbe \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa4\xc2\xac \xc3\xa0\xc2\xa5\\x9e\xc3\xa0\xc2\xa5\\x8b\xc3\xa0\xc2\xa4\xc2\xa8 \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xbe \xc3\xa0\xc2\xa4\xc2\xac\xc3\xa0\xc2\xa4\xc2\xbe\xc3\xa0\xc2\xa4\xc2\xaa - Phone Nahi Stone Hai by THE INDIAN UNBOXER 391,969 views 2 days ago 10 minutes, 39 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Hello guys, is video me humne ek ajeebogareeb phone ki unboxing kari hai.\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'THE INDIAN UNBOXER\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CMMCENwwGCMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TheIndianUnboxer\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCIcKN-VXhkZNpf5DRdHp9JA\', \'canonicalBaseUrl\': \'/@TheIndianUnboxer\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'10 minutes, 39 seconds\'}}, \'simpleText\': \'10:39\'}, \'viewCountText\': {\'simpleText\': \'391,969 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CMMCENwwGCMiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=xO_4nFHuLn0\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'xO_4nFHuLn0\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr3---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=c4eff89c51ee2e7d&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CMMCENwwGCMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'THE INDIAN UNBOXER\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CMMCENwwGCMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TheIndianUnboxer\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCIcKN-VXhkZNpf5DRdHp9JA\', \'canonicalBaseUrl\': \'/@TheIndianUnboxer\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'THE INDIAN UNBOXER\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CMMCENwwGCMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TheIndianUnboxer\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCIcKN-VXhkZNpf5DRdHp9JA\', \'canonicalBaseUrl\': \'/@TheIndianUnboxer\'}}}]}, \'trackingParams\': \'CMMCENwwGCMiEwiGsb7oo8OHAxWCi9gFHTJaAFVA_dy4j8WT_vfEAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'391K views\'}}, \'simpleText\': \'391K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CMcCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CMcCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'xO_4nFHuLn0\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CMcCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'xO_4nFHuLn0\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'xO_4nFHuLn0\']}}]}}, \'trackingParams\': \'CMcCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CMMCENwwGCMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'Cgt4T180bkZIdUxuMA%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CMMCENwwGCMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CMYCEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CMMCENwwGCMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CMMCENwwGCMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_mgHOUVR55JYmLlxYbFmTSiMm489l-BRfd3zI7D_WQf_rg=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CMMCENwwGCMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TheIndianUnboxer\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCIcKN-VXhkZNpf5DRdHp9JA\', \'canonicalBaseUrl\': \'/@TheIndianUnboxer\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'10 minutes, 39 seconds\'}}, \'simpleText\': \'10:39\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CMUCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'xO_4nFHuLn0\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CMUCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'xO_4nFHuLn0\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CMUCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CMQCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CMQCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'xO_4nFHuLn0\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CMQCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'xO_4nFHuLn0\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'xO_4nFHuLn0\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CMQCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_mgHOUVR55JYmLlxYbFmTSiMm489l-BRfd3zI7D_WQf_rg=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CMMCENwwGCMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TheIndianUnboxer\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCIcKN-VXhkZNpf5DRdHp9JA\', \'canonicalBaseUrl\': \'/@TheIndianUnboxer\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'7yTGYCrDBbs\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/7yTGYCrDBbs/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLAm6y7dBLciBXIBVeh9inb5NxvghQ\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/7yTGYCrDBbs/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLAAH5LnCTzSQ9tfp-S7o9VVEYjzVw\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/7yTGYCrDBbs/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLAd8ipe849j0aXhvSRYgP6i_-81Ww\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15856888, \'section3Color\': 15199474, \'primaryTitleColor\': 1250841, \'secondaryTitleColor\': 5530224, \'section4Color\': 14542059}, \'darkColorPalette\': {\'section2Color\': 2501683, \'section3Color\': 1843494, \'primaryTitleColor\': 15069951, \'secondaryTitleColor\': 10729420, \'section4Color\': 1250841}}, \'title\': {\'runs\': [{\'text\': \'Washing My Tractors and Vehicles in Dam | JCB 3DX | Tata Truck | Mahindra Arjun 605 | Swaraj 744\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Washing My Tractors and Vehicles in Dam | JCB 3DX | Tata Truck | Mahindra Arjun 605 | Swaraj 744 by MD JCB XPERT 597,507 views 3 days ago 20 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'LIKE || SHARE || SUBSCRIBE\\n=======================\\n\\n_____________________________________________________\\n\\nFollow us on - YouTube / MD JCB XPERT\\nInstagram :-https://www.instagram.com/mdjcb.xpert/...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'MD JCB XPERT\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CL4CENwwGCQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@MDJCBXPERT\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC0S4TBEsQgiyMJaZ5z1w_Mw\', \'canonicalBaseUrl\': \'/@MDJCBXPERT\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'3 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'20 minutes, 12 seconds\'}}, \'simpleText\': \'20:12\'}, \'viewCountText\': {\'simpleText\': \'597,507 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CL4CENwwGCQiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=7yTGYCrDBbs\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'7yTGYCrDBbs\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr3---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=ef24c6602ac305bb&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CL4CENwwGCQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'MD JCB XPERT\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CL4CENwwGCQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@MDJCBXPERT\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC0S4TBEsQgiyMJaZ5z1w_Mw\', \'canonicalBaseUrl\': \'/@MDJCBXPERT\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'MD JCB XPERT\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CL4CENwwGCQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@MDJCBXPERT\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC0S4TBEsQgiyMJaZ5z1w_Mw\', \'canonicalBaseUrl\': \'/@MDJCBXPERT\'}}}]}, \'trackingParams\': \'CL4CENwwGCQiEwiGsb7oo8OHAxWCi9gFHTJaAFVAu4uM1oLMsZLvAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'597K views\'}}, \'simpleText\': \'597K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CMICEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CMICEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'7yTGYCrDBbs\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CMICEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'7yTGYCrDBbs\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'7yTGYCrDBbs\']}}]}}, \'trackingParams\': \'CMICEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CL4CENwwGCQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'Cgs3eVRHWUNyREJicw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CL4CENwwGCQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CMECEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CL4CENwwGCQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CL4CENwwGCQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_k5gYNYLjIQLJj8V3O6z6IGuQyCnFuqLe8TY_uG-Lh05zE=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CL4CENwwGCQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@MDJCBXPERT\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC0S4TBEsQgiyMJaZ5z1w_Mw\', \'canonicalBaseUrl\': \'/@MDJCBXPERT\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'20 minutes, 12 seconds\'}}, \'simpleText\': \'20:12\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CMACEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'7yTGYCrDBbs\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CMACEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'7yTGYCrDBbs\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CMACEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CL8CEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CL8CEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'7yTGYCrDBbs\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CL8CEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'7yTGYCrDBbs\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'7yTGYCrDBbs\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CL8CEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_k5gYNYLjIQLJj8V3O6z6IGuQyCnFuqLe8TY_uG-Lh05zE=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CL4CENwwGCQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@MDJCBXPERT\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC0S4TBEsQgiyMJaZ5z1w_Mw\', \'canonicalBaseUrl\': \'/@MDJCBXPERT\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'wX-dDi36lNA\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/wX-dDi36lNA/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLB_jOYB9KjKHZnajZiqSxNAsE381g\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/wX-dDi36lNA/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCNFxY7mruRK7F4c16LP_SlEb52LQ\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/wX-dDi36lNA/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLD7F9csViCf68BFsIRnADQ2MchyRg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16314865, \'section3Color\': 15919335, \'primaryTitleColor\': 1642768, \'secondaryTitleColor\': 8344914, \'section4Color\': 15458013}, \'darkColorPalette\': {\'section2Color\': 3349787, \'section3Color\': 2495764, \'primaryTitleColor\': 16771045, \'secondaryTitleColor\': 13411747, \'section4Color\': 1641997}}, \'title\': {\'runs\': [{\'text\': \'DELHI TO MUMBAI IN MY BMW\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'DELHI TO MUMBAI IN MY BMW by SOUL Regaltos 510,916 views 2 days ago 16 minutes\'}}}, \'longBylineText\': {\'runs\': [{\'text\': \'SOUL Regaltos\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CLkCENwwGCUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@soulregaltos9810\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCwFRGieumnh1MrM5F3D65Tg\', \'canonicalBaseUrl\': \'/@soulregaltos9810\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'16 minutes, 1 second\'}}, \'simpleText\': \'16:01\'}, \'viewCountText\': {\'simpleText\': \'510,916 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CLkCENwwGCUiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=wX-dDi36lNA\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'wX-dDi36lNA\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr2---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=c17f9d0e2dfa94d0&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CLkCENwwGCUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'SOUL Regaltos\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CLkCENwwGCUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@soulregaltos9810\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCwFRGieumnh1MrM5F3D65Tg\', \'canonicalBaseUrl\': \'/@soulregaltos9810\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'SOUL Regaltos\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CLkCENwwGCUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@soulregaltos9810\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCwFRGieumnh1MrM5F3D65Tg\', \'canonicalBaseUrl\': \'/@soulregaltos9810\'}}}]}, \'trackingParams\': \'CLkCENwwGCUiEwiGsb7oo8OHAxWCi9gFHTJaAFVA0Knq7-Kh57_BAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'510K views\'}}, \'simpleText\': \'510K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CL0CEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CL0CEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'wX-dDi36lNA\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CL0CEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'wX-dDi36lNA\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'wX-dDi36lNA\']}}]}}, \'trackingParams\': \'CL0CEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CLkCENwwGCUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'Cgt3WC1kRGkzNmxOQQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CLkCENwwGCUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CLwCEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CLkCENwwGCUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CLkCENwwGCUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/S9xWprcFyvLqpr2YVxa8WhnEtu3BCBD0l-ZkeOdfxIUjMzy-JC5a2Uaq2QIkU1txrtFv7XurOLk=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CLkCENwwGCUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@soulregaltos9810\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCwFRGieumnh1MrM5F3D65Tg\', \'canonicalBaseUrl\': \'/@soulregaltos9810\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'16 minutes, 1 second\'}}, \'simpleText\': \'16:01\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CLsCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'wX-dDi36lNA\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CLsCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'wX-dDi36lNA\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CLsCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CLoCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CLoCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'wX-dDi36lNA\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CLoCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'wX-dDi36lNA\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'wX-dDi36lNA\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CLoCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/S9xWprcFyvLqpr2YVxa8WhnEtu3BCBD0l-ZkeOdfxIUjMzy-JC5a2Uaq2QIkU1txrtFv7XurOLk=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CLkCENwwGCUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@soulregaltos9810\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCwFRGieumnh1MrM5F3D65Tg\', \'canonicalBaseUrl\': \'/@soulregaltos9810\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'hqJ9Q2iPdF4\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/hqJ9Q2iPdF4/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLCB3kMqFi8Udr7DUYnMEAbavsZ0aw\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/hqJ9Q2iPdF4/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCeNnxSbYm0GT4o5AutXM6jFJ0vEg\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/hqJ9Q2iPdF4/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCFueO_ApF2mz-OnFlcTvOmuvWQ8g\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15857905, \'section3Color\': 15266535, \'primaryTitleColor\': 1251602, \'secondaryTitleColor\': 5401423, \'section4Color\': 14674909}, \'darkColorPalette\': {\'section2Color\': 1910300, \'section3Color\': 1251602, \'primaryTitleColor\': 15269861, \'secondaryTitleColor\': 10996899, \'section4Color\': 592905}}, \'title\': {\'runs\': [{\'text\': \'\xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa6\xc2\xab\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\\x89 \xc3\xa0\xc2\xa6\\x9c\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\xc2\xaa\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa7\\x87 \xc3\xa0\xc2\xa6\xc2\xb6\xc3\xa0\xc2\xa6\xc2\xa8\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\xc2\xa6\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\xc2\xa8\xc3\xa0\xc2\xa7\\x87 \xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa7\\x80 \xc3\xa0\xc2\xa6\\x85\xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xb8\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xa5\xc3\xa0\xc2\xa6\xc2\xbe \xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\\x82\xc3\xa0\xc2\xa6\xc2\xb2\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xa6\xc3\xa0\xc2\xa7\\x87\xc3\xa0\xc2\xa6\xc2\xb6\xc3\xa0\xc2\xa7\\x87?\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'\xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa6\xc2\xab\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\\x89 \xc3\xa0\xc2\xa6\\x9c\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\xc2\xaa\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa7\\x87 \xc3\xa0\xc2\xa6\xc2\xb6\xc3\xa0\xc2\xa6\xc2\xa8\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\xc2\xa6\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\xc2\xa8\xc3\xa0\xc2\xa7\\x87 \xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa7\\x80 \xc3\xa0\xc2\xa6\\x85\xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xb8\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xa5\xc3\xa0\xc2\xa6\xc2\xbe \xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\\x82\xc3\xa0\xc2\xa6\xc2\xb2\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xa6\xc3\xa0\xc2\xa7\\x87\xc3\xa0\xc2\xa6\xc2\xb6\xc3\xa0\xc2\xa7\\x87? by BBC News \xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\\x82\xc3\xa0\xc2\xa6\xc2\xb2\xc3\xa0\xc2\xa6\xc2\xbe 1,924,479 views 5 days ago 3 minutes, 54 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'\xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\\x82\xc3\xa0\xc2\xa6\xc2\xb2\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xa6\xc3\xa0\xc2\xa7\\x87\xc3\xa0\xc2\xa6\xc2\xb6\xc3\xa0\xc2\xa7\\x87 \xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa6\xc2\xab\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\\x89 \xc3\xa0\xc2\xa6\\x9c\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa6\xc2\xbf \xc3\xa0\xc2\xa6\xc2\xb9\xc3\xa0\xc2\xa6\\x93\xc3\xa0\xc2\xa6\xc2\xaf\xc3\xa0\xc2\xa6\xc2\xbc\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\xc2\xaa\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\xc2\xb8\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa6\xc2\xbe \xc3\xa0\xc2\xa6\xc2\xa6\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\xc2\xa8\xc3\xa0\xc2\xa7\\x87\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\\x97\xc3\xa0\xc2\xa7\\x81\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa7\\x81\xc3\xa0\xc2\xa6\xc2\xa4\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xaa\xc3\xa0\xc2\xa7\\x82\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xa3 \xc3\xa0\xc2\xa6\xc2\xb8\xc3\xa0\xc2\xa6\xc2\xac \xc3\xa0\xc2\xa6\\x96\xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\xc2\xa2\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa6\xc2\xbe \xc3\xa0\xc2\xa6\xc2\xa5\xc3\xa0\xc2\xa7\\x87\xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa7\\x87...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'BBC News \xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\\x82\xc3\xa0\xc2\xa6\xc2\xb2\xc3\xa0\xc2\xa6\xc2\xbe\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CLQCENwwGCYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@BBCBangla\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UChPD2BQ2dJ-w00klQQkc-Qg\', \'canonicalBaseUrl\': \'/@BBCBangla\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'5 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3 minutes, 54 seconds\'}}, \'simpleText\': \'3:54\'}, \'viewCountText\': {\'simpleText\': \'1,924,479 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CLQCENwwGCYiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=hqJ9Q2iPdF4\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'hqJ9Q2iPdF4\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr4---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=86a27d43688f745e&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CLQCENwwGCYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'BBC News \xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\\x82\xc3\xa0\xc2\xa6\xc2\xb2\xc3\xa0\xc2\xa6\xc2\xbe\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CLQCENwwGCYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@BBCBangla\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UChPD2BQ2dJ-w00klQQkc-Qg\', \'canonicalBaseUrl\': \'/@BBCBangla\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'BBC News \xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\\x82\xc3\xa0\xc2\xa6\xc2\xb2\xc3\xa0\xc2\xa6\xc2\xbe\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CLQCENwwGCYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@BBCBangla\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UChPD2BQ2dJ-w00klQQkc-Qg\', \'canonicalBaseUrl\': \'/@BBCBangla\'}}}]}, \'trackingParams\': \'CLQCENwwGCYiEwiGsb7oo8OHAxWCi9gFHTJaAFVA3ui9xLaon9GGAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'1.9 million views\'}}, \'simpleText\': \'1.9M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CLgCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CLgCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'hqJ9Q2iPdF4\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CLgCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'hqJ9Q2iPdF4\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'hqJ9Q2iPdF4\']}}]}}, \'trackingParams\': \'CLgCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CLQCENwwGCYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtocUo5UTJpUGRGNA%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CLQCENwwGCYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CLcCEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CLQCENwwGCYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CLQCENwwGCYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_nYQasPURYl1CI-tDg2qISGhHNYghNO0nZMe7GC-DsvUyc=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CLQCENwwGCYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@BBCBangla\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UChPD2BQ2dJ-w00klQQkc-Qg\', \'canonicalBaseUrl\': \'/@BBCBangla\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3 minutes, 54 seconds\'}}, \'simpleText\': \'3:54\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CLYCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'hqJ9Q2iPdF4\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CLYCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'hqJ9Q2iPdF4\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CLYCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CLUCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CLUCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'hqJ9Q2iPdF4\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CLUCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'hqJ9Q2iPdF4\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'hqJ9Q2iPdF4\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CLUCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_nYQasPURYl1CI-tDg2qISGhHNYghNO0nZMe7GC-DsvUyc=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CLQCENwwGCYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@BBCBangla\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UChPD2BQ2dJ-w00klQQkc-Qg\', \'canonicalBaseUrl\': \'/@BBCBangla\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'BGy3EbyMmfU\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/BGy3EbyMmfU/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLANaPz-S7yPj_0gpt74Jnmo4aB3bQ\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/BGy3EbyMmfU/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCWOSbIOIm-8zP_l3B_nwTl7_wvAw\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/BGy3EbyMmfU/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCK3ed30bLtK6BzXQi3QpC9qSBbHg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315889, \'section3Color\': 15920615, \'primaryTitleColor\': 1644307, \'secondaryTitleColor\': 7037009, \'section4Color\': 15460061}, \'darkColorPalette\': {\'section2Color\': 2630687, \'section3Color\': 1644307, \'primaryTitleColor\': 16774373, \'secondaryTitleColor\': 13417379, \'section4Color\': 789257}}, \'title\': {\'runs\': [{\'text\': \'Sawan Somvar Vrat Katha : \xc3\xa0\xc2\xa4\\x86\xc3\xa0\xc2\xa4\\x9c \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\xc2\xa6\xc3\xa0\xc2\xa4\xc2\xbf\xc3\xa0\xc2\xa4\xc2\xa8 \xc3\xa0\xc2\xa4\xc2\xaf\xc3\xa0\xc2\xa4\xc2\xb9 \xc3\xa0\xc2\xa4\\x9a\xc3\xa0\xc2\xa4\xc2\xae\xc3\xa0\xc2\xa4\xc2\xa4\xc3\xa0\xc2\xa5\\x8d\xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xbe\xc3\xa0\xc2\xa4\xc2\xb0\xc3\xa0\xc2\xa5\\x80 \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xa5\xc3\xa0\xc2\xa4\xc2\xbe \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa5\\x81\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\\xad\xc3\xa0\xc2\xa5\\x8b\xc3\xa0\xc2\xa4\xc2\xb2\xc3\xa0\xc2\xa5\\x87\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa4\xc2\xbe\xc3\xa0\xc2\xa4\xc2\xa5 \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa4\\xad\xc3\xa0\xc2\xa5\\x80 \xc3\xa0\xc2\xa4\xc2\xae\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa5\\x8b\xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xbe\xc3\xa0\xc2\xa4\xc2\xae\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa4\xc2\xbe \xc3\xa0\xc2\xa4\xc2\xaa\xc3\xa0\xc2\xa5\\x82\xc3\xa0\xc2\xa4\xc2\xb0\xc3\xa0\xc2\xa5\\x8d\xc3\xa0\xc2\xa4\xc2\xa3 \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xb0\xc3\xa0\xc2\xa4\xc2\xa4\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\xc2\xb9\xc3\xa0\xc2\xa5\\x88\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Sawan Somvar Vrat Katha : \xc3\xa0\xc2\xa4\\x86\xc3\xa0\xc2\xa4\\x9c \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\xc2\xa6\xc3\xa0\xc2\xa4\xc2\xbf\xc3\xa0\xc2\xa4\xc2\xa8 \xc3\xa0\xc2\xa4\xc2\xaf\xc3\xa0\xc2\xa4\xc2\xb9 \xc3\xa0\xc2\xa4\\x9a\xc3\xa0\xc2\xa4\xc2\xae\xc3\xa0\xc2\xa4\xc2\xa4\xc3\xa0\xc2\xa5\\x8d\xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xbe\xc3\xa0\xc2\xa4\xc2\xb0\xc3\xa0\xc2\xa5\\x80 \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xa5\xc3\xa0\xc2\xa4\xc2\xbe \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa5\\x81\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\\xad\xc3\xa0\xc2\xa5\\x8b\xc3\xa0\xc2\xa4\xc2\xb2\xc3\xa0\xc2\xa5\\x87\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa4\xc2\xbe\xc3\xa0\xc2\xa4\xc2\xa5 \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa4\\xad\xc3\xa0\xc2\xa5\\x80 \xc3\xa0\xc2\xa4\xc2\xae\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa5\\x8b\xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xbe\xc3\xa0\xc2\xa4\xc2\xae\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa4\xc2\xbe \xc3\xa0\xc2\xa4\xc2\xaa\xc3\xa0\xc2\xa5\\x82\xc3\xa0\xc2\xa4\xc2\xb0\xc3\xa0\xc2\xa5\\x8d\xc3\xa0\xc2\xa4\xc2\xa3 \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xb0\xc3\xa0\xc2\xa4\xc2\xa4\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\xc2\xb9\xc3\xa0\xc2\xa5\\x88 by Trimurti Bhakti 1,741,172 views 4 days ago 28 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'#trimurtibhakti \\nSawan Somvar Vrat Katha : \xc3\xa0\xc2\xa4\\x86\xc3\xa0\xc2\xa4\\x9c \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\xc2\xa6\xc3\xa0\xc2\xa4\xc2\xbf\xc3\xa0\xc2\xa4\xc2\xa8 \xc3\xa0\xc2\xa4\xc2\xaf\xc3\xa0\xc2\xa4\xc2\xb9 \xc3\xa0\xc2\xa4\\x9a\xc3\xa0\xc2\xa4\xc2\xae\xc3\xa0\xc2\xa4\xc2\xa4\xc3\xa0\xc2\xa5\\x8d\xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xbe\xc3\xa0\xc2\xa4\xc2\xb0\xc3\xa0\xc2\xa5\\x80 \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xa5\xc3\xa0\xc2\xa4\xc2\xbe \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa5\\x81\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\\xad\xc3\xa0\xc2\xa5\\x8b\xc3\xa0\xc2\xa4\xc2\xb2\xc3\xa0\xc2\xa5\\x87\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa4\xc2\xbe\xc3\xa0\xc2\xa4\xc2\xa5 \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa4\\xad\xc3\xa0\xc2\xa5\\x80 \xc3\xa0\xc2\xa4\xc2\xae\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa5\\x8b\xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xbe\xc3\xa0\xc2\xa4\xc2\xae\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa4\xc2\xbe...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Trimurti Bhakti\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CK8CENwwGCciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@trimurtibhaktist\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCVhgR0R_67-i_dpb1p5ALww\', \'canonicalBaseUrl\': \'/@trimurtibhaktist\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'4 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'28 minutes, 9 seconds\'}}, \'simpleText\': \'28:09\'}, \'viewCountText\': {\'simpleText\': \'1,741,172 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CK8CENwwGCciEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=BGy3EbyMmfU\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'BGy3EbyMmfU\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr3---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=046cb711bc8c99f5&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerText\': {\'runs\': [{\'text\': \'Trimurti Bhakti\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CK8CENwwGCciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@trimurtibhaktist\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCVhgR0R_67-i_dpb1p5ALww\', \'canonicalBaseUrl\': \'/@trimurtibhaktist\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Trimurti Bhakti\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CK8CENwwGCciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@trimurtibhaktist\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCVhgR0R_67-i_dpb1p5ALww\', \'canonicalBaseUrl\': \'/@trimurtibhaktist\'}}}]}, \'trackingParams\': \'CK8CENwwGCciEwiGsb7oo8OHAxWCi9gFHTJaAFVA9bOy5JvirbYE\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'1.7 million views\'}}, \'simpleText\': \'1.7M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CLMCEP6YBBgHIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CLMCEP6YBBgHIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'BGy3EbyMmfU\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CLMCEP6YBBgHIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'BGy3EbyMmfU\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'BGy3EbyMmfU\']}}]}}, \'trackingParams\': \'CLMCEP6YBBgHIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CK8CENwwGCciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtCR3kzRWJ5TW1mVQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CK8CENwwGCciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CLICEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CK8CENwwGCciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CK8CENwwGCciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_meGBuEFNl7Cyf6Axuoi9zmjr2FCxwAxC-Q2-_xZYsZ5Q=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CK8CENwwGCciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@trimurtibhaktist\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCVhgR0R_67-i_dpb1p5ALww\', \'canonicalBaseUrl\': \'/@trimurtibhaktist\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'28 minutes, 9 seconds\'}}, \'simpleText\': \'28:09\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CLECEPnnAxgBIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'BGy3EbyMmfU\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CLECEPnnAxgBIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'BGy3EbyMmfU\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CLECEPnnAxgBIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CLACEMfsBBgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CLACEMfsBBgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'BGy3EbyMmfU\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CLACEMfsBBgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'BGy3EbyMmfU\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'BGy3EbyMmfU\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CLACEMfsBBgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_meGBuEFNl7Cyf6Axuoi9zmjr2FCxwAxC-Q2-_xZYsZ5Q=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CK8CENwwGCciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@trimurtibhaktist\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCVhgR0R_67-i_dpb1p5ALww\', \'canonicalBaseUrl\': \'/@trimurtibhaktist\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'E0AWS0O1Bjc\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/E0AWS0O1Bjc/hqdefault.jpg?sqp=-oaymwE8CNIBEHZIWvKriqkDLwgBFQAAAAAYASUAAMhCPQCAokN4AfABAfgB_gmAAtAFigIMCAAQARhEIGUoVTAP&rs=AOn4CLD4dUWkdwji76x0I1Pvop8ApILKaw\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/E0AWS0O1Bjc/hqdefault.jpg?sqp=-oaymwE9CPYBEIoBSFryq4qpAy8IARUAAAAAGAElAADIQj0AgKJDeAHwAQH4Af4JgALQBYoCDAgAEAEYRCBlKFUwDw==&rs=AOn4CLAkDFrIBG70ZTGN4fP6UQ9Qw9YrSg\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/E0AWS0O1Bjc/hqdefault.jpg?sqp=-oaymwE9CNACELwBSFryq4qpAy8IARUAAAAAGAElAADIQj0AgKJDeAHwAQH4Af4JgALQBYoCDAgAEAEYRCBlKFUwDw==&rs=AOn4CLAZUQ3XKbgcolQWMsZFfYd6WF30ng\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15857909, \'section3Color\': 15201005, \'primaryTitleColor\': 1120533, \'secondaryTitleColor\': 4680538, \'section4Color\': 14543845}, \'darkColorPalette\': {\'section2Color\': 1648160, \'section3Color\': 1120533, \'primaryTitleColor\': 15073266, \'secondaryTitleColor\': 10734776, \'section4Color\': 527370}}, \'title\': {\'runs\': [{\'text\': \'I FINALLY ESCAPED FROM THE CLASSROOMS\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'I FINALLY ESCAPED FROM THE CLASSROOMS by Techno Gamerz 3,382,991 views 1 day ago 50 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'I FINALLY ESCAPED FROM THE CLASSROOMS\\n#technogamerz \\n\\nSubscribe to our Second YouTube Channel: https://www.youtube.com/c/UjjwalGamer\\n\\n\\nShare, Support, Subscribe!!!\\nSubscribe: http://bit.ly/technoga...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Techno Gamerz\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CKoCENwwGCgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/channel/UCX8pnu3DYUnx8qy8V_c6oHg\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCX8pnu3DYUnx8qy8V_c6oHg\', \'canonicalBaseUrl\': \'/channel/UCX8pnu3DYUnx8qy8V_c6oHg\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'1 day ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'50 minutes, 44 seconds\'}}, \'simpleText\': \'50:44\'}, \'viewCountText\': {\'simpleText\': \'3,382,991 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CKoCENwwGCgiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=E0AWS0O1Bjc\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'E0AWS0O1Bjc\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr2---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=1340164b43b50637&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'OFFICIAL_ARTIST_BADGE\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED_ARTIST\', \'tooltip\': \'Official Artist Channel\', \'trackingParams\': \'CKoCENwwGCgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Official Artist Channel\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Techno Gamerz\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CKoCENwwGCgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/channel/UCX8pnu3DYUnx8qy8V_c6oHg\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCX8pnu3DYUnx8qy8V_c6oHg\', \'canonicalBaseUrl\': \'/channel/UCX8pnu3DYUnx8qy8V_c6oHg\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Techno Gamerz\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CKoCENwwGCgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/channel/UCX8pnu3DYUnx8qy8V_c6oHg\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCX8pnu3DYUnx8qy8V_c6oHg\', \'canonicalBaseUrl\': \'/channel/UCX8pnu3DYUnx8qy8V_c6oHg\'}}}]}, \'trackingParams\': \'CKoCENwwGCgiEwiGsb7oo8OHAxWCi9gFHTJaAFVAt4zUnbTJhaAT\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3.3 million views\'}}, \'simpleText\': \'3.3M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CK4CEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CK4CEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'E0AWS0O1Bjc\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CK4CEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'E0AWS0O1Bjc\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'E0AWS0O1Bjc\']}}]}}, \'trackingParams\': \'CK4CEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CKoCENwwGCgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtFMEFXUzBPMUJqYw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CKoCENwwGCgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CK0CEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CKoCENwwGCgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CKoCENwwGCgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_moocNXstALFiII02ett7RzPa_9lSiAAm9bXNc3zoAdGkk=s88-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CKoCENwwGCgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/channel/UCX8pnu3DYUnx8qy8V_c6oHg\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCX8pnu3DYUnx8qy8V_c6oHg\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'50 minutes, 44 seconds\'}}, \'simpleText\': \'50:44\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CKwCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'E0AWS0O1Bjc\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CKwCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'E0AWS0O1Bjc\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CKwCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CKsCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CKsCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'E0AWS0O1Bjc\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CKsCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'E0AWS0O1Bjc\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'E0AWS0O1Bjc\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CKsCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_moocNXstALFiII02ett7RzPa_9lSiAAm9bXNc3zoAdGkk=s88-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CKoCENwwGCgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/channel/UCX8pnu3DYUnx8qy8V_c6oHg\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCX8pnu3DYUnx8qy8V_c6oHg\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'bkp1RMnVgbU\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/bkp1RMnVgbU/hqdefault.jpg?sqp=-oaymwE8CNIBEHZIWvKriqkDLwgBFQAAAAAYASUAAMhCPQCAokN4AfABAfgB_gmAAtAFigIMCAAQARg6IFsoZTAP&rs=AOn4CLBeJWSQNbgnpHu0b1km2CAUvHpxTA\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/bkp1RMnVgbU/hqdefault.jpg?sqp=-oaymwE9CPYBEIoBSFryq4qpAy8IARUAAAAAGAElAADIQj0AgKJDeAHwAQH4Af4JgALQBYoCDAgAEAEYOiBbKGUwDw==&rs=AOn4CLD6Png04lDo1it6vzMaTxHkheUdLQ\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/bkp1RMnVgbU/hqdefault.jpg?sqp=-oaymwE9CNACELwBSFryq4qpAy8IARUAAAAAGAElAADIQj0AgKJDeAHwAQH4Af4JgALQBYoCDAgAEAEYOiBbKGUwDw==&rs=AOn4CLBPiT7VVGlaQao7kpXAqs_lgQeQlw\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15857400, \'section3Color\': 15200242, \'primaryTitleColor\': 1054489, \'secondaryTitleColor\': 4744816, \'section4Color\': 14543083}, \'darkColorPalette\': {\'section2Color\': 1384998, \'section3Color\': 923161, \'primaryTitleColor\': 15071487, \'secondaryTitleColor\': 10732236, \'section4Color\': 461580}}, \'title\': {\'runs\': [{\'text\': "CLIMBING TO THE TOP, BUT WE\'RE CHAINED TOGETHER"}], \'accessibility\': {\'accessibilityData\': {\'label\': "CLIMBING TO THE TOP, BUT WE\'RE CHAINED TOGETHER by Ujjwal 2,878,115 views 4 days ago 46 minutes"}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': "CLIMBING TO THE TOP, BUT WE\'RE CHAINED TOGETHER\\n#ujjwal #technogamerz \\n\\nShare, Support, Subscribe!!!\\nSubscribe: http://bit.ly/ujjwalgamer\\nDiscord : https://bitly.com/ujjwaldiscord\\nYoutube:..."}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Ujjwal\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CKUCENwwGCkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@UjjwalGamer\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCl_vAxZpvbO-PFXdDu7EdHw\', \'canonicalBaseUrl\': \'/@UjjwalGamer\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'4 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'46 minutes, 57 seconds\'}}, \'simpleText\': \'46:57\'}, \'viewCountText\': {\'simpleText\': \'2,878,115 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CKUCENwwGCkiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=bkp1RMnVgbU\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'bkp1RMnVgbU\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr2---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=6e4a7544c9d581b5&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CKUCENwwGCkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Ujjwal\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CKUCENwwGCkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@UjjwalGamer\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCl_vAxZpvbO-PFXdDu7EdHw\', \'canonicalBaseUrl\': \'/@UjjwalGamer\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Ujjwal\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CKUCENwwGCkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@UjjwalGamer\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCl_vAxZpvbO-PFXdDu7EdHw\', \'canonicalBaseUrl\': \'/@UjjwalGamer\'}}}]}, \'trackingParams\': \'CKUCENwwGCkiEwiGsb7oo8OHAxWCi9gFHTJaAFVAtYPWzsyonaVu\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'2.8 million views\'}}, \'simpleText\': \'2.8M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CKkCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CKkCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'bkp1RMnVgbU\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CKkCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'bkp1RMnVgbU\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'bkp1RMnVgbU\']}}]}}, \'trackingParams\': \'CKkCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CKUCENwwGCkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'Cgtia3AxUk1uVmdiVQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CKUCENwwGCkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CKgCEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CKUCENwwGCkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CKUCENwwGCkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_lyELJ0LIqRHvTpOle1dqQlSNlLhMmvs0I0vSD5hjihoGI=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CKUCENwwGCkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@UjjwalGamer\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCl_vAxZpvbO-PFXdDu7EdHw\', \'canonicalBaseUrl\': \'/@UjjwalGamer\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'46 minutes, 57 seconds\'}}, \'simpleText\': \'46:57\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CKcCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'bkp1RMnVgbU\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CKcCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'bkp1RMnVgbU\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CKcCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CKYCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CKYCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'bkp1RMnVgbU\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CKYCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'bkp1RMnVgbU\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'bkp1RMnVgbU\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CKYCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_lyELJ0LIqRHvTpOle1dqQlSNlLhMmvs0I0vSD5hjihoGI=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CKUCENwwGCkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@UjjwalGamer\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCl_vAxZpvbO-PFXdDu7EdHw\', \'canonicalBaseUrl\': \'/@UjjwalGamer\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'vYZauUgBzyM\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/vYZauUgBzyM/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLDc4Eqs2Cjj8FGiLSXY6t4ZuSWmHA\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/vYZauUgBzyM/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLD4JFZX8YSw8WZv6iWsSfyHRfneMA\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/vYZauUgBzyM/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCGNgHaaaLZYqoVI2bTTuDQ4nU5uQ\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16314865, \'section3Color\': 15919079, \'primaryTitleColor\': 1642512, \'secondaryTitleColor\': 8344146, \'section4Color\': 15457757}, \'darkColorPalette\': {\'section2Color\': 3344135, \'section3Color\': 2491653, \'primaryTitleColor\': 16770533, \'secondaryTitleColor\': 13411235, \'section4Color\': 1639171}}, \'title\': {\'runs\': [{\'text\': \'How India just killed STOCK INVESTING! [10 Key Points!]\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'How India just killed STOCK INVESTING! [10 Key Points!] by Akshat Shrivastava 498,588 views Streamed 2 days ago 30 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'\xc3\xb0\\x9f\\x91\\x89 My Stock Market LIVE COURSE [CRASH COURSE over 3 weekends]\\nhttps://wisdomhatch.com/courses/stock-market-live-course-crash-course-limited-seats-september/\\n________________\\n\xc3\xb0\\x9f\\x91\\x89 Learn about...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Akshat Shrivastava\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CKACENwwGCoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AkshatZayn\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCqW8jxh4tH1Z1sWPbkGWL4g\', \'canonicalBaseUrl\': \'/@AkshatZayn\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'Streamed 2 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'30 minutes, 54 seconds\'}}, \'simpleText\': \'30:54\'}, \'viewCountText\': {\'simpleText\': \'498,588 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CKACENwwGCoiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=vYZauUgBzyM\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'vYZauUgBzyM\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr3---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=bd865ab94801cf23&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CKACENwwGCoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Akshat Shrivastava\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CKACENwwGCoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AkshatZayn\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCqW8jxh4tH1Z1sWPbkGWL4g\', \'canonicalBaseUrl\': \'/@AkshatZayn\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Akshat Shrivastava\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CKACENwwGCoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AkshatZayn\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCqW8jxh4tH1Z1sWPbkGWL4g\', \'canonicalBaseUrl\': \'/@AkshatZayn\'}}}]}, \'trackingParams\': \'CKACENwwGCoiEwiGsb7oo8OHAxWCi9gFHTJaAFVAo56HwJTXlsO9AQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'498K views\'}}, \'simpleText\': \'498K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CKQCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CKQCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'vYZauUgBzyM\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CKQCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'vYZauUgBzyM\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'vYZauUgBzyM\']}}]}}, \'trackingParams\': \'CKQCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CKACENwwGCoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'Cgt2WVphdVVnQnp5TQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CKACENwwGCoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CKMCEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CKACENwwGCoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CKACENwwGCoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ErG-whUmcqnEZfbrhdV1SqmwkNrYK0zd2nTKipi5xZ67MCEaugMaczmI2YRlYyW0-AG8xhZ6dQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CKACENwwGCoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AkshatZayn\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCqW8jxh4tH1Z1sWPbkGWL4g\', \'canonicalBaseUrl\': \'/@AkshatZayn\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'30 minutes, 54 seconds\'}}, \'simpleText\': \'30:54\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CKICEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'vYZauUgBzyM\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CKICEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'vYZauUgBzyM\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CKICEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CKECEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CKECEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'vYZauUgBzyM\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CKECEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'vYZauUgBzyM\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'vYZauUgBzyM\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CKECEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ErG-whUmcqnEZfbrhdV1SqmwkNrYK0zd2nTKipi5xZ67MCEaugMaczmI2YRlYyW0-AG8xhZ6dQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CKACENwwGCoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AkshatZayn\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCqW8jxh4tH1Z1sWPbkGWL4g\', \'canonicalBaseUrl\': \'/@AkshatZayn\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'_fOJFwvPnH4\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/_fOJFwvPnH4/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLAXE5DK0M6NNQhPA2LlXhJhk8xkQQ\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/_fOJFwvPnH4/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLAq3wuJVLyQBn3RD58kTYt_julMfg\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/_fOJFwvPnH4/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDs8F02xVGiUlKPFn5lXJb-Kj7Oxw\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315633, \'section3Color\': 15920103, \'primaryTitleColor\': 1643280, \'secondaryTitleColor\': 7691084, \'section4Color\': 15459293}, \'darkColorPalette\': {\'section2Color\': 3351837, \'section3Color\': 2497557, \'primaryTitleColor\': 16773093, \'secondaryTitleColor\': 13415075, \'section4Color\': 1643022}}, \'title\': {\'runs\': [{\'text\': \'Yeh Rishta Kya Kehlata Hai Today Episode NEW PROMO | 25th July 2024 |\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Yeh Rishta Kya Kehlata Hai Today Episode NEW PROMO | 25th July 2024 | by Telly Reporter 1,084,512 views 21 hours ago 1 minute\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Star Plus YRKKH / Yeh Rishta Kya Kehlata Hai Today NEW PROMO 25th July 2024 | \\n #yehrishtakyakehlatahai #samridhishukla #rohitpurohit #yrkkh \\n\xc3\xa2\\x9e\xc2\xa4Subscribe Telly Reporter @ http://bit.do/TellyRepor...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Telly Reporter\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJsCENwwGCsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TellyReporter\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCVGiG3GcphUyMzNXg2iMN3A\', \'canonicalBaseUrl\': \'/@TellyReporter\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'21 hours ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'1 minute\'}}, \'simpleText\': \'1:00\'}, \'viewCountText\': {\'simpleText\': \'1,084,512 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CJsCENwwGCsiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=_fOJFwvPnH4\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'_fOJFwvPnH4\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr2---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=fdf389170bcf9c7e&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CJsCENwwGCsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Telly Reporter\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJsCENwwGCsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TellyReporter\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCVGiG3GcphUyMzNXg2iMN3A\', \'canonicalBaseUrl\': \'/@TellyReporter\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Telly Reporter\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJsCENwwGCsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TellyReporter\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCVGiG3GcphUyMzNXg2iMN3A\', \'canonicalBaseUrl\': \'/@TellyReporter\'}}}]}, \'trackingParams\': \'CJsCENwwGCsiEwiGsb7oo8OHAxWCi9gFHTJaAFVA_ri-3vCi4vn9AQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'1 million views\'}}, \'simpleText\': \'1M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CJ8CEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CJ8CEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'_fOJFwvPnH4\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CJ8CEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'_fOJFwvPnH4\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'_fOJFwvPnH4\']}}]}}, \'trackingParams\': \'CJ8CEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CJsCENwwGCsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtfZk9KRnd2UG5INA%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CJsCENwwGCsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CJ4CEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CJsCENwwGCsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CJsCENwwGCsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/CNKuIZ-EqRmHMEua0RH_ogb5Nu0s6KwlJxHApBTzLlqo5wNGLI-fkuNtR3n44tFcm-dYXRoljrc=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CJsCENwwGCsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TellyReporter\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCVGiG3GcphUyMzNXg2iMN3A\', \'canonicalBaseUrl\': \'/@TellyReporter\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'1 minute\'}}, \'simpleText\': \'1:00\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CJ0CEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'_fOJFwvPnH4\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CJ0CEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'_fOJFwvPnH4\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CJ0CEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CJwCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CJwCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'_fOJFwvPnH4\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CJwCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'_fOJFwvPnH4\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'_fOJFwvPnH4\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CJwCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/CNKuIZ-EqRmHMEua0RH_ogb5Nu0s6KwlJxHApBTzLlqo5wNGLI-fkuNtR3n44tFcm-dYXRoljrc=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CJsCENwwGCsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TellyReporter\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCVGiG3GcphUyMzNXg2iMN3A\', \'canonicalBaseUrl\': \'/@TellyReporter\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'UbwwZlQ0-E8\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/UbwwZlQ0-E8/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLCjBJv_VNhagOME0Se_FvhF6dVCTQ\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/UbwwZlQ0-E8/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDxyUDN8uIxUhDMnsO9jLZvd9KMog\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/UbwwZlQ0-E8/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBAHZJJo5sM6HnElupCTuQTu84LAw\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15856632, \'section3Color\': 15198962, \'primaryTitleColor\': 1250329, \'secondaryTitleColor\': 5791605, \'section4Color\': 14541291}, \'darkColorPalette\': {\'section2Color\': 2500915, \'section3Color\': 1842982, \'primaryTitleColor\': 15068415, \'secondaryTitleColor\': 10726860, \'section4Color\': 1250329}}, \'title\': {\'runs\': [{\'text\': \'More than 150 killed in Bangladesh protests | BBC News\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'More than 150 killed in Bangladesh protests | BBC News by BBC News 1,638,299 views 3 days ago 5 minutes, 36 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': "A number of students in Bangladesh have vowed to continue protesting, despite the Supreme Court\'s decision to change the controversial government job quotas which sparked last week\'s protests..."}]}, \'longBylineText\': {\'runs\': [{\'text\': \'BBC News\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJYCENwwGCwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@BBCNews\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC16niRr50-MSBwiO3YDb3RA\', \'canonicalBaseUrl\': \'/@BBCNews\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'3 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'5 minutes, 36 seconds\'}}, \'simpleText\': \'5:36\'}, \'viewCountText\': {\'simpleText\': \'1,638,299 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CJYCENwwGCwiEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=UbwwZlQ0-E8\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'UbwwZlQ0-E8\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr1---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=51bc30665434f84f&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CJYCENwwGCwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'BBC News\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJYCENwwGCwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@BBCNews\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC16niRr50-MSBwiO3YDb3RA\', \'canonicalBaseUrl\': \'/@BBCNews\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'BBC News\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJYCENwwGCwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@BBCNews\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC16niRr50-MSBwiO3YDb3RA\', \'canonicalBaseUrl\': \'/@BBCNews\'}}}]}, \'trackingParams\': \'CJYCENwwGCwiEwiGsb7oo8OHAxWCi9gFHTJaAFVAz_DToeWMjN5R\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'1.6 million views\'}}, \'simpleText\': \'1.6M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CJoCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CJoCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'UbwwZlQ0-E8\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CJoCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'UbwwZlQ0-E8\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'UbwwZlQ0-E8\']}}]}}, \'trackingParams\': \'CJoCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CJYCENwwGCwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtVYnd3WmxRMC1FOA%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CJYCENwwGCwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CJkCEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CJYCENwwGCwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CJYCENwwGCwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/y_esGAQOhX4rTpWvrALErAJlFbm_2TIVrvcVfcZny7TuA8dJZgOQcC6KRfd_J5hljFe-foYXj9U=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CJYCENwwGCwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@BBCNews\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC16niRr50-MSBwiO3YDb3RA\', \'canonicalBaseUrl\': \'/@BBCNews\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'5 minutes, 36 seconds\'}}, \'simpleText\': \'5:36\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CJgCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'UbwwZlQ0-E8\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CJgCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'UbwwZlQ0-E8\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CJgCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CJcCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CJcCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'UbwwZlQ0-E8\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CJcCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'UbwwZlQ0-E8\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'UbwwZlQ0-E8\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CJcCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/y_esGAQOhX4rTpWvrALErAJlFbm_2TIVrvcVfcZny7TuA8dJZgOQcC6KRfd_J5hljFe-foYXj9U=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CJYCENwwGCwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@BBCNews\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC16niRr50-MSBwiO3YDb3RA\', \'canonicalBaseUrl\': \'/@BBCNews\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'ow2Jxem9o7E\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/ow2Jxem9o7E/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLCRk2U-u91fOQ_XJgYZ5DRjaITvSQ\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/ow2Jxem9o7E/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLA8r9MKa-zowE38w3z78zW01QHISA\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/ow2Jxem9o7E/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBHQWWuTb7Nz9q_I49Fjy-lbRJbvw\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315377, \'section3Color\': 15919847, \'primaryTitleColor\': 1643280, \'secondaryTitleColor\': 8018767, \'section4Color\': 15458781}, \'darkColorPalette\': {\'section2Color\': 3347463, \'section3Color\': 2494213, \'primaryTitleColor\': 16772325, \'secondaryTitleColor\': 13414051, \'section4Color\': 1640963}}, \'title\': {\'runs\': [{\'text\': \'VIKRANT REDDY | TOP REAL TEAM | TRT\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'VIKRANT REDDY | TOP REAL TEAM | TRT by Top Real Team 5,397,702 views 4 days ago 48 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Download Zupee and win Real cash https://app.adjust.com/1e4efgxa?redirect=https%3A%2F%2Fwww.zupee.com%2F\\n\\nUse Promocode TRT15 to get Rs 15 signup bonus\\n\\n#SadiyonSeIndiaKaApnagame\\n#IndiaKaApnaGame...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Top Real Team\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJECENwwGC0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TopRealTeam\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCodBDtYUuhigSVKksHpYMTw\', \'canonicalBaseUrl\': \'/@TopRealTeam\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'4 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'48 minutes, 42 seconds\'}}, \'simpleText\': \'48:42\'}, \'viewCountText\': {\'simpleText\': \'5,397,702 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CJECENwwGC0iEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=ow2Jxem9o7E\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'ow2Jxem9o7E\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr4---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=a30d89c5e9bda3b1&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CJECENwwGC0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Top Real Team\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJECENwwGC0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TopRealTeam\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCodBDtYUuhigSVKksHpYMTw\', \'canonicalBaseUrl\': \'/@TopRealTeam\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Top Real Team\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJECENwwGC0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TopRealTeam\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCodBDtYUuhigSVKksHpYMTw\', \'canonicalBaseUrl\': \'/@TopRealTeam\'}}}]}, \'trackingParams\': \'CJECENwwGC0iEwiGsb7oo8OHAxWCi9gFHTJaAFVAscf2zd644oajAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'5.3 million views\'}}, \'simpleText\': \'5.3M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CJUCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CJUCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'ow2Jxem9o7E\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CJUCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'ow2Jxem9o7E\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'ow2Jxem9o7E\']}}]}}, \'trackingParams\': \'CJUCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CJECENwwGC0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtvdzJKeGVtOW83RQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CJECENwwGC0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CJQCEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CJECENwwGC0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CJECENwwGC0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_lZi07tDx5ikd7WteiSLk1nWWdAoWEO5Z4HD2ACEcq0Ozw=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CJECENwwGC0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TopRealTeam\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCodBDtYUuhigSVKksHpYMTw\', \'canonicalBaseUrl\': \'/@TopRealTeam\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'48 minutes, 42 seconds\'}}, \'simpleText\': \'48:42\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CJMCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'ow2Jxem9o7E\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CJMCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'ow2Jxem9o7E\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CJMCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CJICEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CJICEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'ow2Jxem9o7E\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CJICEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'ow2Jxem9o7E\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'ow2Jxem9o7E\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CJICEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_lZi07tDx5ikd7WteiSLk1nWWdAoWEO5Z4HD2ACEcq0Ozw=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CJECENwwGC0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TopRealTeam\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCodBDtYUuhigSVKksHpYMTw\', \'canonicalBaseUrl\': \'/@TopRealTeam\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'d8ZWJ1bpmy0\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/d8ZWJ1bpmy0/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLAZgYqRvGBTSkE8yfZ6iiVLW1BnpQ\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/d8ZWJ1bpmy0/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDZ07WudSvnT6I882uGYMrAki1pbg\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/d8ZWJ1bpmy0/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBv7jWYqqb_SXidlnmQN8DKLQUqgg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16250871, \'section3Color\': 15724527, \'primaryTitleColor\': 1644825, \'secondaryTitleColor\': 6645093, \'section4Color\': 15263976}, \'darkColorPalette\': {\'section2Color\': 2631720, \'section3Color\': 1644825, \'primaryTitleColor\': 16777215, \'secondaryTitleColor\': 13421772, \'section4Color\': 789516}}, \'title\': {\'runs\': [{\'text\': \'My Labour And Birth Story - Everything Explained!!\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'My Labour And Birth Story - Everything Explained!! by Super Style Tips 213,829 views 1 day ago 19 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'my Gynaecologist: Priya Gupta \\ncocoon Hospital\\n9414055050\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Super Style Tips\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CIwCENwwGC4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SuperStyleTips\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCMGd2CJgU3oNA1z0_Pb83eA\', \'canonicalBaseUrl\': \'/@SuperStyleTips\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'1 day ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'19 minutes, 3 seconds\'}}, \'simpleText\': \'19:03\'}, \'viewCountText\': {\'simpleText\': \'213,829 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CIwCENwwGC4iEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=d8ZWJ1bpmy0\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'d8ZWJ1bpmy0\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr1---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=77c6562756e99b2d&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CIwCENwwGC4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Super Style Tips\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CIwCENwwGC4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SuperStyleTips\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCMGd2CJgU3oNA1z0_Pb83eA\', \'canonicalBaseUrl\': \'/@SuperStyleTips\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Super Style Tips\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CIwCENwwGC4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SuperStyleTips\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCMGd2CJgU3oNA1z0_Pb83eA\', \'canonicalBaseUrl\': \'/@SuperStyleTips\'}}}]}, \'trackingParams\': \'CIwCENwwGC4iEwiGsb7oo8OHAxWCi9gFHTJaAFVArbamt_XEleN3\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'213K views\'}}, \'simpleText\': \'213K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CJACEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CJACEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'d8ZWJ1bpmy0\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CJACEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'d8ZWJ1bpmy0\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'d8ZWJ1bpmy0\']}}]}}, \'trackingParams\': \'CJACEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CIwCENwwGC4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtkOFpXSjFicG15MA%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CIwCENwwGC4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CI8CEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CIwCENwwGC4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CIwCENwwGC4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_maA0DxSqqzFLXnqfqXG9xyb0YAh0ShY-aESI9Bgz8ZIQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CIwCENwwGC4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SuperStyleTips\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCMGd2CJgU3oNA1z0_Pb83eA\', \'canonicalBaseUrl\': \'/@SuperStyleTips\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'19 minutes, 3 seconds\'}}, \'simpleText\': \'19:03\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CI4CEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'d8ZWJ1bpmy0\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CI4CEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'d8ZWJ1bpmy0\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CI4CEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CI0CEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CI0CEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'d8ZWJ1bpmy0\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CI0CEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'d8ZWJ1bpmy0\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'d8ZWJ1bpmy0\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CI0CEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_maA0DxSqqzFLXnqfqXG9xyb0YAh0ShY-aESI9Bgz8ZIQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CIwCENwwGC4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SuperStyleTips\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCMGd2CJgU3oNA1z0_Pb83eA\', \'canonicalBaseUrl\': \'/@SuperStyleTips\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'ns3Cwn91rY0\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/ns3Cwn91rY0/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLBpjV1b-JaoItuRqboe0Ft0ypvtDg\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/ns3Cwn91rY0/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDs5mdkMDZnUpDZKBMj4wXqfzllBw\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/ns3Cwn91rY0/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLApFtJNUaQjgXMIxz9xG906QAcRUg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315121, \'section3Color\': 15919591, \'primaryTitleColor\': 1643024, \'secondaryTitleColor\': 8017999, \'section4Color\': 15458525}, \'darkColorPalette\': {\'section2Color\': 3349268, \'section3Color\': 2495503, \'primaryTitleColor\': 16772069, \'secondaryTitleColor\': 13413539, \'section4Color\': 1641738}}, \'title\': {\'runs\': [{\'text\': \'Veg Khana Mangaya Or NonVeg Aagya \xc3\xb0\\x9f\\x98\xc2\xb3\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Veg Khana Mangaya Or NonVeg Aagya \xc3\xb0\\x9f\\x98\xc2\xb3 by Sourav Joshi Vlogs 4,104,736 views 1 day ago 10 minutes, 1 second\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Folllow me on Instagram- https://www.instagram.com/souravjoshivlogs/?hl=en\\n \\nI hope you enjoyed this video\\n\\nhit likes.\\nAnd do subscribe to my channel\\n\\nThank you so much for watching\\n\\ngod bless...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Sourav Joshi Vlogs\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CIcCENwwGC8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@souravjoshivlogs7028\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjvgGbPPn-FgYeguc5nxG4A\', \'canonicalBaseUrl\': \'/@souravjoshivlogs7028\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'1 day ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'10 minutes, 1 second\'}}, \'simpleText\': \'10:01\'}, \'viewCountText\': {\'simpleText\': \'4,104,736 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CIcCENwwGC8iEwiGsb7oo8OHAxWCi9gFHTJaAFUyCmctaGlnaC10cnZaCkZFdHJlbmRpbmeaAQcQ8vAFGPkB\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=ns3Cwn91rY0\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'ns3Cwn91rY0\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr3---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=9ecdc2c27f75ad8d&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CIcCENwwGC8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Sourav Joshi Vlogs\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CIcCENwwGC8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@souravjoshivlogs7028\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjvgGbPPn-FgYeguc5nxG4A\', \'canonicalBaseUrl\': \'/@souravjoshivlogs7028\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Sourav Joshi Vlogs\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CIcCENwwGC8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@souravjoshivlogs7028\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjvgGbPPn-FgYeguc5nxG4A\', \'canonicalBaseUrl\': \'/@souravjoshivlogs7028\'}}}]}, \'trackingParams\': \'CIcCENwwGC8iEwiGsb7oo8OHAxWCi9gFHTJaAFVAjdvW-6fY8OaeAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'4.1 million views\'}}, \'simpleText\': \'4.1M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CIsCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CIsCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'ns3Cwn91rY0\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CIsCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'ns3Cwn91rY0\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'ns3Cwn91rY0\']}}]}}, \'trackingParams\': \'CIsCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CIcCENwwGC8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtuczNDd245MXJZMA%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CIcCENwwGC8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CIoCEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CIcCENwwGC8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CIcCENwwGC8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/f6BWKFJa-1DcnqCIqiGCqNl2daN4rSo21UogJbKcmPC6h_VkvlF3TQ1rF-I6hN66hZ6Dfjb-bA=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CIcCENwwGC8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@souravjoshivlogs7028\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjvgGbPPn-FgYeguc5nxG4A\', \'canonicalBaseUrl\': \'/@souravjoshivlogs7028\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'10 minutes, 1 second\'}}, \'simpleText\': \'10:01\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CIkCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'ns3Cwn91rY0\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CIkCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'ns3Cwn91rY0\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CIkCEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CIgCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CIgCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'ns3Cwn91rY0\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CIgCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'ns3Cwn91rY0\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'ns3Cwn91rY0\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CIgCEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/f6BWKFJa-1DcnqCIqiGCqNl2daN4rSo21UogJbKcmPC6h_VkvlF3TQ1rF-I6hN66hZ6Dfjb-bA=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CIcCENwwGC8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@souravjoshivlogs7028\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjvgGbPPn-FgYeguc5nxG4A\', \'canonicalBaseUrl\': \'/@souravjoshivlogs7028\'}}}}}}}}}]}}, \'trackingParams\': \'CIYCENwcGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CIUCELsvGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'itemSectionRenderer\': {\'contents\': [{\'shelfRenderer\': {\'title\': {\'runs\': [{\'text\': \'Recently trending\'}]}, \'content\': {\'expandedShelfContentsRenderer\': {\'items\': [{\'videoRenderer\': {\'videoId\': \'WX7DBPcsiEs\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/WX7DBPcsiEs/hqdefault.jpg?sqp=-oaymwE8CNIBEHZIWvKriqkDLwgBFQAAAAAYASUAAMhCPQCAokN4AfABAfgB_gmAAtAFigIMCAAQARhyIEgoJjAP&rs=AOn4CLBd26rInCsEg0KaN7AYTQJgBEQVNg\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/WX7DBPcsiEs/hqdefault.jpg?sqp=-oaymwE9CPYBEIoBSFryq4qpAy8IARUAAAAAGAElAADIQj0AgKJDeAHwAQH4Af4JgALQBYoCDAgAEAEYciBIKCYwDw==&rs=AOn4CLDrxtskW3Ytu71ZToj8sMHMifKrHA\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/WX7DBPcsiEs/hqdefault.jpg?sqp=-oaymwE9CNACELwBSFryq4qpAy8IARUAAAAAGAElAADIQj0AgKJDeAHwAQH4Af4JgALQBYoCDAgAEAEYciBIKCYwDw==&rs=AOn4CLA4y08IOi1a9exOMXTcHGpg7WWYAA\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315633, \'section3Color\': 15920359, \'primaryTitleColor\': 1643536, \'secondaryTitleColor\': 7691852, \'section4Color\': 15459549}, \'darkColorPalette\': {\'section2Color\': 3350545, \'section3Color\': 2496524, \'primaryTitleColor\': 16773349, \'secondaryTitleColor\': 13415843, \'section4Color\': 1642504}}, \'title\': {\'runs\': [{\'text\': \'VADA PAV AUR CHAI \xc3\xb0\\x9f\\x98\\x8d | CARRYMINATI\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'VADA PAV AUR CHAI \xc3\xb0\\x9f\\x98\\x8d | CARRYMINATI by CarryMinati 33,482,263 views 8 days ago 12 minutes, 17 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Check out the Infinix GT 20 Pro: https://bit.ly/carryGT20\\n\\nRoast Credits:\\nCreated & Written by: CarryMinati\\nEdited by: CarryMinati\\n\\nSketch Credits: \\nConcept & Written By: CarryMinati \\nCreated...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'CarryMinati\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CIACENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@CarryMinati\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCj22tfcQrWG7EMEKS0qLeEg\', \'canonicalBaseUrl\': \'/@CarryMinati\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'8 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'12 minutes, 17 seconds\'}}, \'simpleText\': \'12:17\'}, \'viewCountText\': {\'simpleText\': \'33,482,263 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CIACENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFUyBmctaGlnaFoKRkV0cmVuZGluZ5oBBxDy8AUY5AM=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=WX7DBPcsiEs\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'WX7DBPcsiEs\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr2---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=597ec304f72c884b&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CIACENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'CarryMinati\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CIACENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@CarryMinati\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCj22tfcQrWG7EMEKS0qLeEg\', \'canonicalBaseUrl\': \'/@CarryMinati\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'CarryMinati\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CIACENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@CarryMinati\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCj22tfcQrWG7EMEKS0qLeEg\', \'canonicalBaseUrl\': \'/@CarryMinati\'}}}]}, \'trackingParams\': \'CIACENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFVAy5Cyuc_gsL9Z\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'33 million views\'}}, \'simpleText\': \'33M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CIQCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CIQCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'WX7DBPcsiEs\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CIQCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'WX7DBPcsiEs\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'WX7DBPcsiEs\']}}]}}, \'trackingParams\': \'CIQCEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CIACENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtXWDdEQlBjc2lFcw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CIACENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CIMCEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CIACENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CIACENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/j01juFvKwHnKHdgcklpPKLkfNBuGbGJKLBwXVhbN_5LeCU3S9bTsHBL-MKPRQCjpZpfPJ_dJ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CIACENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@CarryMinati\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCj22tfcQrWG7EMEKS0qLeEg\', \'canonicalBaseUrl\': \'/@CarryMinati\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'12 minutes, 17 seconds\'}}, \'simpleText\': \'12:17\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CIICEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'WX7DBPcsiEs\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CIICEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'WX7DBPcsiEs\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CIICEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CIECEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CIECEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'WX7DBPcsiEs\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CIECEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'WX7DBPcsiEs\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'WX7DBPcsiEs\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CIECEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/j01juFvKwHnKHdgcklpPKLkfNBuGbGJKLBwXVhbN_5LeCU3S9bTsHBL-MKPRQCjpZpfPJ_dJ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CIACENwwGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@CarryMinati\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCj22tfcQrWG7EMEKS0qLeEg\', \'canonicalBaseUrl\': \'/@CarryMinati\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'VlvOgk5BHS4\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/VlvOgk5BHS4/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLDLKZnHlQ2LVt3OzpblRKoeslaFFg\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/VlvOgk5BHS4/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCVpChZeHRXsa1LCppmXs-7CKTJXw\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/VlvOgk5BHS4/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCRBE1dmWRXfAHBF7bTMd4mt56ueg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15857912, \'section3Color\': 15201010, \'primaryTitleColor\': 1055001, \'secondaryTitleColor\': 4549483, \'section4Color\': 14543851}, \'darkColorPalette\': {\'section2Color\': 1451558, \'section3Color\': 989465, \'primaryTitleColor\': 15073279, \'secondaryTitleColor\': 10734796, \'section4Color\': 461836}}, \'title\': {\'runs\': [{\'text\': \'Stree 2 | Official Trailer | Shraddha K | Rajkummar R | Pankaj T | Amar K | 15th Aug 2024\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Stree 2 | Official Trailer | Shraddha K | Rajkummar R | Pankaj T | Amar K | 15th Aug 2024 by JioStudios 27,311,930 views 7 days ago 2 minutes, 54 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': "India\'s most awaited gang is back to fight Chanderi ka naya aatank! \xc3\xb0\\x9f\\x91\xc2\xbb\xc3\xb0\\x9f\xc2\xab\xc2\xa3\\n\\nGet ready for the biggest horror-comedy film of the year. \\n\\n#Stree2 Trailer Out Now. \\n\\nThe legend returns this..."}]}, \'longBylineText\': {\'runs\': [{\'text\': \'JioStudios\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CPsBENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@JioStudios\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCcXQd6kHKm0b41x8zMVMmMg\', \'canonicalBaseUrl\': \'/@JioStudios\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'7 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'2 minutes, 54 seconds\'}}, \'simpleText\': \'2:54\'}, \'viewCountText\': {\'simpleText\': \'27,311,930 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CPsBENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFUyBmctaGlnaFoKRkV0cmVuZGluZ5oBBxDy8AUY5AM=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=VlvOgk5BHS4\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'VlvOgk5BHS4\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr1---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=565bce824e411d2e&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CPsBENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'JioStudios\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CPsBENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@JioStudios\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCcXQd6kHKm0b41x8zMVMmMg\', \'canonicalBaseUrl\': \'/@JioStudios\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'JioStudios\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CPsBENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@JioStudios\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCcXQd6kHKm0b41x8zMVMmMg\', \'canonicalBaseUrl\': \'/@JioStudios\'}}}]}, \'trackingParams\': \'CPsBENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFVArrqE8qTQ861W\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'27 million views\'}}, \'simpleText\': \'27M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CP8BEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CP8BEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'VlvOgk5BHS4\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CP8BEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'VlvOgk5BHS4\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'VlvOgk5BHS4\']}}]}}, \'trackingParams\': \'CP8BEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CPsBENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtWbHZPZ2s1QkhTNA%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CPsBENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CP4BEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CPsBENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CPsBENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/m9WvArAk8ycx159cbze1Y9WV6B_dvEC1PMoxy_fZvdFivJWiB-dcA5u0i7Y2V9x7LAPDGkMn0g=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CPsBENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@JioStudios\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCcXQd6kHKm0b41x8zMVMmMg\', \'canonicalBaseUrl\': \'/@JioStudios\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'2 minutes, 54 seconds\'}}, \'simpleText\': \'2:54\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CP0BEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'VlvOgk5BHS4\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CP0BEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'VlvOgk5BHS4\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CP0BEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CPwBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CPwBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'VlvOgk5BHS4\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CPwBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'VlvOgk5BHS4\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'VlvOgk5BHS4\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CPwBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/m9WvArAk8ycx159cbze1Y9WV6B_dvEC1PMoxy_fZvdFivJWiB-dcA5u0i7Y2V9x7LAPDGkMn0g=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CPsBENwwGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@JioStudios\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCcXQd6kHKm0b41x8zMVMmMg\', \'canonicalBaseUrl\': \'/@JioStudios\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'1En81y5z_J4\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/1En81y5z_J4/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLDYZRX2NpgwSK8DrvFdk8FpUKr8_g\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/1En81y5z_J4/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBb753WQ6-clcglf1NvRn5duqOWUw\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/1En81y5z_J4/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDmiDbRGoldLpgejwENt-dtiOzxSA\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15857911, \'section3Color\': 15201008, \'primaryTitleColor\': 1186072, \'secondaryTitleColor\': 5008229, \'section4Color\': 14543849}, \'darkColorPalette\': {\'section2Color\': 1779236, \'section3Color\': 1186072, \'primaryTitleColor\': 15073274, \'secondaryTitleColor\': 10734789, \'section4Color\': 592908}}, \'title\': {\'runs\': [{\'text\': \'TMC\xc3\xa2\\x80\\x99s Abhishek Banerjee Vs Speaker Om Birla In Lok Sabha | Parliament | Budget\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'TMC\xc3\xa2\\x80\\x99s Abhishek Banerjee Vs Speaker Om Birla In Lok Sabha | Parliament | Budget by Hindustan Times 433,245 views 1 day ago 11 minutes, 13 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': "Trinamool Congress leader and West Bengal Chief Minister Mamata Banerjee\'s nephew Abhishek had heated arguments with Lok Sabha speaker Om Birla on 3 separate occasions during his speech on..."}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Hindustan Times\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CPYBENwwGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@HT-Videos\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCm7lHFkt2yB_WzL67aruVBQ\', \'canonicalBaseUrl\': \'/@HT-Videos\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'1 day ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'11 minutes, 13 seconds\'}}, \'simpleText\': \'11:13\'}, \'viewCountText\': {\'simpleText\': \'433,245 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CPYBENwwGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFUyBmctaGlnaFoKRkV0cmVuZGluZ5oBBxDy8AUY5AM=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=1En81y5z_J4\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'1En81y5z_J4\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr2---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=d449fcd72e73fc9e&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CPYBENwwGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Hindustan Times\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CPYBENwwGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@HT-Videos\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCm7lHFkt2yB_WzL67aruVBQ\', \'canonicalBaseUrl\': \'/@HT-Videos\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Hindustan Times\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CPYBENwwGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@HT-Videos\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCm7lHFkt2yB_WzL67aruVBQ\', \'canonicalBaseUrl\': \'/@HT-Videos\'}}}]}, \'trackingParams\': \'CPYBENwwGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFVAnvnP8_Ka_6TUAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'433K views\'}}, \'simpleText\': \'433K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CPoBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CPoBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'1En81y5z_J4\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CPoBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'1En81y5z_J4\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'1En81y5z_J4\']}}]}}, \'trackingParams\': \'CPoBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CPYBENwwGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgsxRW44MXk1el9KNA%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CPYBENwwGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CPkBEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CPYBENwwGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CPYBENwwGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/rxxycwwjFXuC-eQNBcklj4P-uduSg-aHJJ7w77Ynf_LZV742N5tvTFSnJwRmV5CnNhFNbj7uKdQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CPYBENwwGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@HT-Videos\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCm7lHFkt2yB_WzL67aruVBQ\', \'canonicalBaseUrl\': \'/@HT-Videos\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'11 minutes, 13 seconds\'}}, \'simpleText\': \'11:13\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CPgBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'1En81y5z_J4\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CPgBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'1En81y5z_J4\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CPgBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CPcBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CPcBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'1En81y5z_J4\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CPcBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'1En81y5z_J4\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'1En81y5z_J4\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CPcBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/rxxycwwjFXuC-eQNBcklj4P-uduSg-aHJJ7w77Ynf_LZV742N5tvTFSnJwRmV5CnNhFNbj7uKdQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CPYBENwwGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@HT-Videos\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCm7lHFkt2yB_WzL67aruVBQ\', \'canonicalBaseUrl\': \'/@HT-Videos\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'4SNThp0YiU4\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/4SNThp0YiU4/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLCp4pZ9VjUJeBy2VQxUldmp_zAp-A\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/4SNThp0YiU4/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCPr7gsafuEMRpeul9wWzPtgBfZwQ\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/4SNThp0YiU4/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBd5W1jD90xM8E3Yveb1svzPzNayA\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315121, \'section3Color\': 15919591, \'primaryTitleColor\': 1643281, \'secondaryTitleColor\': 8018769, \'section4Color\': 15458781}, \'darkColorPalette\': {\'section2Color\': 3352098, \'section3Color\': 2497561, \'primaryTitleColor\': 16772069, \'secondaryTitleColor\': 13413795, \'section4Color\': 1643281}}, \'title\': {\'runs\': [{\'text\': \'50 YouTubers Fight For $1,000,000\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'50 YouTubers Fight For $1,000,000 by MrBeast 191,802,353 views 12 days ago 41 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'I can\xc3\xa2\\x80\\x99t believe how intense this video got\\nThe Samsung Galaxy Ring and Z Flip6 blew my mind in this video \xc3\xa2\\x80\\x93 you\xc3\xa2\\x80\\x99ve gotta check them out. Head to Amazon to get yours and also see #GalaxyAI...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'MrBeast\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CPEBENwwGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@MrBeast\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCX6OQ3DkcsbYNE6H8uQQuVA\', \'canonicalBaseUrl\': \'/@MrBeast\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'12 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'41 minutes, 27 seconds\'}}, \'simpleText\': \'41:27\'}, \'viewCountText\': {\'simpleText\': \'191,802,353 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CPEBENwwGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFUyBmctaGlnaFoKRkV0cmVuZGluZ5oBBxDy8AUY5AM=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=4SNThp0YiU4\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'4SNThp0YiU4\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr5---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=e12353869d18894e&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CPEBENwwGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'MrBeast\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CPEBENwwGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@MrBeast\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCX6OQ3DkcsbYNE6H8uQQuVA\', \'canonicalBaseUrl\': \'/@MrBeast\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'MrBeast\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CPEBENwwGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@MrBeast\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCX6OQ3DkcsbYNE6H8uQQuVA\', \'canonicalBaseUrl\': \'/@MrBeast\'}}}]}, \'trackingParams\': \'CPEBENwwGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFVAzpLi6Onw1JHhAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'191 million views\'}}, \'simpleText\': \'191M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CPUBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CPUBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'4SNThp0YiU4\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CPUBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'4SNThp0YiU4\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'4SNThp0YiU4\']}}]}}, \'trackingParams\': \'CPUBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CPEBENwwGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'Cgs0U05UaHAwWWlVNA%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CPEBENwwGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CPQBEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CPEBENwwGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CPEBENwwGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/fxGKYucJAVme-Yz4fsdCroCFCrANWqw0ql4GYuvx8Uq4l_euNJHgE-w9MTkLQA805vWCi-kE0g=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CPEBENwwGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@MrBeast\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCX6OQ3DkcsbYNE6H8uQQuVA\', \'canonicalBaseUrl\': \'/@MrBeast\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'41 minutes, 27 seconds\'}}, \'simpleText\': \'41:27\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CPMBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'4SNThp0YiU4\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CPMBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'4SNThp0YiU4\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CPMBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CPIBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CPIBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'4SNThp0YiU4\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CPIBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'4SNThp0YiU4\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'4SNThp0YiU4\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CPIBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/fxGKYucJAVme-Yz4fsdCroCFCrANWqw0ql4GYuvx8Uq4l_euNJHgE-w9MTkLQA805vWCi-kE0g=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CPEBENwwGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@MrBeast\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCX6OQ3DkcsbYNE6H8uQQuVA\', \'canonicalBaseUrl\': \'/@MrBeast\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'l20auRgzPTw\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/l20auRgzPTw/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLCKg78aeJ-TQqNPbsHjdS56UXCPCw\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/l20auRgzPTw/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDbIh62bTHbzdI5X0A7gKrI25Nw2A\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/l20auRgzPTw/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLB7hbAfuPFJ37X_lJp-lLWltrcdlw\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16314865, \'section3Color\': 15919335, \'primaryTitleColor\': 1642768, \'secondaryTitleColor\': 8345170, \'section4Color\': 15458013}, \'darkColorPalette\': {\'section2Color\': 3347987, \'section3Color\': 2494478, \'primaryTitleColor\': 16771045, \'secondaryTitleColor\': 13412003, \'section4Color\': 1641225}}, \'title\': {\'runs\': [{\'text\': \'Truth of Ambani Wedding - LONGEST Shaadi Ever\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Truth of Ambani Wedding - LONGEST Shaadi Ever by Slayy Point 6,389,880 views 7 days ago 13 minutes, 2 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'The Anant Ambani & Radhika Merchant Wedding that never seems to end. This time Ambanis called international guests including Justin Bieber, Kim Kardashian & John Cena.\\nWishing them a happy...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Slayy Point\', \'navigationEndpoint\': {\'clickTrackingParams\': \'COwBENwwGAQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SlayyPointOfficial\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCtgGOdTlM-NdJ9rPKIYN8UQ\', \'canonicalBaseUrl\': \'/@SlayyPointOfficial\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'7 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'13 minutes, 2 seconds\'}}, \'simpleText\': \'13:02\'}, \'viewCountText\': {\'simpleText\': \'6,389,880 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'COwBENwwGAQiEwiGsb7oo8OHAxWCi9gFHTJaAFUyBmctaGlnaFoKRkV0cmVuZGluZ5oBBxDy8AUY5AM=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=l20auRgzPTw\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'l20auRgzPTw\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr5---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=976d1ab918333d3c&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'COwBENwwGAQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Slayy Point\', \'navigationEndpoint\': {\'clickTrackingParams\': \'COwBENwwGAQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SlayyPointOfficial\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCtgGOdTlM-NdJ9rPKIYN8UQ\', \'canonicalBaseUrl\': \'/@SlayyPointOfficial\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Slayy Point\', \'navigationEndpoint\': {\'clickTrackingParams\': \'COwBENwwGAQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SlayyPointOfficial\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCtgGOdTlM-NdJ9rPKIYN8UQ\', \'canonicalBaseUrl\': \'/@SlayyPointOfficial\'}}}]}, \'trackingParams\': \'COwBENwwGAQiEwiGsb7oo8OHAxWCi9gFHTJaAFVAvPrMwZHXxraXAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'6.3 million views\'}}, \'simpleText\': \'6.3M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CPABEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CPABEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'l20auRgzPTw\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CPABEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'l20auRgzPTw\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'l20auRgzPTw\']}}]}}, \'trackingParams\': \'CPABEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'COwBENwwGAQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtsMjBhdVJnelBUdw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'COwBENwwGAQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CO8BEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'COwBENwwGAQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'COwBENwwGAQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_nZmZJ_Z6tKDsiEXdyqzdYcQWeLPYapMXA7QNsgzGjJ4no=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'COwBENwwGAQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SlayyPointOfficial\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCtgGOdTlM-NdJ9rPKIYN8UQ\', \'canonicalBaseUrl\': \'/@SlayyPointOfficial\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'13 minutes, 2 seconds\'}}, \'simpleText\': \'13:02\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CO4BEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'l20auRgzPTw\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CO4BEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'l20auRgzPTw\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CO4BEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CO0BEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CO0BEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'l20auRgzPTw\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CO0BEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'l20auRgzPTw\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'l20auRgzPTw\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CO0BEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_nZmZJ_Z6tKDsiEXdyqzdYcQWeLPYapMXA7QNsgzGjJ4no=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'COwBENwwGAQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SlayyPointOfficial\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCtgGOdTlM-NdJ9rPKIYN8UQ\', \'canonicalBaseUrl\': \'/@SlayyPointOfficial\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'ly7QhOGGp4g\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/ly7QhOGGp4g/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLAkKGyb52szxz-_LMCN4NphtbCKIw\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/ly7QhOGGp4g/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLAXvslnYZH7_TCbDxp09HL0pWzPnw\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/ly7QhOGGp4g/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBSIAEBDhLp78_HgWbEnbNi_MhLkg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16250871, \'section3Color\': 15724527, \'primaryTitleColor\': 1644825, \'secondaryTitleColor\': 6645093, \'section4Color\': 15263976}, \'darkColorPalette\': {\'section2Color\': 2500134, \'section3Color\': 1644825, \'primaryTitleColor\': 16777215, \'secondaryTitleColor\': 13421772, \'section4Color\': 789516}}, \'title\': {\'runs\': [{\'text\': \'THE END OF MAFIA BOSS | GTA 5 GAMEPLAY #154\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'THE END OF MAFIA BOSS | GTA 5 GAMEPLAY #154 by Techno Gamerz 22,290,470 views 11 days ago 1 hour, 40 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'THE END OF MAFIA BOSS | GTA 5 GAMEPLAY #154\\n#154 #GTA5 #technogamerz \\n\\nSubscribe to our Second YouTube Channel: https://www.youtube.com/c/UjjwalGamer\\n\\n\\nShare, Support, Subscribe!!!\\nSubscribe:...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Techno Gamerz\', \'navigationEndpoint\': {\'clickTrackingParams\': \'COcBENwwGAUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/channel/UCX8pnu3DYUnx8qy8V_c6oHg\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCX8pnu3DYUnx8qy8V_c6oHg\', \'canonicalBaseUrl\': \'/channel/UCX8pnu3DYUnx8qy8V_c6oHg\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'11 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'1 hour, 40 minutes, 49 seconds\'}}, \'simpleText\': \'1:40:49\'}, \'viewCountText\': {\'simpleText\': \'22,290,470 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'COcBENwwGAUiEwiGsb7oo8OHAxWCi9gFHTJaAFUyBmctaGlnaFoKRkV0cmVuZGluZ5oBBxDy8AUY5AM=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=ly7QhOGGp4g\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'ly7QhOGGp4g\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr3---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=972ed084e186a788&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'OFFICIAL_ARTIST_BADGE\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED_ARTIST\', \'tooltip\': \'Official Artist Channel\', \'trackingParams\': \'COcBENwwGAUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Official Artist Channel\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Techno Gamerz\', \'navigationEndpoint\': {\'clickTrackingParams\': \'COcBENwwGAUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/channel/UCX8pnu3DYUnx8qy8V_c6oHg\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCX8pnu3DYUnx8qy8V_c6oHg\', \'canonicalBaseUrl\': \'/channel/UCX8pnu3DYUnx8qy8V_c6oHg\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Techno Gamerz\', \'navigationEndpoint\': {\'clickTrackingParams\': \'COcBENwwGAUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/channel/UCX8pnu3DYUnx8qy8V_c6oHg\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCX8pnu3DYUnx8qy8V_c6oHg\', \'canonicalBaseUrl\': \'/channel/UCX8pnu3DYUnx8qy8V_c6oHg\'}}}]}, \'trackingParams\': \'COcBENwwGAUiEwiGsb7oo8OHAxWCi9gFHTJaAFVAiM-ajM6QtJeXAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'22 million views\'}}, \'simpleText\': \'22M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'COsBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'COsBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'ly7QhOGGp4g\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'COsBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'ly7QhOGGp4g\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'ly7QhOGGp4g\']}}]}}, \'trackingParams\': \'COsBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'COcBENwwGAUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtseTdRaE9HR3A0Zw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'COcBENwwGAUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'COoBEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'COcBENwwGAUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'COcBENwwGAUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_moocNXstALFiII02ett7RzPa_9lSiAAm9bXNc3zoAdGkk=s88-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'COcBENwwGAUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/channel/UCX8pnu3DYUnx8qy8V_c6oHg\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCX8pnu3DYUnx8qy8V_c6oHg\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'1 hour, 40 minutes, 49 seconds\'}}, \'simpleText\': \'1:40:49\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'COkBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'ly7QhOGGp4g\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'COkBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'ly7QhOGGp4g\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'COkBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'COgBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'COgBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'ly7QhOGGp4g\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'COgBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'ly7QhOGGp4g\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'ly7QhOGGp4g\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'COgBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_moocNXstALFiII02ett7RzPa_9lSiAAm9bXNc3zoAdGkk=s88-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'COcBENwwGAUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/channel/UCX8pnu3DYUnx8qy8V_c6oHg\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCX8pnu3DYUnx8qy8V_c6oHg\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'5mr7AdmjSdc\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/5mr7AdmjSdc/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLA6lS9x__y0w2YJhwIqYGfZe3II-Q\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/5mr7AdmjSdc/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLAG6SBL1E0M-oJnTy0LRELNppMTmA\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/5mr7AdmjSdc/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLD8EQDvOwTqpfHqFYdZgAot1AD_Wg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15857144, \'section3Color\': 15199730, \'primaryTitleColor\': 1053977, \'secondaryTitleColor\': 5006453, \'section4Color\': 14542315}, \'darkColorPalette\': {\'section2Color\': 1780019, \'section3Color\': 1318438, \'primaryTitleColor\': 15070463, \'secondaryTitleColor\': 10730188, \'section4Color\': 857113}}, \'title\': {\'runs\': [{\'text\': \'EPL Season 3 | Round2Hell | R2H\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'EPL Season 3 | Round2Hell | R2H by Round2hell 37,942,581 views 2 weeks ago 52 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'\xc3\xb0\\x9f\\x9a\\x80Experience the joy of trading on Binomo and earn up to 5000 INR per day - http://www.binomoindia.in/round2hell_yt\\n\\n\\n\xc3\xb0\\x9f\\x91\\x89Transparent trading, fast deposits and withdrawals, unlimited demo...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Round2hell\', \'navigationEndpoint\': {\'clickTrackingParams\': \'COIBENwwGAYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@Round2hell\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCt4atlExw8aj3Bm79nv1fig\', \'canonicalBaseUrl\': \'/@Round2hell\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 weeks ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'52 minutes, 58 seconds\'}}, \'simpleText\': \'52:58\'}, \'viewCountText\': {\'simpleText\': \'37,942,581 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'COIBENwwGAYiEwiGsb7oo8OHAxWCi9gFHTJaAFUyBmctaGlnaFoKRkV0cmVuZGluZ5oBBxDy8AUY5AM=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=5mr7AdmjSdc\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'5mr7AdmjSdc\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr1---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=e66afb01d9a349d7&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'COIBENwwGAYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Round2hell\', \'navigationEndpoint\': {\'clickTrackingParams\': \'COIBENwwGAYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@Round2hell\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCt4atlExw8aj3Bm79nv1fig\', \'canonicalBaseUrl\': \'/@Round2hell\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Round2hell\', \'navigationEndpoint\': {\'clickTrackingParams\': \'COIBENwwGAYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@Round2hell\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCt4atlExw8aj3Bm79nv1fig\', \'canonicalBaseUrl\': \'/@Round2hell\'}}}]}, \'trackingParams\': \'COIBENwwGAYiEwiGsb7oo8OHAxWCi9gFHTJaAFVA15ONzZ3gvrXmAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'37 million views\'}}, \'simpleText\': \'37M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'COYBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'COYBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'5mr7AdmjSdc\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'COYBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'5mr7AdmjSdc\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'5mr7AdmjSdc\']}}]}}, \'trackingParams\': \'COYBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'COIBENwwGAYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'Cgs1bXI3QWRtalNkYw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'COIBENwwGAYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'COUBEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'COIBENwwGAYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'COIBENwwGAYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_kiR_xWlg7vo5dKLMFOxCgoYvV5xizv6zYbSrfrhiRbX2Q=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'COIBENwwGAYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@Round2hell\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCt4atlExw8aj3Bm79nv1fig\', \'canonicalBaseUrl\': \'/@Round2hell\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'52 minutes, 58 seconds\'}}, \'simpleText\': \'52:58\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'COQBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'5mr7AdmjSdc\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'COQBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'5mr7AdmjSdc\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'COQBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'COMBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'COMBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'5mr7AdmjSdc\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'COMBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'5mr7AdmjSdc\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'5mr7AdmjSdc\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'COMBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_kiR_xWlg7vo5dKLMFOxCgoYvV5xizv6zYbSrfrhiRbX2Q=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'COIBENwwGAYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@Round2hell\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCt4atlExw8aj3Bm79nv1fig\', \'canonicalBaseUrl\': \'/@Round2hell\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'nyUffTW9jj8\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/nyUffTW9jj8/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLCg3_ieCmspSJo6gd4b-7HACMgSiw\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/nyUffTW9jj8/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCnQalM7EeQUxmdzH0eYhTRwnbBbg\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/nyUffTW9jj8/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLA58ADEt7Z6e9hbcYOOefGep6_kPg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315121, \'section3Color\': 15919591, \'primaryTitleColor\': 1643024, \'secondaryTitleColor\': 8017487, \'section4Color\': 15458525}, \'darkColorPalette\': {\'section2Color\': 3351070, \'section3Color\': 2496790, \'primaryTitleColor\': 16771557, \'secondaryTitleColor\': 13413027, \'section4Color\': 1642511}}, \'title\': {\'runs\': [{\'text\': \'Sharma ji ki Shadi || Ep1\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Sharma ji ki Shadi || Ep1 by Swagger Sharma 3,979,364 views 6 days ago 52 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Experience the joy of trading on Binomo and earn up to 5000 INR per day: http://binomoindia.in/sharma_yt \\n \\n\xc3\xb0\\x9f\\x91\\x89Transparent trading, fast deposits and withdrawals, unlimited demo account and...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Swagger Sharma\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CN0BENwwGAciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SwaggerSharma\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCGu3oftYZmB-DKGlbR8Yrpw\', \'canonicalBaseUrl\': \'/@SwaggerSharma\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'6 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'52 minutes, 6 seconds\'}}, \'simpleText\': \'52:06\'}, \'viewCountText\': {\'simpleText\': \'3,979,364 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CN0BENwwGAciEwiGsb7oo8OHAxWCi9gFHTJaAFUyBmctaGlnaFoKRkV0cmVuZGluZ5oBBxDy8AUY5AM=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=nyUffTW9jj8\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'nyUffTW9jj8\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr4---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=9f251f7d35bd8e3f&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CN0BENwwGAciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Swagger Sharma\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CN0BENwwGAciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SwaggerSharma\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCGu3oftYZmB-DKGlbR8Yrpw\', \'canonicalBaseUrl\': \'/@SwaggerSharma\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Swagger Sharma\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CN0BENwwGAciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SwaggerSharma\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCGu3oftYZmB-DKGlbR8Yrpw\', \'canonicalBaseUrl\': \'/@SwaggerSharma\'}}}]}, \'trackingParams\': \'CN0BENwwGAciEwiGsb7oo8OHAxWCi9gFHTJaAFVAv5z2rdPvx5KfAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3.9 million views\'}}, \'simpleText\': \'3.9M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'COEBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'COEBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'nyUffTW9jj8\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'COEBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'nyUffTW9jj8\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'nyUffTW9jj8\']}}]}}, \'trackingParams\': \'COEBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CN0BENwwGAciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtueVVmZlRXOWpqOA%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CN0BENwwGAciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'COABEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CN0BENwwGAciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CN0BENwwGAciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_lHU8AgFmP3-8Mh-Q_b5tUQJNQ2yPdcAMYSyoOYZkQVR_A=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CN0BENwwGAciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SwaggerSharma\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCGu3oftYZmB-DKGlbR8Yrpw\', \'canonicalBaseUrl\': \'/@SwaggerSharma\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'52 minutes, 6 seconds\'}}, \'simpleText\': \'52:06\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CN8BEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'nyUffTW9jj8\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CN8BEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'nyUffTW9jj8\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CN8BEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CN4BEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CN4BEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'nyUffTW9jj8\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CN4BEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'nyUffTW9jj8\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'nyUffTW9jj8\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CN4BEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_lHU8AgFmP3-8Mh-Q_b5tUQJNQ2yPdcAMYSyoOYZkQVR_A=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CN0BENwwGAciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SwaggerSharma\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCGu3oftYZmB-DKGlbR8Yrpw\', \'canonicalBaseUrl\': \'/@SwaggerSharma\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'ATGQdcN4UBs\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/ATGQdcN4UBs/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLAe13fPVVPIycCwKdTdkP3lx8nnbA\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/ATGQdcN4UBs/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBhiomrNQXRFyDIFSZYtkaNVzlTdg\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/ATGQdcN4UBs/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCyfHAtPB3JA7SqnK2RXD9CNq00lQ\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315377, \'section3Color\': 15919847, \'primaryTitleColor\': 1643280, \'secondaryTitleColor\': 8019280, \'section4Color\': 15459037}, \'darkColorPalette\': {\'section2Color\': 3352097, \'section3Color\': 2497817, \'primaryTitleColor\': 16772581, \'secondaryTitleColor\': 13414307, \'section4Color\': 1643280}}, \'title\': {\'runs\': [{\'text\': \'Phir Aayi Hasseen Dillruba | Official Trailer | Taapsee P, Vikrant M, Sunny K, Jimmy S\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Phir Aayi Hasseen Dillruba | Official Trailer | Taapsee P, Vikrant M, Sunny K, Jimmy S by Netflix India 9,701,830 views 17 hours ago 2 minutes, 42 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Dil ke haal se kya pata, kaun bhala, aur kaun bawla? \xc3\xb0\\x9f\\x91\\x80 \xc3\xb0\\x9f\xc2\xa5\\x80\\r\\nPhir Aayi Hasseen Dillruba iss rahasya ko mitane, on 9 August, only on Netflix \xc3\xa2\\x9d\xc2\xa4\xc3\xaf\xc2\xb8\\x8f\\u200d\xc3\xb0\\x9f\\x94\xc2\xa5\\r\\n\\r\\nWatch on Netflix: https://www.netflix...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Netflix India\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CNgBENwwGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@NetflixIndiaOfficial\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCZSNzBgFub_WWil6TOTYwAg\', \'canonicalBaseUrl\': \'/@NetflixIndiaOfficial\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'17 hours ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'2 minutes, 42 seconds\'}}, \'simpleText\': \'2:42\'}, \'viewCountText\': {\'simpleText\': \'9,701,830 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CNgBENwwGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFUyBmctaGlnaFoKRkV0cmVuZGluZ5oBBxDy8AUY5AM=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=ATGQdcN4UBs\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'ATGQdcN4UBs\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr5---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=01319075c378501b&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CNgBENwwGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Netflix India\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CNgBENwwGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@NetflixIndiaOfficial\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCZSNzBgFub_WWil6TOTYwAg\', \'canonicalBaseUrl\': \'/@NetflixIndiaOfficial\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Netflix India\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CNgBENwwGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@NetflixIndiaOfficial\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCZSNzBgFub_WWil6TOTYwAg\', \'canonicalBaseUrl\': \'/@NetflixIndiaOfficial\'}}}]}, \'trackingParams\': \'CNgBENwwGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFVAm6Dhm9yO5JgB\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'9.7 million views\'}}, \'simpleText\': \'9.7M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CNwBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CNwBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'ATGQdcN4UBs\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CNwBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'ATGQdcN4UBs\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'ATGQdcN4UBs\']}}]}}, \'trackingParams\': \'CNwBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CNgBENwwGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtBVEdRZGNONFVCcw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CNgBENwwGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CNsBEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CNgBENwwGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CNgBENwwGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/zgMN9BuSQByG1SrpmLwcNB3MQhjDhS_pl9H1h7TaRievMfS4UpU7Z36j77z5_hnIW4N8uFX3NA=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CNgBENwwGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@NetflixIndiaOfficial\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCZSNzBgFub_WWil6TOTYwAg\', \'canonicalBaseUrl\': \'/@NetflixIndiaOfficial\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'2 minutes, 42 seconds\'}}, \'simpleText\': \'2:42\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CNoBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'ATGQdcN4UBs\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CNoBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'ATGQdcN4UBs\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CNoBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CNkBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CNkBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'ATGQdcN4UBs\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CNkBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'ATGQdcN4UBs\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'ATGQdcN4UBs\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CNkBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/zgMN9BuSQByG1SrpmLwcNB3MQhjDhS_pl9H1h7TaRievMfS4UpU7Z36j77z5_hnIW4N8uFX3NA=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CNgBENwwGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@NetflixIndiaOfficial\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCZSNzBgFub_WWil6TOTYwAg\', \'canonicalBaseUrl\': \'/@NetflixIndiaOfficial\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'hqJ9Q2iPdF4\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/hqJ9Q2iPdF4/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLCB3kMqFi8Udr7DUYnMEAbavsZ0aw\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/hqJ9Q2iPdF4/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCeNnxSbYm0GT4o5AutXM6jFJ0vEg\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/hqJ9Q2iPdF4/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCFueO_ApF2mz-OnFlcTvOmuvWQ8g\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15857905, \'section3Color\': 15266535, \'primaryTitleColor\': 1251602, \'secondaryTitleColor\': 5401423, \'section4Color\': 14674909}, \'darkColorPalette\': {\'section2Color\': 1910300, \'section3Color\': 1251602, \'primaryTitleColor\': 15269861, \'secondaryTitleColor\': 10996899, \'section4Color\': 592905}}, \'title\': {\'runs\': [{\'text\': \'\xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa6\xc2\xab\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\\x89 \xc3\xa0\xc2\xa6\\x9c\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\xc2\xaa\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa7\\x87 \xc3\xa0\xc2\xa6\xc2\xb6\xc3\xa0\xc2\xa6\xc2\xa8\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\xc2\xa6\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\xc2\xa8\xc3\xa0\xc2\xa7\\x87 \xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa7\\x80 \xc3\xa0\xc2\xa6\\x85\xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xb8\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xa5\xc3\xa0\xc2\xa6\xc2\xbe \xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\\x82\xc3\xa0\xc2\xa6\xc2\xb2\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xa6\xc3\xa0\xc2\xa7\\x87\xc3\xa0\xc2\xa6\xc2\xb6\xc3\xa0\xc2\xa7\\x87?\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'\xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa6\xc2\xab\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\\x89 \xc3\xa0\xc2\xa6\\x9c\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\xc2\xaa\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa7\\x87 \xc3\xa0\xc2\xa6\xc2\xb6\xc3\xa0\xc2\xa6\xc2\xa8\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\xc2\xa6\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\xc2\xa8\xc3\xa0\xc2\xa7\\x87 \xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa7\\x80 \xc3\xa0\xc2\xa6\\x85\xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xb8\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xa5\xc3\xa0\xc2\xa6\xc2\xbe \xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\\x82\xc3\xa0\xc2\xa6\xc2\xb2\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xa6\xc3\xa0\xc2\xa7\\x87\xc3\xa0\xc2\xa6\xc2\xb6\xc3\xa0\xc2\xa7\\x87? by BBC News \xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\\x82\xc3\xa0\xc2\xa6\xc2\xb2\xc3\xa0\xc2\xa6\xc2\xbe 1,924,479 views 5 days ago 3 minutes, 54 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'\xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\\x82\xc3\xa0\xc2\xa6\xc2\xb2\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xa6\xc3\xa0\xc2\xa7\\x87\xc3\xa0\xc2\xa6\xc2\xb6\xc3\xa0\xc2\xa7\\x87 \xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa6\xc2\xab\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\\x89 \xc3\xa0\xc2\xa6\\x9c\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa6\xc2\xbf \xc3\xa0\xc2\xa6\xc2\xb9\xc3\xa0\xc2\xa6\\x93\xc3\xa0\xc2\xa6\xc2\xaf\xc3\xa0\xc2\xa6\xc2\xbc\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\xc2\xaa\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\xc2\xb8\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa6\xc2\xbe \xc3\xa0\xc2\xa6\xc2\xa6\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\xc2\xa8\xc3\xa0\xc2\xa7\\x87\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\\x97\xc3\xa0\xc2\xa7\\x81\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa7\\x81\xc3\xa0\xc2\xa6\xc2\xa4\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xaa\xc3\xa0\xc2\xa7\\x82\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xa3 \xc3\xa0\xc2\xa6\xc2\xb8\xc3\xa0\xc2\xa6\xc2\xac \xc3\xa0\xc2\xa6\\x96\xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\xc2\xa2\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa6\xc2\xbe \xc3\xa0\xc2\xa6\xc2\xa5\xc3\xa0\xc2\xa7\\x87\xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa7\\x87...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'BBC News \xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\\x82\xc3\xa0\xc2\xa6\xc2\xb2\xc3\xa0\xc2\xa6\xc2\xbe\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CNMBENwwGAkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@BBCBangla\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UChPD2BQ2dJ-w00klQQkc-Qg\', \'canonicalBaseUrl\': \'/@BBCBangla\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'5 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3 minutes, 54 seconds\'}}, \'simpleText\': \'3:54\'}, \'viewCountText\': {\'simpleText\': \'1,924,479 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CNMBENwwGAkiEwiGsb7oo8OHAxWCi9gFHTJaAFUyBmctaGlnaFoKRkV0cmVuZGluZ5oBBxDy8AUY5AM=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=hqJ9Q2iPdF4\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'hqJ9Q2iPdF4\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr4---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=86a27d43688f745e&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CNMBENwwGAkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'BBC News \xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\\x82\xc3\xa0\xc2\xa6\xc2\xb2\xc3\xa0\xc2\xa6\xc2\xbe\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CNMBENwwGAkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@BBCBangla\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UChPD2BQ2dJ-w00klQQkc-Qg\', \'canonicalBaseUrl\': \'/@BBCBangla\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'BBC News \xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\\x82\xc3\xa0\xc2\xa6\xc2\xb2\xc3\xa0\xc2\xa6\xc2\xbe\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CNMBENwwGAkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@BBCBangla\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UChPD2BQ2dJ-w00klQQkc-Qg\', \'canonicalBaseUrl\': \'/@BBCBangla\'}}}]}, \'trackingParams\': \'CNMBENwwGAkiEwiGsb7oo8OHAxWCi9gFHTJaAFVA3ui9xLaon9GGAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'1.9 million views\'}}, \'simpleText\': \'1.9M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CNcBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CNcBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'hqJ9Q2iPdF4\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CNcBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'hqJ9Q2iPdF4\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'hqJ9Q2iPdF4\']}}]}}, \'trackingParams\': \'CNcBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CNMBENwwGAkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtocUo5UTJpUGRGNA%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CNMBENwwGAkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CNYBEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CNMBENwwGAkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CNMBENwwGAkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_nYQasPURYl1CI-tDg2qISGhHNYghNO0nZMe7GC-DsvUyc=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CNMBENwwGAkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@BBCBangla\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UChPD2BQ2dJ-w00klQQkc-Qg\', \'canonicalBaseUrl\': \'/@BBCBangla\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3 minutes, 54 seconds\'}}, \'simpleText\': \'3:54\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CNUBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'hqJ9Q2iPdF4\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CNUBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'hqJ9Q2iPdF4\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CNUBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CNQBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CNQBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'hqJ9Q2iPdF4\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CNQBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'hqJ9Q2iPdF4\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'hqJ9Q2iPdF4\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CNQBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_nYQasPURYl1CI-tDg2qISGhHNYghNO0nZMe7GC-DsvUyc=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CNMBENwwGAkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@BBCBangla\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UChPD2BQ2dJ-w00klQQkc-Qg\', \'canonicalBaseUrl\': \'/@BBCBangla\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'qWN0KInYZMs\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/qWN0KInYZMs/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLADGRy-22TAnPxgoom3mafjd1mXWg\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/qWN0KInYZMs/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLAV5zlA9o92JiuoaoSNiddo6Qj1Fg\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/qWN0KInYZMs/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBO2fDBPhx5Q_BHMhFq6fA-wqfkYw\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315633, \'section3Color\': 15920359, \'primaryTitleColor\': 1643536, \'secondaryTitleColor\': 7691852, \'section4Color\': 15459549}, \'darkColorPalette\': {\'section2Color\': 3351575, \'section3Color\': 2497297, \'primaryTitleColor\': 16773605, \'secondaryTitleColor\': 13415843, \'section4Color\': 1643019}}, \'title\': {\'runs\': [{\'text\': "India (W) vs Pakistan (W) | ACC Women\'s Asia Cup | Match 2 | Highlights"}], \'accessibility\': {\'accessibilityData\': {\'label\': "India (W) vs Pakistan (W) | ACC Women\'s Asia Cup | Match 2 | Highlights by Asian Cricket Council 4,263,353 views 6 days ago 12 minutes, 10 seconds"}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': "Match 2 of ACC Women\'s Asia Cup 2024, India (W) vs Pakistan (W)"}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Asian Cricket Council\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CM4BENwwGAoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AsianCricketCouncilTV\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC7ITT3ooYWDYY_ehIUbt6eg\', \'canonicalBaseUrl\': \'/@AsianCricketCouncilTV\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'6 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'12 minutes, 10 seconds\'}}, \'simpleText\': \'12:10\'}, \'viewCountText\': {\'simpleText\': \'4,263,353 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CM4BENwwGAoiEwiGsb7oo8OHAxWCi9gFHTJaAFUyBmctaGlnaFoKRkV0cmVuZGluZ5oBBxDy8AUY5AM=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=qWN0KInYZMs\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'qWN0KInYZMs\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr1---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=a963742889d864cb&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CM4BENwwGAoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Asian Cricket Council\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CM4BENwwGAoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AsianCricketCouncilTV\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC7ITT3ooYWDYY_ehIUbt6eg\', \'canonicalBaseUrl\': \'/@AsianCricketCouncilTV\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Asian Cricket Council\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CM4BENwwGAoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AsianCricketCouncilTV\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC7ITT3ooYWDYY_ehIUbt6eg\', \'canonicalBaseUrl\': \'/@AsianCricketCouncilTV\'}}}]}, \'trackingParams\': \'CM4BENwwGAoiEwiGsb7oo8OHAxWCi9gFHTJaAFVAy8nhzoiF3bGpAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'4.2 million views\'}}, \'simpleText\': \'4.2M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CNIBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CNIBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'qWN0KInYZMs\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CNIBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'qWN0KInYZMs\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'qWN0KInYZMs\']}}]}}, \'trackingParams\': \'CNIBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CM4BENwwGAoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtxV04wS0luWVpNcw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CM4BENwwGAoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CNEBEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CM4BENwwGAoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CM4BENwwGAoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/6aLGUKNgK97FyqShBOoJwUd1kUtIJfDbx8Pvt31ceLmboNWMADnDSX7KsDxWrGWkLuPUO5vYpA=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CM4BENwwGAoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AsianCricketCouncilTV\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC7ITT3ooYWDYY_ehIUbt6eg\', \'canonicalBaseUrl\': \'/@AsianCricketCouncilTV\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'12 minutes, 10 seconds\'}}, \'simpleText\': \'12:10\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CNABEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'qWN0KInYZMs\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CNABEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'qWN0KInYZMs\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CNABEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CM8BEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CM8BEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'qWN0KInYZMs\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CM8BEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'qWN0KInYZMs\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'qWN0KInYZMs\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CM8BEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/6aLGUKNgK97FyqShBOoJwUd1kUtIJfDbx8Pvt31ceLmboNWMADnDSX7KsDxWrGWkLuPUO5vYpA=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CM4BENwwGAoiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AsianCricketCouncilTV\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC7ITT3ooYWDYY_ehIUbt6eg\', \'canonicalBaseUrl\': \'/@AsianCricketCouncilTV\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'Ujb2c508yw0\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/Ujb2c508yw0/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLBvqnG7EsBgFIp89TOZYTzkV13ywA\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/Ujb2c508yw0/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBgdIKWVJ__pk6xJjh86_432AP5uQ\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/Ujb2c508yw0/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLAH8bmOx8cGbihzmlbDqT2jUBkP_A\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315633, \'section3Color\': 15920103, \'primaryTitleColor\': 1643536, \'secondaryTitleColor\': 7691340, \'section4Color\': 15459293}, \'darkColorPalette\': {\'section2Color\': 3348487, \'section3Color\': 2494981, \'primaryTitleColor\': 16773093, \'secondaryTitleColor\': 13415075, \'section4Color\': 1641475}}, \'title\': {\'runs\': [{\'text\': \'Jaanam | Bad Newz | Vicky Kaushal | Triptii Dimri | Vishal Mishra | In cinemas 19th July\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Jaanam | Bad Newz | Vicky Kaushal | Triptii Dimri | Vishal Mishra | In cinemas 19th July by Saregama Music 27,526,312 views 2 weeks ago 3 minutes, 17 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'After the first song \\\'Tauba Tauba\\\' from the film Bad Newz now experience the magic of love with "Jaanam," where the charismatic Vicky Kaushal and Triptii Dimri set the screen on fire with their...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Saregama Music\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CMkBENwwGAsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SaregamaMusic\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC_A7K2dXFsTMAciGmnNxy-Q\', \'canonicalBaseUrl\': \'/@SaregamaMusic\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 weeks ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3 minutes, 17 seconds\'}}, \'simpleText\': \'3:17\'}, \'viewCountText\': {\'simpleText\': \'27,526,312 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CMkBENwwGAsiEwiGsb7oo8OHAxWCi9gFHTJaAFUyBmctaGlnaFoKRkV0cmVuZGluZ5oBBxDy8AUY5AM=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=Ujb2c508yw0\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'Ujb2c508yw0\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr2---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=5236f6739d3ccb0d&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CMkBENwwGAsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Saregama Music\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CMkBENwwGAsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SaregamaMusic\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC_A7K2dXFsTMAciGmnNxy-Q\', \'canonicalBaseUrl\': \'/@SaregamaMusic\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Saregama Music\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CMkBENwwGAsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SaregamaMusic\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC_A7K2dXFsTMAciGmnNxy-Q\', \'canonicalBaseUrl\': \'/@SaregamaMusic\'}}}]}, \'trackingParams\': \'CMkBENwwGAsiEwiGsb7oo8OHAxWCi9gFHTJaAFVAjZbz6bnOvZtS\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'27 million views\'}}, \'simpleText\': \'27M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CM0BEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CM0BEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'Ujb2c508yw0\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CM0BEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'Ujb2c508yw0\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'Ujb2c508yw0\']}}]}}, \'trackingParams\': \'CM0BEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CMkBENwwGAsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtVamIyYzUwOHl3MA%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CMkBENwwGAsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CMwBEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CMkBENwwGAsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CMkBENwwGAsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/dxED1O-r5cRS73JBlUk4VS3pZHDfiHcuRjRbFMcf6KgYhxP4NUlD7x0h4TR1XTXkl-JGjTPTYQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CMkBENwwGAsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SaregamaMusic\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC_A7K2dXFsTMAciGmnNxy-Q\', \'canonicalBaseUrl\': \'/@SaregamaMusic\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3 minutes, 17 seconds\'}}, \'simpleText\': \'3:17\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CMsBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'Ujb2c508yw0\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CMsBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'Ujb2c508yw0\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CMsBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CMoBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CMoBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'Ujb2c508yw0\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CMoBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'Ujb2c508yw0\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'Ujb2c508yw0\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CMoBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/dxED1O-r5cRS73JBlUk4VS3pZHDfiHcuRjRbFMcf6KgYhxP4NUlD7x0h4TR1XTXkl-JGjTPTYQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CMkBENwwGAsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SaregamaMusic\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC_A7K2dXFsTMAciGmnNxy-Q\', \'canonicalBaseUrl\': \'/@SaregamaMusic\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'8E9XRKrKY9E\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/8E9XRKrKY9E/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLCZ0n8hEIxWHl89HfXcuUVw104hcA\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/8E9XRKrKY9E/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLAZ2n7Ctdv_EagviHabEGFayE78oQ\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/8E9XRKrKY9E/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBHxLBokbRyJg9KvsbPf2uAJ9ynaw\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315377, \'section3Color\': 15919847, \'primaryTitleColor\': 1643280, \'secondaryTitleColor\': 8019023, \'section4Color\': 15459037}, \'darkColorPalette\': {\'section2Color\': 3351067, \'section3Color\': 2497044, \'primaryTitleColor\': 16772581, \'secondaryTitleColor\': 13414307, \'section4Color\': 1642765}}, \'title\': {\'runs\': [{\'text\': \'VICKY KAUSHAL REACTS TO VICKY\\xa0KAUSHAL MEMES ft. VICKY KAUSHAL\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'VICKY KAUSHAL REACTS TO VICKY\\xa0KAUSHAL MEMES ft. VICKY KAUSHAL by Tanmay Bhat 5,903,915 views 7 days ago 26 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'FOLLOW:\\n\xc3\xa2\\x80\xc2\xa2 Vicky Kaushal - https://www.instagram.com/vickykaushal09\\n\xc3\xa2\\x80\xc2\xa2 Zakir Khan - https://www.instagram.com/zakirkhan_208/\\n\xc3\xa2\\x80\xc2\xa2 Rohan Joshi - https://www.instagram.com/mojorojo/\\n\xc3\xa2\\x80\xc2\xa2 Aaditya...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Tanmay Bhat\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CMQBENwwGAwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@tanmaybhat\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC0rE2qq81of4fojo-KhO5rg\', \'canonicalBaseUrl\': \'/@tanmaybhat\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'7 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'26 minutes, 42 seconds\'}}, \'simpleText\': \'26:42\'}, \'viewCountText\': {\'simpleText\': \'5,903,915 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CMQBENwwGAwiEwiGsb7oo8OHAxWCi9gFHTJaAFUyBmctaGlnaFoKRkV0cmVuZGluZ5oBBxDy8AUY5AM=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=8E9XRKrKY9E\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'8E9XRKrKY9E\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr1---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=f04f5744aaca63d1&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CMQBENwwGAwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Tanmay Bhat\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CMQBENwwGAwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@tanmaybhat\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC0rE2qq81of4fojo-KhO5rg\', \'canonicalBaseUrl\': \'/@tanmaybhat\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Tanmay Bhat\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CMQBENwwGAwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@tanmaybhat\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC0rE2qq81of4fojo-KhO5rg\', \'canonicalBaseUrl\': \'/@tanmaybhat\'}}}]}, \'trackingParams\': \'CMQBENwwGAwiEwiGsb7oo8OHAxWCi9gFHTJaAFVA0cep1sro1afwAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'5.9 million views\'}}, \'simpleText\': \'5.9M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CMgBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CMgBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'8E9XRKrKY9E\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CMgBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'8E9XRKrKY9E\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'8E9XRKrKY9E\']}}]}}, \'trackingParams\': \'CMgBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CMQBENwwGAwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'Cgs4RTlYUktyS1k5RQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CMQBENwwGAwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CMcBEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CMQBENwwGAwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CMQBENwwGAwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/UnHiAzDe4BrX1crihFtyFV2IM2a12i0sj41153RUIoCkazMbVX4otYdmFAKmaxO4psixK9Sriw=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CMQBENwwGAwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@tanmaybhat\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC0rE2qq81of4fojo-KhO5rg\', \'canonicalBaseUrl\': \'/@tanmaybhat\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'26 minutes, 42 seconds\'}}, \'simpleText\': \'26:42\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CMYBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'8E9XRKrKY9E\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CMYBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'8E9XRKrKY9E\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CMYBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CMUBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CMUBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'8E9XRKrKY9E\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CMUBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'8E9XRKrKY9E\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'8E9XRKrKY9E\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CMUBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/UnHiAzDe4BrX1crihFtyFV2IM2a12i0sj41153RUIoCkazMbVX4otYdmFAKmaxO4psixK9Sriw=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CMQBENwwGAwiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@tanmaybhat\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC0rE2qq81of4fojo-KhO5rg\', \'canonicalBaseUrl\': \'/@tanmaybhat\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'SFuNit9HO8g\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/SFuNit9HO8g/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLDHQWmxNWU8UdIg_1X_zx56FoIqiQ\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/SFuNit9HO8g/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLD6RUXnMMSJju6Db1rYkcOJ2Xn9UA\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/SFuNit9HO8g/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCAWUFsQt7heFrHqa89n9U5YA_4kg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15856376, \'section3Color\': 15198450, \'primaryTitleColor\': 1052953, \'secondaryTitleColor\': 5659780, \'section4Color\': 14540779}, \'darkColorPalette\': {\'section2Color\': 1579827, \'section3Color\': 1184806, \'primaryTitleColor\': 15067391, \'secondaryTitleColor\': 10725580, \'section4Color\': 789785}}, \'title\': {\'runs\': [{\'text\': "Testing Virat Kohli\'s Favourite Restaurants | SlayyPop"}], \'accessibility\': {\'accessibilityData\': {\'label\': "Testing Virat Kohli\'s Favourite Restaurants | SlayyPop by SlayyPop 1,823,686 views 2 days ago 12 minutes, 42 seconds"}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': "This herbal hair oil is amazing for getting that healthy, shiny hair we all love. If you also want to get the original Neelambari Hair Oil, check out the link below! Don\'t wait, get yours now!..."}]}, \'longBylineText\': {\'runs\': [{\'text\': \'SlayyPop\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CL8BENwwGA0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SlayyPop\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCSfxFZFzcpYMbOB3A1rWHAg\', \'canonicalBaseUrl\': \'/@SlayyPop\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'12 minutes, 42 seconds\'}}, \'simpleText\': \'12:42\'}, \'viewCountText\': {\'simpleText\': \'1,823,686 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CL8BENwwGA0iEwiGsb7oo8OHAxWCi9gFHTJaAFUyBmctaGlnaFoKRkV0cmVuZGluZ5oBBxDy8AUY5AM=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=SFuNit9HO8g\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'SFuNit9HO8g\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr1---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=485b8d8adf473bc8&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CL8BENwwGA0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'SlayyPop\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CL8BENwwGA0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SlayyPop\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCSfxFZFzcpYMbOB3A1rWHAg\', \'canonicalBaseUrl\': \'/@SlayyPop\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'SlayyPop\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CL8BENwwGA0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SlayyPop\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCSfxFZFzcpYMbOB3A1rWHAg\', \'canonicalBaseUrl\': \'/@SlayyPop\'}}}]}, \'trackingParams\': \'CL8BENwwGA0iEwiGsb7oo8OHAxWCi9gFHTJaAFVAyPec-q2x461I\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'1.8 million views\'}}, \'simpleText\': \'1.8M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CMMBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CMMBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'SFuNit9HO8g\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CMMBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'SFuNit9HO8g\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'SFuNit9HO8g\']}}]}}, \'trackingParams\': \'CMMBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CL8BENwwGA0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtTRnVOaXQ5SE84Zw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CL8BENwwGA0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CMIBEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CL8BENwwGA0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CL8BENwwGA0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_mFh-WLjsiIXXBm9h4WXNGIPW16BRtArKpa4lNQnI8iXjg=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CL8BENwwGA0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SlayyPop\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCSfxFZFzcpYMbOB3A1rWHAg\', \'canonicalBaseUrl\': \'/@SlayyPop\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'12 minutes, 42 seconds\'}}, \'simpleText\': \'12:42\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CMEBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'SFuNit9HO8g\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CMEBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'SFuNit9HO8g\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CMEBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CMABEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CMABEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'SFuNit9HO8g\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CMABEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'SFuNit9HO8g\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'SFuNit9HO8g\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CMABEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_mFh-WLjsiIXXBm9h4WXNGIPW16BRtArKpa4lNQnI8iXjg=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CL8BENwwGA0iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SlayyPop\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCSfxFZFzcpYMbOB3A1rWHAg\', \'canonicalBaseUrl\': \'/@SlayyPop\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'LK7-_dgAVQE\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/LK7-_dgAVQE/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLDCpP-9SJwWPfKgxoZ6gTEZTK3Elg\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/LK7-_dgAVQE/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCuwo-oRCG9F-cBCIPFBzXVqpKtYg\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/LK7-_dgAVQE/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDuBAfOxcaVaGP6dRjikUIVdmU_Fw\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15857144, \'section3Color\': 15199730, \'primaryTitleColor\': 1053977, \'secondaryTitleColor\': 5006453, \'section4Color\': 14542571}, \'darkColorPalette\': {\'section2Color\': 1386291, \'section3Color\': 1056038, \'primaryTitleColor\': 15070463, \'secondaryTitleColor\': 10730444, \'section4Color\': 660249}}, \'title\': {\'runs\': [{\'text\': \'Tauba Tauba | Bad Newz | Vicky Kaushal | Triptii Dimri | Karan Aujla | In cinemas 19th July\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Tauba Tauba | Bad Newz | Vicky Kaushal | Triptii Dimri | Karan Aujla | In cinemas 19th July by Saregama Music 107,600,066 views 3 weeks ago 3 minutes, 42 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Experience the magic of Vicky Kaushal, Triptii Dimri and Karan Aujla\xc3\xa2\\x80\\x99s first-ever collaboration in "Tauba Tauba" from Bad Newz! This high-energy dance number is guaranteed to make you move....\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Saregama Music\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CLoBENwwGA4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SaregamaMusic\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC_A7K2dXFsTMAciGmnNxy-Q\', \'canonicalBaseUrl\': \'/@SaregamaMusic\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'3 weeks ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3 minutes, 42 seconds\'}}, \'simpleText\': \'3:42\'}, \'viewCountText\': {\'simpleText\': \'107,600,066 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CLoBENwwGA4iEwiGsb7oo8OHAxWCi9gFHTJaAFUyBmctaGlnaFoKRkV0cmVuZGluZ5oBBxDy8AUY5AM=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=LK7-_dgAVQE\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'LK7-_dgAVQE\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr5---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=2caefefdd8005501&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CLoBENwwGA4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Saregama Music\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CLoBENwwGA4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SaregamaMusic\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC_A7K2dXFsTMAciGmnNxy-Q\', \'canonicalBaseUrl\': \'/@SaregamaMusic\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Saregama Music\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CLoBENwwGA4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SaregamaMusic\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC_A7K2dXFsTMAciGmnNxy-Q\', \'canonicalBaseUrl\': \'/@SaregamaMusic\'}}}]}, \'trackingParams\': \'CLoBENwwGA4iEwiGsb7oo8OHAxWCi9gFHTJaAFVAgaqBwN3fv9cs\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'107 million views\'}}, \'simpleText\': \'107M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CL4BEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CL4BEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'LK7-_dgAVQE\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CL4BEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'LK7-_dgAVQE\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'LK7-_dgAVQE\']}}]}}, \'trackingParams\': \'CL4BEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CLoBENwwGA4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtMSzctX2RnQVZRRQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CLoBENwwGA4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CL0BEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CLoBENwwGA4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CLoBENwwGA4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/dxED1O-r5cRS73JBlUk4VS3pZHDfiHcuRjRbFMcf6KgYhxP4NUlD7x0h4TR1XTXkl-JGjTPTYQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CLoBENwwGA4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SaregamaMusic\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC_A7K2dXFsTMAciGmnNxy-Q\', \'canonicalBaseUrl\': \'/@SaregamaMusic\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3 minutes, 42 seconds\'}}, \'simpleText\': \'3:42\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CLwBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'LK7-_dgAVQE\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CLwBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'LK7-_dgAVQE\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CLwBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CLsBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CLsBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'LK7-_dgAVQE\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CLsBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'LK7-_dgAVQE\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'LK7-_dgAVQE\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CLsBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/dxED1O-r5cRS73JBlUk4VS3pZHDfiHcuRjRbFMcf6KgYhxP4NUlD7x0h4TR1XTXkl-JGjTPTYQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CLoBENwwGA4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SaregamaMusic\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC_A7K2dXFsTMAciGmnNxy-Q\', \'canonicalBaseUrl\': \'/@SaregamaMusic\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'AbkbpbpHGw4\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/AbkbpbpHGw4/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLAjZdIaB4mrj0z4P0x3WxvC86Q2ZQ\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/AbkbpbpHGw4/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCIm2dZ6CmD9fItxuHSN1tWtWuZww\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/AbkbpbpHGw4/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDItdb148D47Mwyr0ZL32GVb4L9iA\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315377, \'section3Color\': 15919847, \'primaryTitleColor\': 1643538, \'secondaryTitleColor\': 7691603, \'section4Color\': 15458781}, \'darkColorPalette\': {\'section2Color\': 3352612, \'section3Color\': 2498075, \'primaryTitleColor\': 16772581, \'secondaryTitleColor\': 13414307, \'section4Color\': 1643538}}, \'title\': {\'runs\': [{\'text\': \'Chor Bazaar Shopping Challenge | \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa5\\x8d\xc3\xa0\xc2\xa4\xc2\xa4\xc3\xa0\xc2\xa5\\x87 iPhone, DSLR Camera, Watches etc. | Is It Real?\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Chor Bazaar Shopping Challenge | \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa5\\x8d\xc3\xa0\xc2\xa4\xc2\xa4\xc3\xa0\xc2\xa5\\x87 iPhone, DSLR Camera, Watches etc. | Is It Real? by Crazy XYZ 6,737,452 views 10 days ago 22 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Hello guys, is video me humne Delhi ke Chor Bazar me shopping kari hai.\\n\\nOur Unboxing Channel- https://www.youtube.com/channel/UCIcKN-VXhkZNpf5DRdHp9JA\\nOur Shorts Channel- https://www.youtube.com/c...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Crazy XYZ\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CLUBENwwGA8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@CrazyXYZ\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCebC4x5l2-PQxg46Ucv9CsA\', \'canonicalBaseUrl\': \'/@CrazyXYZ\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'10 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'22 minutes, 7 seconds\'}}, \'simpleText\': \'22:07\'}, \'viewCountText\': {\'simpleText\': \'6,737,452 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CLUBENwwGA8iEwiGsb7oo8OHAxWCi9gFHTJaAFUyBmctaGlnaFoKRkV0cmVuZGluZ5oBBxDy8AUY5AM=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=AbkbpbpHGw4\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'AbkbpbpHGw4\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr1---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=01b91ba5ba471b0e&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CLUBENwwGA8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Crazy XYZ\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CLUBENwwGA8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@CrazyXYZ\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCebC4x5l2-PQxg46Ucv9CsA\', \'canonicalBaseUrl\': \'/@CrazyXYZ\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Crazy XYZ\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CLUBENwwGA8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@CrazyXYZ\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCebC4x5l2-PQxg46Ucv9CsA\', \'canonicalBaseUrl\': \'/@CrazyXYZ\'}}}]}, \'trackingParams\': \'CLUBENwwGA8iEwiGsb7oo8OHAxWCi9gFHTJaAFVAjrac0tv0xtwB\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'6.7 million views\'}}, \'simpleText\': \'6.7M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CLkBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CLkBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'AbkbpbpHGw4\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CLkBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'AbkbpbpHGw4\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'AbkbpbpHGw4\']}}]}}, \'trackingParams\': \'CLkBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CLUBENwwGA8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtBYmticGJwSEd3NA%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CLUBENwwGA8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CLgBEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CLUBENwwGA8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CLUBENwwGA8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_m_dwfeg3dT3tiDA8BJyWUyAk9EYZKjB5J_HGXBqSMcqmE=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CLUBENwwGA8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@CrazyXYZ\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCebC4x5l2-PQxg46Ucv9CsA\', \'canonicalBaseUrl\': \'/@CrazyXYZ\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'22 minutes, 7 seconds\'}}, \'simpleText\': \'22:07\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CLcBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'AbkbpbpHGw4\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CLcBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'AbkbpbpHGw4\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CLcBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CLYBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CLYBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'AbkbpbpHGw4\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CLYBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'AbkbpbpHGw4\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'AbkbpbpHGw4\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CLYBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_m_dwfeg3dT3tiDA8BJyWUyAk9EYZKjB5J_HGXBqSMcqmE=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CLUBENwwGA8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@CrazyXYZ\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCebC4x5l2-PQxg46Ucv9CsA\', \'canonicalBaseUrl\': \'/@CrazyXYZ\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'fzOVeNcFT3Q\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/fzOVeNcFT3Q/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLD4iv3waAoJ_7a2iZQQF63-d1kPsQ\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/fzOVeNcFT3Q/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLB4xyFvZGoGuKLte5_zZpO0B8tQJA\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/fzOVeNcFT3Q/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDUIsu8AkNEunfWmEU0NtGTEcIn5g\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15857144, \'section3Color\': 15199986, \'primaryTitleColor\': 1054233, \'secondaryTitleColor\': 5006709, \'section4Color\': 14542571}, \'darkColorPalette\': {\'section2Color\': 1452083, \'section3Color\': 1121830, \'primaryTitleColor\': 15070719, \'secondaryTitleColor\': 10730700, \'section4Color\': 726041}}, \'title\': {\'runs\': [{\'text\': "Women\'s Asia Cup Highlights | India triumphs in the Greatest Rivalry | #WomensAsiaCupOnStar"}], \'accessibility\': {\'accessibilityData\': {\'label\': "Women\'s Asia Cup Highlights | India triumphs in the Greatest Rivalry | #WomensAsiaCupOnStar by Star Sports 6,471,182 views 6 days ago 24 minutes"}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'#TeamIndia kickstarts their #WomensAsiaCup campaign with a commanding win against arch-rivals Pakistan \xc3\xb0\\x9f\\x92\xc2\xaf\\n\\nAn outstanding bowling performance, combined with a stellar opening stand led the...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Star Sports\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CLABENwwGBAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@starsports\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCmqfX0S3x0I3uwLkPdpX03w\', \'canonicalBaseUrl\': \'/@starsports\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'6 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'24 minutes, 29 seconds\'}}, \'simpleText\': \'24:29\'}, \'viewCountText\': {\'simpleText\': \'6,471,182 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CLABENwwGBAiEwiGsb7oo8OHAxWCi9gFHTJaAFUyBmctaGlnaFoKRkV0cmVuZGluZ5oBBxDy8AUY5AM=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=fzOVeNcFT3Q\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'fzOVeNcFT3Q\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr5---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=7f339578d7054f74&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CLABENwwGBAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Star Sports\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CLABENwwGBAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@starsports\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCmqfX0S3x0I3uwLkPdpX03w\', \'canonicalBaseUrl\': \'/@starsports\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Star Sports\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CLABENwwGBAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@starsports\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCmqfX0S3x0I3uwLkPdpX03w\', \'canonicalBaseUrl\': \'/@starsports\'}}}]}, \'trackingParams\': \'CLABENwwGBAiEwiGsb7oo8OHAxWCi9gFHTJaAFVA9J6VuI2v5Zl_\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'6.4 million views\'}}, \'simpleText\': \'6.4M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CLQBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CLQBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'fzOVeNcFT3Q\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CLQBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'fzOVeNcFT3Q\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'fzOVeNcFT3Q\']}}]}}, \'trackingParams\': \'CLQBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CLABENwwGBAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'Cgtmek9WZU5jRlQzUQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CLABENwwGBAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CLMBEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CLABENwwGBAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CLABENwwGBAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/wmMhkk6wa1gPnY8NK7t1TjDO935hUi6h0wIaCfNZTvj9joidoRWhseNyVys__ssQxK5lGsyBun8=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CLABENwwGBAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@starsports\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCmqfX0S3x0I3uwLkPdpX03w\', \'canonicalBaseUrl\': \'/@starsports\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'24 minutes, 29 seconds\'}}, \'simpleText\': \'24:29\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CLIBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'fzOVeNcFT3Q\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CLIBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'fzOVeNcFT3Q\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CLIBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CLEBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CLEBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'fzOVeNcFT3Q\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CLEBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'fzOVeNcFT3Q\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'fzOVeNcFT3Q\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CLEBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/wmMhkk6wa1gPnY8NK7t1TjDO935hUi6h0wIaCfNZTvj9joidoRWhseNyVys__ssQxK5lGsyBun8=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CLABENwwGBAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@starsports\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCmqfX0S3x0I3uwLkPdpX03w\', \'canonicalBaseUrl\': \'/@starsports\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'av9BiY6pb7M\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/av9BiY6pb7M/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLAbgIqRlTPcsbWHpz160r0E59JtJA\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/av9BiY6pb7M/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBOTQY4sU5K3vG2xa6n5hmh3y4O1w\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/av9BiY6pb7M/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBu6RwuQWl7gmC494p3nvn4RxlLcA\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315633, \'section3Color\': 15920359, \'primaryTitleColor\': 1643536, \'secondaryTitleColor\': 7691852, \'section4Color\': 15459549}, \'darkColorPalette\': {\'section2Color\': 3350287, \'section3Color\': 2496267, \'primaryTitleColor\': 16773349, \'secondaryTitleColor\': 13415843, \'section4Color\': 1642247}}, \'title\': {\'runs\': [{\'text\': \'Kabhi Main Kabhi Tum Episode 6 | Fahad Mustafa | Hania Aamir | 23 July 2024 (Eng Sub) ARY Digital\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Kabhi Main Kabhi Tum Episode 6 | Fahad Mustafa | Hania Aamir | 23 July 2024 (Eng Sub) ARY Digital by ARY Digital HD 4,804,004 views 2 days ago 41 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Kabhi Main Kabhi Tum | Episode 6 | Digitally Presented by Master Paints , Food Panda , Sunsilk & Skin White | Fahad Mustafa | Hania Aamir | 23 July 2024 | ARY Digital Drama \\n\\nThe drama revolves...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'ARY Digital HD\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CKsBENwwGBEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ARYDigitalasia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC4JCksJF76g_MdzPVBJoC3Q\', \'canonicalBaseUrl\': \'/@ARYDigitalasia\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'41 minutes, 8 seconds\'}}, \'simpleText\': \'41:08\'}, \'viewCountText\': {\'simpleText\': \'4,804,004 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CKsBENwwGBEiEwiGsb7oo8OHAxWCi9gFHTJaAFUyBmctaGlnaFoKRkV0cmVuZGluZ5oBBxDy8AUY5AM=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=av9BiY6pb7M\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'av9BiY6pb7M\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr2---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=6aff41898ea96fb3&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CKsBENwwGBEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'ARY Digital HD\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CKsBENwwGBEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ARYDigitalasia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC4JCksJF76g_MdzPVBJoC3Q\', \'canonicalBaseUrl\': \'/@ARYDigitalasia\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'ARY Digital HD\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CKsBENwwGBEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ARYDigitalasia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC4JCksJF76g_MdzPVBJoC3Q\', \'canonicalBaseUrl\': \'/@ARYDigitalasia\'}}}]}, \'trackingParams\': \'CKsBENwwGBEiEwiGsb7oo8OHAxWCi9gFHTJaAFVAs9-l9Zix0P9q\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'4.8 million views\'}}, \'simpleText\': \'4.8M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CK8BEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CK8BEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'av9BiY6pb7M\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CK8BEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'av9BiY6pb7M\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'av9BiY6pb7M\']}}]}}, \'trackingParams\': \'CK8BEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CKsBENwwGBEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgthdjlCaVk2cGI3TQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CKsBENwwGBEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CK4BEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CKsBENwwGBEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CKsBENwwGBEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/QhOVHhLgg5wFu4H4gA9qOVoavng-T2xoA62cXVV-dk-j8phnED3P8whca8CETo0GuAVhQgtO=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CKsBENwwGBEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ARYDigitalasia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC4JCksJF76g_MdzPVBJoC3Q\', \'canonicalBaseUrl\': \'/@ARYDigitalasia\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'41 minutes, 8 seconds\'}}, \'simpleText\': \'41:08\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CK0BEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'av9BiY6pb7M\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CK0BEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'av9BiY6pb7M\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CK0BEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CKwBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CKwBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'av9BiY6pb7M\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CKwBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'av9BiY6pb7M\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'av9BiY6pb7M\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CKwBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/QhOVHhLgg5wFu4H4gA9qOVoavng-T2xoA62cXVV-dk-j8phnED3P8whca8CETo0GuAVhQgtO=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CKsBENwwGBEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ARYDigitalasia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC4JCksJF76g_MdzPVBJoC3Q\', \'canonicalBaseUrl\': \'/@ARYDigitalasia\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'wT_l2aJBpHE\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/wT_l2aJBpHE/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLBewCk3U9Wp6NI3_DNuWbtxZLRv4Q\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/wT_l2aJBpHE/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBGtDRyA3RQMe_wXkj5DvY8doIxZQ\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/wT_l2aJBpHE/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBndphkcf1PUgsFlrIVnZoXSIoFHQ\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15857910, \'section3Color\': 15201007, \'primaryTitleColor\': 1054998, \'secondaryTitleColor\': 4549472, \'section4Color\': 14543847}, \'darkColorPalette\': {\'section2Color\': 337436, \'section3Color\': 203027, \'primaryTitleColor\': 15073271, \'secondaryTitleColor\': 10734784, \'section4Color\': 68617}}, \'title\': {\'runs\': [{\'text\': \'I Played BAD Indian Youtuber Games \xc3\xb0\\x9f\\x98\\x96 @CarryMinati\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'I Played BAD Indian Youtuber Games \xc3\xb0\\x9f\\x98\\x96 @CarryMinati by Mythpat 3,731,599 views 8 days ago 16 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Today I am gonna play Indian Youtuber Wierd games! These games are super funny and I play them on my Android Phone and PC. We play Triggered Insaan, Slayy Point, Carryminati Games which are...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Mythpat\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CKYBENwwGBIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@Mythpat\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCx6F-rETGiz7xf_vkMmX2yQ\', \'canonicalBaseUrl\': \'/@Mythpat\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'8 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'16 minutes, 18 seconds\'}}, \'simpleText\': \'16:18\'}, \'viewCountText\': {\'simpleText\': \'3,731,599 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CKYBENwwGBIiEwiGsb7oo8OHAxWCi9gFHTJaAFUyBmctaGlnaFoKRkV0cmVuZGluZ5oBBxDy8AUY5AM=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=wT_l2aJBpHE\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'wT_l2aJBpHE\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr1---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=c13fe5d9a241a471&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CKYBENwwGBIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Mythpat\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CKYBENwwGBIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@Mythpat\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCx6F-rETGiz7xf_vkMmX2yQ\', \'canonicalBaseUrl\': \'/@Mythpat\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Mythpat\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CKYBENwwGBIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@Mythpat\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCx6F-rETGiz7xf_vkMmX2yQ\', \'canonicalBaseUrl\': \'/@Mythpat\'}}}]}, \'trackingParams\': \'CKYBENwwGBIiEwiGsb7oo8OHAxWCi9gFHTJaAFVA8ciGkpq7-Z_BAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3.7 million views\'}}, \'simpleText\': \'3.7M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CKoBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CKoBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'wT_l2aJBpHE\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CKoBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'wT_l2aJBpHE\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'wT_l2aJBpHE\']}}]}}, \'trackingParams\': \'CKoBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CKYBENwwGBIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'Cgt3VF9sMmFKQnBIRQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CKYBENwwGBIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CKkBEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CKYBENwwGBIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CKYBENwwGBIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/S3Ns5FT6e9n31Z9Cagf0j_xEc_QqZcvxuuxxvZED1N6fcs4R9XsG_XhY-6ETMseU3CDSD9CcoA=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CKYBENwwGBIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@Mythpat\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCx6F-rETGiz7xf_vkMmX2yQ\', \'canonicalBaseUrl\': \'/@Mythpat\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'16 minutes, 18 seconds\'}}, \'simpleText\': \'16:18\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CKgBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'wT_l2aJBpHE\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CKgBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'wT_l2aJBpHE\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CKgBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CKcBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CKcBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'wT_l2aJBpHE\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CKcBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'wT_l2aJBpHE\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'wT_l2aJBpHE\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CKcBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/S3Ns5FT6e9n31Z9Cagf0j_xEc_QqZcvxuuxxvZED1N6fcs4R9XsG_XhY-6ETMseU3CDSD9CcoA=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CKYBENwwGBIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@Mythpat\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCx6F-rETGiz7xf_vkMmX2yQ\', \'canonicalBaseUrl\': \'/@Mythpat\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'uKUBeBBjdBs\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/uKUBeBBjdBs/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLA_wWMIUUjZ69KeVa6i_zosEysKqA\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/uKUBeBBjdBs/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCTmwAC2yxanF0kEjPUfHxEa31TdA\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/uKUBeBBjdBs/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCzpMjhOx31Rs4mIQHrCTJPtiyvRw\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315633, \'section3Color\': 15920359, \'primaryTitleColor\': 1643794, \'secondaryTitleColor\': 7364433, \'section4Color\': 15459549}, \'darkColorPalette\': {\'section2Color\': 3353380, \'section3Color\': 2498587, \'primaryTitleColor\': 16773605, \'secondaryTitleColor\': 13416099, \'section4Color\': 1643794}}, \'title\': {\'runs\': [{\'text\': \'Yashi ne kiya extreme hair cut prank\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Yashi ne kiya extreme hair cut prank by Suyash Vlogs 4,052,947 views 7 days ago 39 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Thank you for watching \\n\\nHair cut by - https://youtube.com/@hairbysanjeev4692?si=AmFM8DiSPI6uvdBF\\n\\n\\nSale is live now - https://suyashfashion.com \\nfollow our brand on Instagram - https://www.instag...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Suyash Vlogs\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CKEBENwwGBMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SuyashVlogs\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC15EM1xKwmLdwr8L04s17vw\', \'canonicalBaseUrl\': \'/@SuyashVlogs\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'7 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'39 minutes, 41 seconds\'}}, \'simpleText\': \'39:41\'}, \'viewCountText\': {\'simpleText\': \'4,052,947 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CKEBENwwGBMiEwiGsb7oo8OHAxWCi9gFHTJaAFUyBmctaGlnaFoKRkV0cmVuZGluZ5oBBxDy8AUY5AM=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=uKUBeBBjdBs\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'uKUBeBBjdBs\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr1---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=b8a501781063741b&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CKEBENwwGBMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Suyash Vlogs\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CKEBENwwGBMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SuyashVlogs\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC15EM1xKwmLdwr8L04s17vw\', \'canonicalBaseUrl\': \'/@SuyashVlogs\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Suyash Vlogs\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CKEBENwwGBMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SuyashVlogs\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC15EM1xKwmLdwr8L04s17vw\', \'canonicalBaseUrl\': \'/@SuyashVlogs\'}}}]}, \'trackingParams\': \'CKEBENwwGBMiEwiGsb7oo8OHAxWCi9gFHTJaAFVAm-iNg4GvwNK4AQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'4 million views\'}}, \'simpleText\': \'4M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CKUBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CKUBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'uKUBeBBjdBs\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CKUBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'uKUBeBBjdBs\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'uKUBeBBjdBs\']}}]}}, \'trackingParams\': \'CKUBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CKEBENwwGBMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'Cgt1S1VCZUJCamRCcw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CKEBENwwGBMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CKQBEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CKEBENwwGBMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CKEBENwwGBMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_mNwO4zzdpV16hqMI72JJVCPuClu_QFI3Q3moCx-6LCNXA=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CKEBENwwGBMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SuyashVlogs\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC15EM1xKwmLdwr8L04s17vw\', \'canonicalBaseUrl\': \'/@SuyashVlogs\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'39 minutes, 41 seconds\'}}, \'simpleText\': \'39:41\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CKMBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'uKUBeBBjdBs\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CKMBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'uKUBeBBjdBs\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CKMBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CKIBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CKIBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'uKUBeBBjdBs\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CKIBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'uKUBeBBjdBs\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'uKUBeBBjdBs\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CKIBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_mNwO4zzdpV16hqMI72JJVCPuClu_QFI3Q3moCx-6LCNXA=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CKEBENwwGBMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SuyashVlogs\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC15EM1xKwmLdwr8L04s17vw\', \'canonicalBaseUrl\': \'/@SuyashVlogs\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'TUaR3Mf3PFo\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/TUaR3Mf3PFo/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLANsGy_hMpVxOqUGOdynXwdRseXsg\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/TUaR3Mf3PFo/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLB_f26rimEZD67KBepgtCy37YWzcg\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/TUaR3Mf3PFo/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLAIu8vtLVtifFjX-9Dj__onJWs67A\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315377, \'section3Color\': 15920103, \'primaryTitleColor\': 1643280, \'secondaryTitleColor\': 7690828, \'section4Color\': 15459037}, \'darkColorPalette\': {\'section2Color\': 3350035, \'section3Color\': 2496014, \'primaryTitleColor\': 16772837, \'secondaryTitleColor\': 13414819, \'section4Color\': 1642249}}, \'title\': {\'runs\': [{\'text\': \'Deadpool & Wolverine | Final Hindi Trailer | In Cinemas July 26\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Deadpool & Wolverine | Final Hindi Trailer | In Cinemas July 26 by IndiaMarvel 4,216,341 views 5 days ago 2 minutes, 2 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Kya tum taiyaar ho? \xc3\xb0\\x9f\\x92\\x9b\xc3\xa2\\x9d\xc2\xa4\xc3\xaf\xc2\xb8\\x8f\\nEk hafte mein aa raha hai #DeadpoolAndWolverine\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'IndiaMarvel\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJwBENwwGBQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@marvelin\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCah9jr4Ehlrt4Wv-q-CgJkg\', \'canonicalBaseUrl\': \'/@marvelin\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'5 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'2 minutes, 2 seconds\'}}, \'simpleText\': \'2:02\'}, \'viewCountText\': {\'simpleText\': \'4,216,341 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CJwBENwwGBQiEwiGsb7oo8OHAxWCi9gFHTJaAFUyBmctaGlnaFoKRkV0cmVuZGluZ5oBBxDy8AUY5AM=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=TUaR3Mf3PFo\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'TUaR3Mf3PFo\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr2---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=4d4691dcc7f73c5a&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerText\': {\'runs\': [{\'text\': \'IndiaMarvel\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJwBENwwGBQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@marvelin\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCah9jr4Ehlrt4Wv-q-CgJkg\', \'canonicalBaseUrl\': \'/@marvelin\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'IndiaMarvel\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJwBENwwGBQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@marvelin\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCah9jr4Ehlrt4Wv-q-CgJkg\', \'canonicalBaseUrl\': \'/@marvelin\'}}}]}, \'trackingParams\': \'CJwBENwwGBQiEwiGsb7oo8OHAxWCi9gFHTJaAFVA2vjcv8y7pKNN\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'4.2 million views\'}}, \'simpleText\': \'4.2M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CKABEP6YBBgHIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CKABEP6YBBgHIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'TUaR3Mf3PFo\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CKABEP6YBBgHIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'TUaR3Mf3PFo\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'TUaR3Mf3PFo\']}}]}}, \'trackingParams\': \'CKABEP6YBBgHIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CJwBENwwGBQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtUVWFSM01mM1BGbw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CJwBENwwGBQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CJ8BEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CJwBENwwGBQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CJwBENwwGBQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_nch5Zou4S-z7GphMTRXPgLxBDs2Af5ZD8Ch9NDeK0jWKM=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CJwBENwwGBQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@marvelin\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCah9jr4Ehlrt4Wv-q-CgJkg\', \'canonicalBaseUrl\': \'/@marvelin\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'2 minutes, 2 seconds\'}}, \'simpleText\': \'2:02\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CJ4BEPnnAxgBIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'TUaR3Mf3PFo\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CJ4BEPnnAxgBIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'TUaR3Mf3PFo\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CJ4BEPnnAxgBIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CJ0BEMfsBBgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CJ0BEMfsBBgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'TUaR3Mf3PFo\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CJ0BEMfsBBgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'TUaR3Mf3PFo\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'TUaR3Mf3PFo\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CJ0BEMfsBBgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_nch5Zou4S-z7GphMTRXPgLxBDs2Af5ZD8Ch9NDeK0jWKM=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CJwBENwwGBQiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@marvelin\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCah9jr4Ehlrt4Wv-q-CgJkg\', \'canonicalBaseUrl\': \'/@marvelin\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'Av9DvtlJ9_M\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/Av9DvtlJ9_M/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLAilz7V_RtWu9bfWgakiBQh-4MHsA\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/Av9DvtlJ9_M/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBvd-sbkQFz0LPnMVh7pRL76SlqEA\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/Av9DvtlJ9_M/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDMp7TxQNZrKbt0n_ViQBgDHoruZw\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15857400, \'section3Color\': 15199986, \'primaryTitleColor\': 1185561, \'secondaryTitleColor\': 5334896, \'section4Color\': 14542827}, \'darkColorPalette\': {\'section2Color\': 1778470, \'section3Color\': 1185561, \'primaryTitleColor\': 15071231, \'secondaryTitleColor\': 10731468, \'section4Color\': 592652}}, \'title\': {\'runs\': [{\'text\': "\xc3\xac\xc2\xa7\\x80\xc3\xab\xc2\xaf\xc2\xbc (Jimin) \'Who\' Official MV"}], \'accessibility\': {\'accessibilityData\': {\'label\': "\xc3\xac\xc2\xa7\\x80\xc3\xab\xc2\xaf\xc2\xbc (Jimin) \'Who\' Official MV by HYBE LABELS 21,134,912 views 6 days ago 3 minutes, 28 seconds"}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': "\xc3\xac\xc2\xa7\\x80\xc3\xab\xc2\xaf\xc2\xbc (Jimin) \xc3\xa2\\x80\\x98MUSE\'\\n\xc3\xb0\\x9f\\x8e\xc2\xa7 Listen now: https://jimin.lnk.to/MUSE\\n\\n\\nCredits:\\nDirector: YongSeok Choi (Lumpens)\\nAssistant Director: Jihye Yoon, Soeyoung Park\\n\\nExecutive Producer: Tommy Sub..."}]}, \'longBylineText\': {\'runs\': [{\'text\': \'HYBE LABELS\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJcBENwwGBUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@HYBELABELS\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC3IZKseVpdzPSBaWxBxundA\', \'canonicalBaseUrl\': \'/@HYBELABELS\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'6 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3 minutes, 28 seconds\'}}, \'simpleText\': \'3:28\'}, \'viewCountText\': {\'simpleText\': \'21,134,912 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CJcBENwwGBUiEwiGsb7oo8OHAxWCi9gFHTJaAFUyBmctaGlnaFoKRkV0cmVuZGluZ5oBBxDy8AUY5AM=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=Av9DvtlJ9_M\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'Av9DvtlJ9_M\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr2---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=02ff43bed949f7f3&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CJcBENwwGBUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'HYBE LABELS\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJcBENwwGBUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@HYBELABELS\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC3IZKseVpdzPSBaWxBxundA\', \'canonicalBaseUrl\': \'/@HYBELABELS\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'HYBE LABELS\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJcBENwwGBUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@HYBELABELS\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC3IZKseVpdzPSBaWxBxundA\', \'canonicalBaseUrl\': \'/@HYBELABELS\'}}}]}, \'trackingParams\': \'CJcBENwwGBUiEwiGsb7oo8OHAxWCi9gFHTJaAFVA8--nyu330P8C\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'21 million views\'}}, \'simpleText\': \'21M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CJsBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CJsBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'Av9DvtlJ9_M\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CJsBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'Av9DvtlJ9_M\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'Av9DvtlJ9_M\']}}]}}, \'trackingParams\': \'CJsBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CJcBENwwGBUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtBdjlEdnRsSjlfTQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CJcBENwwGBUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CJoBEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CJcBENwwGBUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CJcBENwwGBUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_moizdSO2edQjTEiMj4OADBIy4SpYyZEGLA-KL538pq8UA=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CJcBENwwGBUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@HYBELABELS\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC3IZKseVpdzPSBaWxBxundA\', \'canonicalBaseUrl\': \'/@HYBELABELS\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3 minutes, 28 seconds\'}}, \'simpleText\': \'3:28\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CJkBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'Av9DvtlJ9_M\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CJkBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'Av9DvtlJ9_M\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CJkBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CJgBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CJgBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'Av9DvtlJ9_M\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CJgBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'Av9DvtlJ9_M\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'Av9DvtlJ9_M\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CJgBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_moizdSO2edQjTEiMj4OADBIy4SpYyZEGLA-KL538pq8UA=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CJcBENwwGBUiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@HYBELABELS\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC3IZKseVpdzPSBaWxBxundA\', \'canonicalBaseUrl\': \'/@HYBELABELS\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'kGUoOgeMb3g\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/kGUoOgeMb3g/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLAUr8U4medl7gjk-RMksHxzCS998w\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/kGUoOgeMb3g/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLAP8WsnHo_xoR7arY3vUXD9tt6iLQ\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/kGUoOgeMb3g/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDTUisGON1GbJO6yZqgLayZ81nJ5A\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16250871, \'section3Color\': 15724527, \'primaryTitleColor\': 1644825, \'secondaryTitleColor\': 6645093, \'section4Color\': 15263976}, \'darkColorPalette\': {\'section2Color\': 2631720, \'section3Color\': 1644825, \'primaryTitleColor\': 16777215, \'secondaryTitleColor\': 13421772, \'section4Color\': 789516}}, \'title\': {\'runs\': [{\'text\': \'Ashish Chanchlani and I Pranked Carryminati and Fukra Insaan\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Ashish Chanchlani and I Pranked Carryminati and Fukra Insaan by Triggered Insaan 10,435,434 views 12 days ago 14 minutes, 33 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'In this video, I teamed up with @ashishchanchlanivines to prank @CarryMinati and @FukraInsaan \\n\\nIss shoot mein aur bohut kuch hua hai, dekhna chahate ho? Picture baaki hai mere dost! #ComingSoon...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Triggered Insaan\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJIBENwwGBYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@triggeredinsaan\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCfLuT3JwLx8rvHjHfTymekw\', \'canonicalBaseUrl\': \'/@triggeredinsaan\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'12 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'14 minutes, 33 seconds\'}}, \'simpleText\': \'14:33\'}, \'viewCountText\': {\'simpleText\': \'10,435,434 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CJIBENwwGBYiEwiGsb7oo8OHAxWCi9gFHTJaAFUyBmctaGlnaFoKRkV0cmVuZGluZ5oBBxDy8AUY5AM=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=kGUoOgeMb3g\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'kGUoOgeMb3g\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr1---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=9065283a078c6f78&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CJIBENwwGBYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Triggered Insaan\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJIBENwwGBYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@triggeredinsaan\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCfLuT3JwLx8rvHjHfTymekw\', \'canonicalBaseUrl\': \'/@triggeredinsaan\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Triggered Insaan\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CJIBENwwGBYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@triggeredinsaan\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCfLuT3JwLx8rvHjHfTymekw\', \'canonicalBaseUrl\': \'/@triggeredinsaan\'}}}]}, \'trackingParams\': \'CJIBENwwGBYiEwiGsb7oo8OHAxWCi9gFHTJaAFVA-N6xvKCHyrKQAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'10 million views\'}}, \'simpleText\': \'10M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CJYBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CJYBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'kGUoOgeMb3g\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CJYBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'kGUoOgeMb3g\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'kGUoOgeMb3g\']}}]}}, \'trackingParams\': \'CJYBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CJIBENwwGBYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtrR1VvT2dlTWIzZw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CJIBENwwGBYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CJUBEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CJIBENwwGBYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CJIBENwwGBYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_mkAwCkXKphOW95tNtx2WVHWIH6LPKAcMVpH-fwAJgmKQM=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CJIBENwwGBYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@triggeredinsaan\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCfLuT3JwLx8rvHjHfTymekw\', \'canonicalBaseUrl\': \'/@triggeredinsaan\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'14 minutes, 33 seconds\'}}, \'simpleText\': \'14:33\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CJQBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'kGUoOgeMb3g\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CJQBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'kGUoOgeMb3g\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CJQBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CJMBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CJMBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'kGUoOgeMb3g\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CJMBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'kGUoOgeMb3g\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'kGUoOgeMb3g\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CJMBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_mkAwCkXKphOW95tNtx2WVHWIH6LPKAcMVpH-fwAJgmKQM=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CJIBENwwGBYiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@triggeredinsaan\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCfLuT3JwLx8rvHjHfTymekw\', \'canonicalBaseUrl\': \'/@triggeredinsaan\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'3kmUS5HlNNc\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/3kmUS5HlNNc/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLDpVQ3l0SK5medYI0zUVHNHiVA_mA\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/3kmUS5HlNNc/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDkspDBeyHtSiPuZQcDHnowJ1sUnw\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/3kmUS5HlNNc/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCt9lUp9UK3iAkNljNVN3jnkuIIAw\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315377, \'section3Color\': 15919847, \'primaryTitleColor\': 1643280, \'secondaryTitleColor\': 8019279, \'section4Color\': 15459037}, \'darkColorPalette\': {\'section2Color\': 3349522, \'section3Color\': 2495757, \'primaryTitleColor\': 16772581, \'secondaryTitleColor\': 13414563, \'section4Color\': 1641993}}, \'title\': {\'runs\': [{\'text\': \'Zor Ki Barsaat Hui (Song): Jubin Nautiyal, Rochak K | Abhishek Malhan, Isha Malviya | Bhushan Kumar\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Zor Ki Barsaat Hui (Song): Jubin Nautiyal, Rochak K | Abhishek Malhan, Isha Malviya | Bhushan Kumar by T-Series 22,813,685 views 10 days ago 3 minutes, 34 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'This Monsoon, Witness the Love In Its True Senses. Presenting the Monsoon Blockbuster Hit "Zor Ki Barsaat Hui (Song)" With The Sensational Duo "Abhishek Malhan" & "Isha Malviya". Sung by the...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'T-Series\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CI0BENwwGBciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@tseries\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCq-Fj5jknLsUf-MWSy4_brA\', \'canonicalBaseUrl\': \'/@tseries\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'10 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3 minutes, 34 seconds\'}}, \'simpleText\': \'3:34\'}, \'viewCountText\': {\'simpleText\': \'22,813,685 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CI0BENwwGBciEwiGsb7oo8OHAxWCi9gFHTJaAFUyBmctaGlnaFoKRkV0cmVuZGluZ5oBBxDy8AUY5AM=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=3kmUS5HlNNc\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'3kmUS5HlNNc\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr3---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=de49944b91e534d7&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CI0BENwwGBciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'T-Series\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CI0BENwwGBciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@tseries\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCq-Fj5jknLsUf-MWSy4_brA\', \'canonicalBaseUrl\': \'/@tseries\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'T-Series\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CI0BENwwGBciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@tseries\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCq-Fj5jknLsUf-MWSy4_brA\', \'canonicalBaseUrl\': \'/@tseries\'}}}]}, \'trackingParams\': \'CI0BENwwGBciEwiGsb7oo8OHAxWCi9gFHTJaAFVA1-mUj7mJ5aTeAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'22 million views\'}}, \'simpleText\': \'22M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CJEBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CJEBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'3kmUS5HlNNc\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CJEBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'3kmUS5HlNNc\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'3kmUS5HlNNc\']}}]}}, \'trackingParams\': \'CJEBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CI0BENwwGBciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'Cgsza21VUzVIbE5OYw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CI0BENwwGBciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CJABEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CI0BENwwGBciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CI0BENwwGBciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/XE7Iq8jvJ07ptMc-HxZR_V-2XgXCb0i06i4E_dypl7xSR655WXaQeglfqNuEeuwH3oM9RKVodQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CI0BENwwGBciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@tseries\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCq-Fj5jknLsUf-MWSy4_brA\', \'canonicalBaseUrl\': \'/@tseries\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3 minutes, 34 seconds\'}}, \'simpleText\': \'3:34\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CI8BEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'3kmUS5HlNNc\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CI8BEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'3kmUS5HlNNc\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CI8BEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CI4BEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CI4BEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'3kmUS5HlNNc\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CI4BEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'3kmUS5HlNNc\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'3kmUS5HlNNc\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CI4BEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/XE7Iq8jvJ07ptMc-HxZR_V-2XgXCb0i06i4E_dypl7xSR655WXaQeglfqNuEeuwH3oM9RKVodQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CI0BENwwGBciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@tseries\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCq-Fj5jknLsUf-MWSy4_brA\', \'canonicalBaseUrl\': \'/@tseries\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'sBBCXKbrT3I\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/sBBCXKbrT3I/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLA92HHkWozW1YGiXIW09ITES8D7BA\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/sBBCXKbrT3I/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLClejhzkaPKctW0hl8riomeILjMGA\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/sBBCXKbrT3I/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLA-F0rBfraDIlKTOINxH-CqBnbXeg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15856376, \'section3Color\': 15198450, \'primaryTitleColor\': 1052953, \'secondaryTitleColor\': 5659524, \'section4Color\': 14540779}, \'darkColorPalette\': {\'section2Color\': 856627, \'section3Color\': 658726, \'primaryTitleColor\': 15067391, \'secondaryTitleColor\': 10725580, \'section4Color\': 395545}}, \'title\': {\'runs\': [{\'text\': "India (W) vs Nepal (W) | ACC Women\'s Asia Cup | Match 10 | Highlights"}], \'accessibility\': {\'accessibilityData\': {\'label\': "India (W) vs Nepal (W) | ACC Women\'s Asia Cup | Match 10 | Highlights by Asian Cricket Council 1,937,069 views 2 days ago 12 minutes, 5 seconds"}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': "Match 10 of India (W) vs Nepal (W), ACC Women\'s Asia Cup"}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Asian Cricket Council\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CIgBENwwGBgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AsianCricketCouncilTV\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC7ITT3ooYWDYY_ehIUbt6eg\', \'canonicalBaseUrl\': \'/@AsianCricketCouncilTV\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'12 minutes, 5 seconds\'}}, \'simpleText\': \'12:05\'}, \'viewCountText\': {\'simpleText\': \'1,937,069 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CIgBENwwGBgiEwiGsb7oo8OHAxWCi9gFHTJaAFUyBmctaGlnaFoKRkV0cmVuZGluZ5oBBxDy8AUY5AM=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=sBBCXKbrT3I\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'sBBCXKbrT3I\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr4---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=b010425ca6eb4f72&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CIgBENwwGBgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Asian Cricket Council\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CIgBENwwGBgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AsianCricketCouncilTV\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC7ITT3ooYWDYY_ehIUbt6eg\', \'canonicalBaseUrl\': \'/@AsianCricketCouncilTV\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Asian Cricket Council\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CIgBENwwGBgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AsianCricketCouncilTV\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC7ITT3ooYWDYY_ehIUbt6eg\', \'canonicalBaseUrl\': \'/@AsianCricketCouncilTV\'}}}]}, \'trackingParams\': \'CIgBENwwGBgiEwiGsb7oo8OHAxWCi9gFHTJaAFVA8p6tt8rLkIiwAQ==\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'1.9 million views\'}}, \'simpleText\': \'1.9M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CIwBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CIwBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'sBBCXKbrT3I\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CIwBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'sBBCXKbrT3I\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'sBBCXKbrT3I\']}}]}}, \'trackingParams\': \'CIwBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CIgBENwwGBgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtzQkJDWEticlQzSQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CIgBENwwGBgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CIsBEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CIgBENwwGBgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CIgBENwwGBgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/6aLGUKNgK97FyqShBOoJwUd1kUtIJfDbx8Pvt31ceLmboNWMADnDSX7KsDxWrGWkLuPUO5vYpA=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CIgBENwwGBgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AsianCricketCouncilTV\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC7ITT3ooYWDYY_ehIUbt6eg\', \'canonicalBaseUrl\': \'/@AsianCricketCouncilTV\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'12 minutes, 5 seconds\'}}, \'simpleText\': \'12:05\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CIoBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'sBBCXKbrT3I\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CIoBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'sBBCXKbrT3I\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CIoBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CIkBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CIkBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'sBBCXKbrT3I\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CIkBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'sBBCXKbrT3I\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'sBBCXKbrT3I\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CIkBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/6aLGUKNgK97FyqShBOoJwUd1kUtIJfDbx8Pvt31ceLmboNWMADnDSX7KsDxWrGWkLuPUO5vYpA=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CIgBENwwGBgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AsianCricketCouncilTV\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC7ITT3ooYWDYY_ehIUbt6eg\', \'canonicalBaseUrl\': \'/@AsianCricketCouncilTV\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'Z7_NNgXbyR4\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/Z7_NNgXbyR4/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLAZgfXfLzP-Lsvij0LkWYIZ6vJWbg\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/Z7_NNgXbyR4/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCO1yyagYydNvz7N7gG2jb2YS7Ekw\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/Z7_NNgXbyR4/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDXXnTt7ruIBasPzBuTdLKdYJtOeg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15857400, \'section3Color\': 15199986, \'primaryTitleColor\': 1447961, \'secondaryTitleColor\': 5923429, \'section4Color\': 14542827}, \'darkColorPalette\': {\'section2Color\': 2171942, \'section3Color\': 1447961, \'primaryTitleColor\': 15071231, \'secondaryTitleColor\': 11846860, \'section4Color\': 723980}}, \'title\': {\'runs\': [{\'text\': \'Realme 13 Pro plus is here - Ultra clear camera vs DSLR\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Realme 13 Pro plus is here - Ultra clear camera vs DSLR by Technology Gyan 834,775 views 3 days ago 13 minutes, 9 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Realme 13 pro+ aa gaya hai dslr level camera k sath...\\n\\naaj is video mein camera test krte hai realme ke new smartphone realme 13 pro plus ka side by side compare krenge dslr se jange bhai...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Technology Gyan\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CIMBENwwGBkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TechnologyGyan\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC1tVU8H153ZFO9eRsxdJlhA\', \'canonicalBaseUrl\': \'/@TechnologyGyan\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'3 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'13 minutes, 9 seconds\'}}, \'simpleText\': \'13:09\'}, \'viewCountText\': {\'simpleText\': \'834,775 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CIMBENwwGBkiEwiGsb7oo8OHAxWCi9gFHTJaAFUyBmctaGlnaFoKRkV0cmVuZGluZ5oBBxDy8AUY5AM=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=Z7_NNgXbyR4\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'Z7_NNgXbyR4\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr3---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=67bfcd3605dbc91e&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CIMBENwwGBkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Technology Gyan\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CIMBENwwGBkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TechnologyGyan\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC1tVU8H153ZFO9eRsxdJlhA\', \'canonicalBaseUrl\': \'/@TechnologyGyan\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Technology Gyan\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CIMBENwwGBkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TechnologyGyan\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC1tVU8H153ZFO9eRsxdJlhA\', \'canonicalBaseUrl\': \'/@TechnologyGyan\'}}}]}, \'trackingParams\': \'CIMBENwwGBkiEwiGsb7oo8OHAxWCi9gFHTJaAFVAnpLvruCm899n\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'834K views\'}}, \'simpleText\': \'834K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CIcBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CIcBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'Z7_NNgXbyR4\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CIcBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'Z7_NNgXbyR4\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'Z7_NNgXbyR4\']}}]}}, \'trackingParams\': \'CIcBEP6YBBgIIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CIMBENwwGBkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtaN19OTmdYYnlSNA%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CIMBENwwGBkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CIYBEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CIMBENwwGBkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}], \'trackingParams\': \'CIMBENwwGBkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/tC7T8-4MvARqycrxkYbYQh5ygYMjqIn4ET9s-OAjmWeM349qscepubONTcBvb_vG43jwW_Xi_g=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CIMBENwwGBkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TechnologyGyan\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC1tVU8H153ZFO9eRsxdJlhA\', \'canonicalBaseUrl\': \'/@TechnologyGyan\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'13 minutes, 9 seconds\'}}, \'simpleText\': \'13:09\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CIUBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'Z7_NNgXbyR4\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CIUBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'Z7_NNgXbyR4\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CIUBEPnnAxgCIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CIQBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CIQBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'Z7_NNgXbyR4\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CIQBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'Z7_NNgXbyR4\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'Z7_NNgXbyR4\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CIQBEMfsBBgDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/tC7T8-4MvARqycrxkYbYQh5ygYMjqIn4ET9s-OAjmWeM349qscepubONTcBvb_vG43jwW_Xi_g=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CIMBENwwGBkiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TechnologyGyan\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC1tVU8H153ZFO9eRsxdJlhA\', \'canonicalBaseUrl\': \'/@TechnologyGyan\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'a2AD7Wa8Jx0\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/a2AD7Wa8Jx0/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLDtrENTYI-nHac8RvqSoyd5ksELlA\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/a2AD7Wa8Jx0/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBn4YYGC7bx5ycgXyfv9HeC-fsoqA\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/a2AD7Wa8Jx0/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDmPNhzgEwPBN_zxyNHvytkfoQTVQ\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16314866, \'section3Color\': 15919081, \'primaryTitleColor\': 1643027, \'secondaryTitleColor\': 8018014, \'section4Color\': 15457760}, \'darkColorPalette\': {\'section2Color\': 3351591, \'section3Color\': 2497309, \'primaryTitleColor\': 16770537, \'secondaryTitleColor\': 13411242, \'section4Color\': 1643027}}, \'title\': {\'runs\': [{\'text\': \'Savi-Sai-Rajat ka \xc3\xa0\xc2\xa4\xc2\xb0\xc3\xa0\xc2\xa4\\x82\xc3\xa0\xc2\xa4\\x97\xc3\xa0\xc2\xa5\\x80\xc3\xa0\xc2\xa4\xc2\xb2\xc3\xa0\xc2\xa4\xc2\xbe hug! | Ep.1284 | Latest | Ghum Hai Kisikey Pyaar Meiin | Mon-Sun | 8PM\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Savi-Sai-Rajat ka \xc3\xa0\xc2\xa4\xc2\xb0\xc3\xa0\xc2\xa4\\x82\xc3\xa0\xc2\xa4\\x97\xc3\xa0\xc2\xa5\\x80\xc3\xa0\xc2\xa4\xc2\xb2\xc3\xa0\xc2\xa4\xc2\xbe hug! | Ep.1284 | Latest | Ghum Hai Kisikey Pyaar Meiin | Mon-Sun | 8PM by Ghum Hai Kisikey Pyaar Meiin 1,468,391 views 1 day ago 3 minutes, 21 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Click here to Subscribe Ghum Hai Kisikey Pyaar Meiin : https://www.youtube.com/channel/UCh9Ao0KLPNXGsHqvIU1pdVw\\n\\nClick here to Subscribe Star Plus : https://www.youtube.com/channel/UC-LPIU24bQXVljU...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Ghum Hai Kisikey Pyaar Meiin \', \'navigationEndpoint\': {\'clickTrackingParams\': \'CH4Q3DAYGiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@GhumHaiKisikeyPyaarMeiin\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCh9Ao0KLPNXGsHqvIU1pdVw\', \'canonicalBaseUrl\': \'/@GhumHaiKisikeyPyaarMeiin\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'1 day ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3 minutes, 21 seconds\'}}, \'simpleText\': \'3:21\'}, \'viewCountText\': {\'simpleText\': \'1,468,391 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CH4Q3DAYGiITCIaxvuijw4cDFYKL2AUdMloAVTIGZy1oaWdoWgpGRXRyZW5kaW5nmgEHEPLwBRjkAw==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=a2AD7Wa8Jx0\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'a2AD7Wa8Jx0\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr1---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=6b6003ed66bc271d&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerText\': {\'runs\': [{\'text\': \'Ghum Hai Kisikey Pyaar Meiin \', \'navigationEndpoint\': {\'clickTrackingParams\': \'CH4Q3DAYGiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@GhumHaiKisikeyPyaarMeiin\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCh9Ao0KLPNXGsHqvIU1pdVw\', \'canonicalBaseUrl\': \'/@GhumHaiKisikeyPyaarMeiin\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Ghum Hai Kisikey Pyaar Meiin \', \'navigationEndpoint\': {\'clickTrackingParams\': \'CH4Q3DAYGiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@GhumHaiKisikeyPyaarMeiin\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCh9Ao0KLPNXGsHqvIU1pdVw\', \'canonicalBaseUrl\': \'/@GhumHaiKisikeyPyaarMeiin\'}}}]}, \'trackingParams\': \'CH4Q3DAYGiITCIaxvuijw4cDFYKL2AUdMloAVUCdzvC11v2AsGs=\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'1.4 million views\'}}, \'simpleText\': \'1.4M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CIIBEP6YBBgHIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CIIBEP6YBBgHIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'a2AD7Wa8Jx0\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CIIBEP6YBBgHIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'a2AD7Wa8Jx0\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'a2AD7Wa8Jx0\']}}]}}, \'trackingParams\': \'CIIBEP6YBBgHIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CH4Q3DAYGiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgthMkFEN1dhOEp4MA%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CH4Q3DAYGiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CIEBEI5iIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CH4Q3DAYGiITCIaxvuijw4cDFYKL2AUdMloAVQ==\'}}], \'trackingParams\': \'CH4Q3DAYGiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/MHFaHBZzV3kCZRrZ-DVE_gnGuisdfsskorOC0Kc24q5UnC5liL92W9xbqnEeCvwW-2jHBYEGyw=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CH4Q3DAYGiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@GhumHaiKisikeyPyaarMeiin\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCh9Ao0KLPNXGsHqvIU1pdVw\', \'canonicalBaseUrl\': \'/@GhumHaiKisikeyPyaarMeiin\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3 minutes, 21 seconds\'}}, \'simpleText\': \'3:21\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CIABEPnnAxgBIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'a2AD7Wa8Jx0\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CIABEPnnAxgBIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'a2AD7Wa8Jx0\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CIABEPnnAxgBIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CH8Qx-wEGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CH8Qx-wEGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'a2AD7Wa8Jx0\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CH8Qx-wEGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'a2AD7Wa8Jx0\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'a2AD7Wa8Jx0\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CH8Qx-wEGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/MHFaHBZzV3kCZRrZ-DVE_gnGuisdfsskorOC0Kc24q5UnC5liL92W9xbqnEeCvwW-2jHBYEGyw=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CH4Q3DAYGiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@GhumHaiKisikeyPyaarMeiin\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCh9Ao0KLPNXGsHqvIU1pdVw\', \'canonicalBaseUrl\': \'/@GhumHaiKisikeyPyaarMeiin\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'f1FobBUfz1s\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/f1FobBUfz1s/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLCduZD7zN8o-d_4EOG72cnYuHsGyw\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/f1FobBUfz1s/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCTmP6rnrFC-ldeFhyBrKLqVG0PFA\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/f1FobBUfz1s/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLAF-xUxI7yrLhINdlrcPXMrPDykuQ\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315633, \'section3Color\': 15920359, \'primaryTitleColor\': 1643536, \'secondaryTitleColor\': 7691852, \'section4Color\': 15459549}, \'darkColorPalette\': {\'section2Color\': 3350287, \'section3Color\': 2496267, \'primaryTitleColor\': 16773349, \'secondaryTitleColor\': 13415843, \'section4Color\': 1642247}}, \'title\': {\'runs\': [{\'text\': \'Kabhi Main Kabhi Tum Episode 5 | Fahad Mustafa | Hania Aamir | 22 July 2024 (Eng Sub) ARY Digital\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Kabhi Main Kabhi Tum Episode 5 | Fahad Mustafa | Hania Aamir | 22 July 2024 (Eng Sub) ARY Digital by ARY Digital HD 5,145,240 views 3 days ago 42 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Kabhi Main Kabhi Tum | Episode 5 | Digitally Presented by Master Paints , Food Panda , Sunsilk & Skin White | Fahad Mustafa | Hania Aamir | 22 July 2024 | ARY Digital Drama \\n\\nThe drama revolves...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'ARY Digital HD\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CHkQ3DAYGyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ARYDigitalasia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC4JCksJF76g_MdzPVBJoC3Q\', \'canonicalBaseUrl\': \'/@ARYDigitalasia\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'3 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'42 minutes, 45 seconds\'}}, \'simpleText\': \'42:45\'}, \'viewCountText\': {\'simpleText\': \'5,145,240 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CHkQ3DAYGyITCIaxvuijw4cDFYKL2AUdMloAVTIGZy1oaWdoWgpGRXRyZW5kaW5nmgEHEPLwBRjkAw==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=f1FobBUfz1s\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'f1FobBUfz1s\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr2---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=7f51686c151fcf5b&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CHkQ3DAYGyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'ARY Digital HD\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CHkQ3DAYGyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ARYDigitalasia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC4JCksJF76g_MdzPVBJoC3Q\', \'canonicalBaseUrl\': \'/@ARYDigitalasia\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'ARY Digital HD\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CHkQ3DAYGyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ARYDigitalasia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC4JCksJF76g_MdzPVBJoC3Q\', \'canonicalBaseUrl\': \'/@ARYDigitalasia\'}}}]}, \'trackingParams\': \'CHkQ3DAYGyITCIaxvuijw4cDFYKL2AUdMloAVUDbnv-owY3aqH8=\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'5.1 million views\'}}, \'simpleText\': \'5.1M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CH0Q_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CH0Q_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'f1FobBUfz1s\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CH0Q_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'f1FobBUfz1s\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'f1FobBUfz1s\']}}]}}, \'trackingParams\': \'CH0Q_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CHkQ3DAYGyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtmMUZvYkJVZnoxcw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CHkQ3DAYGyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CHwQjmIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CHkQ3DAYGyITCIaxvuijw4cDFYKL2AUdMloAVQ==\'}}], \'trackingParams\': \'CHkQ3DAYGyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/QhOVHhLgg5wFu4H4gA9qOVoavng-T2xoA62cXVV-dk-j8phnED3P8whca8CETo0GuAVhQgtO=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CHkQ3DAYGyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ARYDigitalasia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC4JCksJF76g_MdzPVBJoC3Q\', \'canonicalBaseUrl\': \'/@ARYDigitalasia\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'42 minutes, 45 seconds\'}}, \'simpleText\': \'42:45\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CHsQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'f1FobBUfz1s\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CHsQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'f1FobBUfz1s\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CHsQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CHoQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CHoQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'f1FobBUfz1s\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CHoQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'f1FobBUfz1s\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'f1FobBUfz1s\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CHoQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/QhOVHhLgg5wFu4H4gA9qOVoavng-T2xoA62cXVV-dk-j8phnED3P8whca8CETo0GuAVhQgtO=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CHkQ3DAYGyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ARYDigitalasia\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC4JCksJF76g_MdzPVBJoC3Q\', \'canonicalBaseUrl\': \'/@ARYDigitalasia\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'8DHetOLjAXk\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/8DHetOLjAXk/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLC7owsgTMYmtBybCd6TNUgOM2qc1w\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/8DHetOLjAXk/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLB93hSyCUiT5f4zs_uZjwG0lPG0Qw\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/8DHetOLjAXk/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLAewwYyQSPx65-KPAzm6xE5sOVu4g\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16314865, \'section3Color\': 15919079, \'primaryTitleColor\': 1642768, \'secondaryTitleColor\': 8344658, \'section4Color\': 15458013}, \'darkColorPalette\': {\'section2Color\': 3349788, \'section3Color\': 2496021, \'primaryTitleColor\': 16770789, \'secondaryTitleColor\': 13411747, \'section4Color\': 1641998}}, \'title\': {\'runs\': [{\'text\': \'\xc3\xa0\xc2\xa4\\x8f\xc3\xa0\xc2\xa4\\x95 Skit \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa5\\x87 Through CID \xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\xc2\xb9\xc3\xa0\xc2\xa4\xc2\xb2 \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa5\\x80 Case \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa5\\x80 Mystery! | CID | \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa5\\x80.\xc3\xa0\xc2\xa4\\x86\xc3\xa0\xc2\xa4\\x88.\xc3\xa0\xc2\xa4\xc2\xa1\xc3\xa0\xc2\xa5\\x80.| Latest Episode| 23 July 2024\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'\xc3\xa0\xc2\xa4\\x8f\xc3\xa0\xc2\xa4\\x95 Skit \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa5\\x87 Through CID \xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\xc2\xb9\xc3\xa0\xc2\xa4\xc2\xb2 \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa5\\x80 Case \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa5\\x80 Mystery! | CID | \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa5\\x80.\xc3\xa0\xc2\xa4\\x86\xc3\xa0\xc2\xa4\\x88.\xc3\xa0\xc2\xa4\xc2\xa1\xc3\xa0\xc2\xa5\\x80.| Latest Episode| 23 July 2024 by LIV Crime 756,588 views 2 days ago 48 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': "Click here to Subscribe to LIV Crime: \\nhttps://www.youtube.com/channel/UCzXpAx4v6rFLYXkJZ5nmSvQ?sub_confirmation=1\\n\\nA woman\'s ghost is haunting the city and causing destruction around. The..."}]}, \'longBylineText\': {\'runs\': [{\'text\': \'LIV Crime\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CHQQ3DAYHCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@LIVCrime\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCzXpAx4v6rFLYXkJZ5nmSvQ\', \'canonicalBaseUrl\': \'/@LIVCrime\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'48 minutes\'}}, \'simpleText\': \'48:00\'}, \'viewCountText\': {\'simpleText\': \'756,588 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CHQQ3DAYHCITCIaxvuijw4cDFYKL2AUdMloAVTIGZy1oaWdoWgpGRXRyZW5kaW5nmgEHEPLwBRjkAw==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=8DHetOLjAXk\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'8DHetOLjAXk\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr1---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=f031deb4e2e30179&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CHQQ3DAYHCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'LIV Crime\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CHQQ3DAYHCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@LIVCrime\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCzXpAx4v6rFLYXkJZ5nmSvQ\', \'canonicalBaseUrl\': \'/@LIVCrime\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'LIV Crime\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CHQQ3DAYHCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@LIVCrime\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCzXpAx4v6rFLYXkJZ5nmSvQ\', \'canonicalBaseUrl\': \'/@LIVCrime\'}}}]}, \'trackingParams\': \'CHQQ3DAYHCITCIaxvuijw4cDFYKL2AUdMloAVUD5goyXztb3mPAB\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'756K views\'}}, \'simpleText\': \'756K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CHgQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CHgQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'8DHetOLjAXk\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CHgQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'8DHetOLjAXk\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'8DHetOLjAXk\']}}]}}, \'trackingParams\': \'CHgQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CHQQ3DAYHCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'Cgs4REhldE9MakFYaw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CHQQ3DAYHCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CHcQjmIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CHQQ3DAYHCITCIaxvuijw4cDFYKL2AUdMloAVQ==\'}}], \'trackingParams\': \'CHQQ3DAYHCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/KUIS6mJgrYkNTaUuCdda7ewat5IFHzGK0hULzV0c0b5BsIeThimuIULKg2IcQemtmPwbDDnOPg=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CHQQ3DAYHCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@LIVCrime\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCzXpAx4v6rFLYXkJZ5nmSvQ\', \'canonicalBaseUrl\': \'/@LIVCrime\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'48 minutes\'}}, \'simpleText\': \'48:00\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CHYQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'8DHetOLjAXk\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CHYQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'8DHetOLjAXk\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CHYQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CHUQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CHUQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'8DHetOLjAXk\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CHUQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'8DHetOLjAXk\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'8DHetOLjAXk\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CHUQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/KUIS6mJgrYkNTaUuCdda7ewat5IFHzGK0hULzV0c0b5BsIeThimuIULKg2IcQemtmPwbDDnOPg=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CHQQ3DAYHCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@LIVCrime\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCzXpAx4v6rFLYXkJZ5nmSvQ\', \'canonicalBaseUrl\': \'/@LIVCrime\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'bkp1RMnVgbU\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/bkp1RMnVgbU/hqdefault.jpg?sqp=-oaymwE8CNIBEHZIWvKriqkDLwgBFQAAAAAYASUAAMhCPQCAokN4AfABAfgB_gmAAtAFigIMCAAQARg6IFsoZTAP&rs=AOn4CLBeJWSQNbgnpHu0b1km2CAUvHpxTA\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/bkp1RMnVgbU/hqdefault.jpg?sqp=-oaymwE9CPYBEIoBSFryq4qpAy8IARUAAAAAGAElAADIQj0AgKJDeAHwAQH4Af4JgALQBYoCDAgAEAEYOiBbKGUwDw==&rs=AOn4CLD6Png04lDo1it6vzMaTxHkheUdLQ\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/bkp1RMnVgbU/hqdefault.jpg?sqp=-oaymwE9CNACELwBSFryq4qpAy8IARUAAAAAGAElAADIQj0AgKJDeAHwAQH4Af4JgALQBYoCDAgAEAEYOiBbKGUwDw==&rs=AOn4CLBPiT7VVGlaQao7kpXAqs_lgQeQlw\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15857400, \'section3Color\': 15200242, \'primaryTitleColor\': 1054489, \'secondaryTitleColor\': 4744816, \'section4Color\': 14543083}, \'darkColorPalette\': {\'section2Color\': 1384998, \'section3Color\': 923161, \'primaryTitleColor\': 15071487, \'secondaryTitleColor\': 10732236, \'section4Color\': 461580}}, \'title\': {\'runs\': [{\'text\': "CLIMBING TO THE TOP, BUT WE\'RE CHAINED TOGETHER"}], \'accessibility\': {\'accessibilityData\': {\'label\': "CLIMBING TO THE TOP, BUT WE\'RE CHAINED TOGETHER by Ujjwal 2,878,115 views 4 days ago 46 minutes"}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': "CLIMBING TO THE TOP, BUT WE\'RE CHAINED TOGETHER\\n#ujjwal #technogamerz \\n\\nShare, Support, Subscribe!!!\\nSubscribe: http://bit.ly/ujjwalgamer\\nDiscord : https://bitly.com/ujjwaldiscord\\nYoutube:..."}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Ujjwal\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CG8Q3DAYHSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@UjjwalGamer\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCl_vAxZpvbO-PFXdDu7EdHw\', \'canonicalBaseUrl\': \'/@UjjwalGamer\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'4 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'46 minutes, 57 seconds\'}}, \'simpleText\': \'46:57\'}, \'viewCountText\': {\'simpleText\': \'2,878,115 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CG8Q3DAYHSITCIaxvuijw4cDFYKL2AUdMloAVTIGZy1oaWdoWgpGRXRyZW5kaW5nmgEHEPLwBRjkAw==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=bkp1RMnVgbU\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'bkp1RMnVgbU\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr2---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=6e4a7544c9d581b5&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CG8Q3DAYHSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Ujjwal\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CG8Q3DAYHSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@UjjwalGamer\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCl_vAxZpvbO-PFXdDu7EdHw\', \'canonicalBaseUrl\': \'/@UjjwalGamer\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Ujjwal\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CG8Q3DAYHSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@UjjwalGamer\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCl_vAxZpvbO-PFXdDu7EdHw\', \'canonicalBaseUrl\': \'/@UjjwalGamer\'}}}]}, \'trackingParams\': \'CG8Q3DAYHSITCIaxvuijw4cDFYKL2AUdMloAVUC1g9bOzKidpW4=\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'2.8 million views\'}}, \'simpleText\': \'2.8M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CHMQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CHMQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'bkp1RMnVgbU\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CHMQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'bkp1RMnVgbU\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'bkp1RMnVgbU\']}}]}}, \'trackingParams\': \'CHMQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CG8Q3DAYHSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'Cgtia3AxUk1uVmdiVQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CG8Q3DAYHSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CHIQjmIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CG8Q3DAYHSITCIaxvuijw4cDFYKL2AUdMloAVQ==\'}}], \'trackingParams\': \'CG8Q3DAYHSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_lyELJ0LIqRHvTpOle1dqQlSNlLhMmvs0I0vSD5hjihoGI=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CG8Q3DAYHSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@UjjwalGamer\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCl_vAxZpvbO-PFXdDu7EdHw\', \'canonicalBaseUrl\': \'/@UjjwalGamer\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'46 minutes, 57 seconds\'}}, \'simpleText\': \'46:57\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CHEQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'bkp1RMnVgbU\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CHEQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'bkp1RMnVgbU\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CHEQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CHAQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CHAQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'bkp1RMnVgbU\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CHAQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'bkp1RMnVgbU\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'bkp1RMnVgbU\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CHAQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_lyELJ0LIqRHvTpOle1dqQlSNlLhMmvs0I0vSD5hjihoGI=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CG8Q3DAYHSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@UjjwalGamer\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCl_vAxZpvbO-PFXdDu7EdHw\', \'canonicalBaseUrl\': \'/@UjjwalGamer\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'_OKAwz2MsJs\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/_OKAwz2MsJs/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLA4Yl6B4nS7KbUgPDmDw2reND6z2g\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/_OKAwz2MsJs/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLAZACUvz2aSCZ65N9YWQPCTlCR0fg\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/_OKAwz2MsJs/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLC-4FkCv_1w-CceiMZUC5oaykQ1wQ\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15857910, \'section3Color\': 15201007, \'primaryTitleColor\': 1054999, \'secondaryTitleColor\': 4549474, \'section4Color\': 14543848}, \'darkColorPalette\': {\'section2Color\': 1582626, \'section3Color\': 1054999, \'primaryTitleColor\': 15073272, \'secondaryTitleColor\': 10734786, \'section4Color\': 527371}}, \'title\': {\'runs\': [{\'text\': \'Joker: Folie \xc3\x83\\x80 Deux | Official Trailer\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Joker: Folie \xc3\x83\\x80 Deux | Official Trailer by Warner Bros. Pictures 15,926,400 views 2 days ago 2 minutes, 51 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'When you\xc3\xa2\\x80\\x99re smiling, the whole world smiles with you. Joker: Folie \xc3\x83\\x80 Deux \xc3\xa2\\x80\\x93 only in theaters and IMAX, October 4. #JokerMovie #FilmedForIMAX \\n\\nFrom acclaimed writer/director/producer Todd...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Warner Bros. Pictures\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CGoQ3DAYHiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@WarnerBrosPictures\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjmJDM5pRKbUlVIzDYYWb6g\', \'canonicalBaseUrl\': \'/@WarnerBrosPictures\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'2 minutes, 51 seconds\'}}, \'simpleText\': \'2:51\'}, \'viewCountText\': {\'simpleText\': \'15,926,400 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CGoQ3DAYHiITCIaxvuijw4cDFYKL2AUdMloAVTIGZy1oaWdoWgpGRXRyZW5kaW5nmgEHEPLwBRjkAw==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=_OKAwz2MsJs\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'_OKAwz2MsJs\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr1---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=fce280c33d8cb09b&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CGoQ3DAYHiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Warner Bros. Pictures\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CGoQ3DAYHiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@WarnerBrosPictures\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjmJDM5pRKbUlVIzDYYWb6g\', \'canonicalBaseUrl\': \'/@WarnerBrosPictures\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Warner Bros. Pictures\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CGoQ3DAYHiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@WarnerBrosPictures\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjmJDM5pRKbUlVIzDYYWb6g\', \'canonicalBaseUrl\': \'/@WarnerBrosPictures\'}}}]}, \'trackingParams\': \'CGoQ3DAYHiITCIaxvuijw4cDFYKL2AUdMloAVUCb4bLss5ig8fwB\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'15 million views\'}}, \'simpleText\': \'15M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CG4Q_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CG4Q_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'_OKAwz2MsJs\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CG4Q_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'_OKAwz2MsJs\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'_OKAwz2MsJs\']}}]}}, \'trackingParams\': \'CG4Q_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CGoQ3DAYHiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtfT0tBd3oyTXNKcw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CGoQ3DAYHiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CG0QjmIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CGoQ3DAYHiITCIaxvuijw4cDFYKL2AUdMloAVQ==\'}}], \'trackingParams\': \'CGoQ3DAYHiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/CoYiDB8ojHTQvSwr9h8clzpcm85wiFaHroW0MaVgTnDEXAIMxhGlzC5Vwo9N3-z3obfVqc_G62I=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CGoQ3DAYHiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@WarnerBrosPictures\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjmJDM5pRKbUlVIzDYYWb6g\', \'canonicalBaseUrl\': \'/@WarnerBrosPictures\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'2 minutes, 51 seconds\'}}, \'simpleText\': \'2:51\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CGwQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'_OKAwz2MsJs\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CGwQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'_OKAwz2MsJs\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CGwQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CGsQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CGsQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'_OKAwz2MsJs\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CGsQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'_OKAwz2MsJs\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'_OKAwz2MsJs\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CGsQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/CoYiDB8ojHTQvSwr9h8clzpcm85wiFaHroW0MaVgTnDEXAIMxhGlzC5Vwo9N3-z3obfVqc_G62I=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CGoQ3DAYHiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@WarnerBrosPictures\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjmJDM5pRKbUlVIzDYYWb6g\', \'canonicalBaseUrl\': \'/@WarnerBrosPictures\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'eFJN6cJtFpY\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/eFJN6cJtFpY/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLAYgJmTLKTytJxpafybLWVK-G9J2A\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/eFJN6cJtFpY/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLD0Zy8eGSO9kQBs5rmR8q3EtQDMtA\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/eFJN6cJtFpY/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBiYCHtyFJ79TsR8JPQVr6o3pWQQQ\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315121, \'section3Color\': 15919335, \'primaryTitleColor\': 1644054, \'secondaryTitleColor\': 7036509, \'section4Color\': 15458269}, \'darkColorPalette\': {\'section2Color\': 3353900, \'section3Color\': 2498849, \'primaryTitleColor\': 16771301, \'secondaryTitleColor\': 13415601, \'section4Color\': 1644054}}, \'title\': {\'runs\': [{\'text\': \'Big Boss Roasted Vada pav Girl & Carryminati funny Memes\xc3\xb0\\x9f\\x98\\x82\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Big Boss Roasted Vada pav Girl & Carryminati funny Memes\xc3\xb0\\x9f\\x98\\x82 by FUKRA INSAAN LIVE 2,376,547 views 5 days ago 10 minutes, 58 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Follow me on Instagram for updates \xc3\xa2\\x9e\\x9e https://instagram.com/fukra_insaan?igshid=jytojomgh8j4\\n\\nJoin my discord server \xc3\xa2\\x9e\\x9ehttps://discord.gg/Es7PVh4BAK\\n\\nMy twitter \xc3\xa2\\x9e\\x9e https://twitter.com/AbhishekM...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'FUKRA INSAAN LIVE\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CGUQ3DAYHyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@fukrainsaanlive4744\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCi5kSELjaJWmnBKPXkTcxsA\', \'canonicalBaseUrl\': \'/@fukrainsaanlive4744\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'5 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'10 minutes, 58 seconds\'}}, \'simpleText\': \'10:58\'}, \'viewCountText\': {\'simpleText\': \'2,376,547 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CGUQ3DAYHyITCIaxvuijw4cDFYKL2AUdMloAVTIGZy1oaWdoWgpGRXRyZW5kaW5nmgEHEPLwBRjkAw==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=eFJN6cJtFpY\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'eFJN6cJtFpY\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr1---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=78524de9c26d1696&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CGUQ3DAYHyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'FUKRA INSAAN LIVE\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CGUQ3DAYHyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@fukrainsaanlive4744\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCi5kSELjaJWmnBKPXkTcxsA\', \'canonicalBaseUrl\': \'/@fukrainsaanlive4744\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'FUKRA INSAAN LIVE\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CGUQ3DAYHyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@fukrainsaanlive4744\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCi5kSELjaJWmnBKPXkTcxsA\', \'canonicalBaseUrl\': \'/@fukrainsaanlive4744\'}}}]}, \'trackingParams\': \'CGUQ3DAYHyITCIaxvuijw4cDFYKL2AUdMloAVUCWrbSTnL2TqXg=\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'2.3 million views\'}}, \'simpleText\': \'2.3M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CGkQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CGkQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'eFJN6cJtFpY\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CGkQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'eFJN6cJtFpY\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'eFJN6cJtFpY\']}}]}}, \'trackingParams\': \'CGkQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CGUQ3DAYHyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtlRkpONmNKdEZwWQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CGUQ3DAYHyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CGgQjmIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CGUQ3DAYHyITCIaxvuijw4cDFYKL2AUdMloAVQ==\'}}], \'trackingParams\': \'CGUQ3DAYHyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_mgPC0xP59nzugiixK4iKIbmS3r4PIRJdoBFdIsrwsH3GE=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CGUQ3DAYHyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@fukrainsaanlive4744\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCi5kSELjaJWmnBKPXkTcxsA\', \'canonicalBaseUrl\': \'/@fukrainsaanlive4744\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'10 minutes, 58 seconds\'}}, \'simpleText\': \'10:58\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CGcQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'eFJN6cJtFpY\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CGcQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'eFJN6cJtFpY\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CGcQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CGYQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CGYQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'eFJN6cJtFpY\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CGYQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'eFJN6cJtFpY\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'eFJN6cJtFpY\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CGYQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_mgPC0xP59nzugiixK4iKIbmS3r4PIRJdoBFdIsrwsH3GE=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CGUQ3DAYHyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@fukrainsaanlive4744\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCi5kSELjaJWmnBKPXkTcxsA\', \'canonicalBaseUrl\': \'/@fukrainsaanlive4744\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'ow2Jxem9o7E\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/ow2Jxem9o7E/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLCRk2U-u91fOQ_XJgYZ5DRjaITvSQ\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/ow2Jxem9o7E/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLA8r9MKa-zowE38w3z78zW01QHISA\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/ow2Jxem9o7E/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBHQWWuTb7Nz9q_I49Fjy-lbRJbvw\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315377, \'section3Color\': 15919847, \'primaryTitleColor\': 1643280, \'secondaryTitleColor\': 8018767, \'section4Color\': 15458781}, \'darkColorPalette\': {\'section2Color\': 3347463, \'section3Color\': 2494213, \'primaryTitleColor\': 16772325, \'secondaryTitleColor\': 13414051, \'section4Color\': 1640963}}, \'title\': {\'runs\': [{\'text\': \'VIKRANT REDDY | TOP REAL TEAM | TRT\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'VIKRANT REDDY | TOP REAL TEAM | TRT by Top Real Team 5,397,702 views 4 days ago 48 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Download Zupee and win Real cash https://app.adjust.com/1e4efgxa?redirect=https%3A%2F%2Fwww.zupee.com%2F\\n\\nUse Promocode TRT15 to get Rs 15 signup bonus\\n\\n#SadiyonSeIndiaKaApnagame\\n#IndiaKaApnaGame...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Top Real Team\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CGAQ3DAYICITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TopRealTeam\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCodBDtYUuhigSVKksHpYMTw\', \'canonicalBaseUrl\': \'/@TopRealTeam\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'4 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'48 minutes, 42 seconds\'}}, \'simpleText\': \'48:42\'}, \'viewCountText\': {\'simpleText\': \'5,397,702 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CGAQ3DAYICITCIaxvuijw4cDFYKL2AUdMloAVTIGZy1oaWdoWgpGRXRyZW5kaW5nmgEHEPLwBRjkAw==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=ow2Jxem9o7E\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'ow2Jxem9o7E\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr4---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=a30d89c5e9bda3b1&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CGAQ3DAYICITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Top Real Team\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CGAQ3DAYICITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TopRealTeam\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCodBDtYUuhigSVKksHpYMTw\', \'canonicalBaseUrl\': \'/@TopRealTeam\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Top Real Team\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CGAQ3DAYICITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TopRealTeam\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCodBDtYUuhigSVKksHpYMTw\', \'canonicalBaseUrl\': \'/@TopRealTeam\'}}}]}, \'trackingParams\': \'CGAQ3DAYICITCIaxvuijw4cDFYKL2AUdMloAVUCxx_bN3rjihqMB\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'5.3 million views\'}}, \'simpleText\': \'5.3M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CGQQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CGQQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'ow2Jxem9o7E\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CGQQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'ow2Jxem9o7E\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'ow2Jxem9o7E\']}}]}}, \'trackingParams\': \'CGQQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CGAQ3DAYICITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtvdzJKeGVtOW83RQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CGAQ3DAYICITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CGMQjmIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CGAQ3DAYICITCIaxvuijw4cDFYKL2AUdMloAVQ==\'}}], \'trackingParams\': \'CGAQ3DAYICITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_lZi07tDx5ikd7WteiSLk1nWWdAoWEO5Z4HD2ACEcq0Ozw=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CGAQ3DAYICITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TopRealTeam\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCodBDtYUuhigSVKksHpYMTw\', \'canonicalBaseUrl\': \'/@TopRealTeam\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'48 minutes, 42 seconds\'}}, \'simpleText\': \'48:42\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CGIQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'ow2Jxem9o7E\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CGIQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'ow2Jxem9o7E\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CGIQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CGEQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CGEQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'ow2Jxem9o7E\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CGEQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'ow2Jxem9o7E\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'ow2Jxem9o7E\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CGEQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_lZi07tDx5ikd7WteiSLk1nWWdAoWEO5Z4HD2ACEcq0Ozw=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CGAQ3DAYICITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TopRealTeam\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCodBDtYUuhigSVKksHpYMTw\', \'canonicalBaseUrl\': \'/@TopRealTeam\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'ltAbK1EhW3s\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/ltAbK1EhW3s/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLBMDasRYD9NzddtCvuynZZMLwqr5Q\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/ltAbK1EhW3s/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDvTgmSCfAX5a_3mpd-M-_ysV461g\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/ltAbK1EhW3s/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDLkJvzFMmUwSTjUF1Xj_bSunxhNg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315121, \'section3Color\': 15919591, \'primaryTitleColor\': 1643024, \'secondaryTitleColor\': 8018255, \'section4Color\': 15458525}, \'darkColorPalette\': {\'section2Color\': 3346695, \'section3Color\': 2493701, \'primaryTitleColor\': 16772069, \'secondaryTitleColor\': 13413539, \'section4Color\': 1640451}}, \'title\': {\'runs\': [{\'text\': \'Hamster Kombat Withdrawal Successful | Hamster Kombat \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\xc2\xaa\xc3\xa0\xc2\xa5\\x88\xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa4\xc2\xbe \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa5\\x88\xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa5\\x87 Withdraw \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xb0\xc3\xa0\xc2\xa5\\x87 ?\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Hamster Kombat Withdrawal Successful | Hamster Kombat \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\xc2\xaa\xc3\xa0\xc2\xa5\\x88\xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa4\xc2\xbe \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa5\\x88\xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa5\\x87 Withdraw \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xb0\xc3\xa0\xc2\xa5\\x87 ? by Manoj Dey 448,946 views 2 days ago 6 minutes, 33 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Joining Link - https://t.me/hamstEr_kombat_bot/start?startapp=kentId5325436803\\n\\nPart 1 Video - https://youtu.be/EC0djBtl4Vg?si=U_hMeMJ-k6AFog93\\n\\nFOLLOW ME ON:\\n\xc3\xb0\\x9f\\x93\xc2\xb8 Instagram: https://instagram.com/...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Manoj Dey\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CFsQ3DAYISITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ManojDey\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCT2xzagsBVtStUCA2ulvKmQ\', \'canonicalBaseUrl\': \'/@ManojDey\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'6 minutes, 33 seconds\'}}, \'simpleText\': \'6:33\'}, \'viewCountText\': {\'simpleText\': \'448,946 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CFsQ3DAYISITCIaxvuijw4cDFYKL2AUdMloAVTIGZy1oaWdoWgpGRXRyZW5kaW5nmgEHEPLwBRjkAw==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=ltAbK1EhW3s\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'ltAbK1EhW3s\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr3---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=96d01b2b51215b7b&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CFsQ3DAYISITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Manoj Dey\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CFsQ3DAYISITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ManojDey\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCT2xzagsBVtStUCA2ulvKmQ\', \'canonicalBaseUrl\': \'/@ManojDey\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Manoj Dey\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CFsQ3DAYISITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ManojDey\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCT2xzagsBVtStUCA2ulvKmQ\', \'canonicalBaseUrl\': \'/@ManojDey\'}}}]}, \'trackingParams\': \'CFsQ3DAYISITCIaxvuijw4cDFYKL2AUdMloAVUD7toWJteWG6JYB\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'448K views\'}}, \'simpleText\': \'448K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CF8Q_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CF8Q_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'ltAbK1EhW3s\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CF8Q_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'ltAbK1EhW3s\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'ltAbK1EhW3s\']}}]}}, \'trackingParams\': \'CF8Q_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CFsQ3DAYISITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtsdEFiSzFFaFczcw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CFsQ3DAYISITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CF4QjmIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CFsQ3DAYISITCIaxvuijw4cDFYKL2AUdMloAVQ==\'}}], \'trackingParams\': \'CFsQ3DAYISITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_lLkEfWaXwrWypl4d7tEWiz-s8JzPSqKvXGn25qh9IgNF0=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CFsQ3DAYISITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ManojDey\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCT2xzagsBVtStUCA2ulvKmQ\', \'canonicalBaseUrl\': \'/@ManojDey\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'6 minutes, 33 seconds\'}}, \'simpleText\': \'6:33\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CF0Q-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'ltAbK1EhW3s\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CF0Q-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'ltAbK1EhW3s\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CF0Q-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CFwQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CFwQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'ltAbK1EhW3s\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CFwQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'ltAbK1EhW3s\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'ltAbK1EhW3s\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CFwQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_lLkEfWaXwrWypl4d7tEWiz-s8JzPSqKvXGn25qh9IgNF0=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CFsQ3DAYISITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@ManojDey\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCT2xzagsBVtStUCA2ulvKmQ\', \'canonicalBaseUrl\': \'/@ManojDey\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'xEz1bZIm4Dw\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/xEz1bZIm4Dw/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLD6D7gdawqhrS6-EqmrVrt-hfoE1A\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/xEz1bZIm4Dw/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDveq-EApFRq3j00tMBGGVHW4HmVA\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/xEz1bZIm4Dw/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBwjNjrvFWkPtPEbLAh5Krz44DduA\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16314866, \'section3Color\': 15919080, \'primaryTitleColor\': 1642513, \'secondaryTitleColor\': 8344152, \'section4Color\': 15457759}, \'darkColorPalette\': {\'section2Color\': 3344654, \'section3Color\': 2492171, \'primaryTitleColor\': 16770536, \'secondaryTitleColor\': 13411240, \'section4Color\': 1639431}}, \'title\': {\'runs\': [{\'text\': "Dholahat Incident: Youth\'s Death After Release from Police Custody Spark Tension | Sangbad Pratidin"}], \'accessibility\': {\'accessibilityData\': {\'label\': "Dholahat Incident: Youth\'s Death After Release from Police Custody Spark Tension | Sangbad Pratidin by Sangbad Pratidin 1,005,226 views 2 weeks ago 4 minutes, 26 seconds"}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': "Dholahat Incident: \xc3\xa0\xc2\xa6\\x9a\xc3\xa0\xc2\xa7\\x8b\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\xc2\xb8\xc3\xa0\xc2\xa6\xc2\xa8\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\xc2\xa6\xc3\xa0\xc2\xa7\\x87\xc3\xa0\xc2\xa6\xc2\xb9\xc3\xa0\xc2\xa7\\x87 \xc3\xa0\xc2\xa6\xc2\xab\xc3\xa0\xc2\xa7\\x87\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\xc2\xaa\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\\x9f\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\xc2\xaf\xc3\xa0\xc2\xa6\xc2\xbc\xc3\xa0\xc2\xa7\\x87 \xc3\xa0\xc2\xa6\\x96\xc3\xa0\xc2\xa7\\x81\xc3\xa0\xc2\xa6\xc2\xa8! \xc3\xa0\xc2\xa6\xc2\xa2\xc3\xa0\xc2\xa7\\x8b\xc3\xa0\xc2\xa6\xc2\xb2\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xb9\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\\x9f\xc3\xa0\xc2\xa7\\x87 \'\xc3\xa0\xc2\xa6\xc2\xaa\xc3\xa0\xc2\xa7\\x81\xc3\xa0\xc2\xa6\xc2\xb2\xc3\xa0\xc2\xa6\xc2\xbf\xc3\xa0\xc2\xa6\xc2\xb6\xc3\xa0\xc2\xa7\\x87\xc3\xa0\xc2\xa6\xc2\xb0 \xc3\xa0\xc2\xa6\xc2\xae\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\xc2\xb0\xc3\xa0\xc2\xa7\\x87\' \xc3\xa0\xc2\xa6\xc2\xae\xc3\xa0\xc2\xa7\\x83\xc3\xa0\xc2\xa6\xc2\xa4 \xc3\xa0\xc2\xa6\xc2\xaf\xc3\xa0\xc2\xa7\\x81\xc3\xa0\xc2\xa6\xc2\xac\xc3\xa0\xc2\xa6\\x95\xc3\xa0\xc2\xa5\xc2\xa4 \xc3\xa0\xc2\xa6\\x9a\xc3\xa0\xc2\xa6\xc2\xbe\xc3\xa0\xc2\xa6\\x9e\xc3\xa0\xc2\xa7\\x8d\xc3\xa0\xc2\xa6\\x9a\xc3\xa0\xc2\xa6\xc2\xb2..."}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Sangbad Pratidin\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CFYQ3DAYIiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SangbadPratidin\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCLPCvTftdZpZQSM-mckfqXQ\', \'canonicalBaseUrl\': \'/@SangbadPratidin\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 weeks ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'4 minutes, 26 seconds\'}}, \'simpleText\': \'4:26\'}, \'viewCountText\': {\'simpleText\': \'1,005,226 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CFYQ3DAYIiITCIaxvuijw4cDFYKL2AUdMloAVTIGZy1oaWdoWgpGRXRyZW5kaW5nmgEHEPLwBRjkAw==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=xEz1bZIm4Dw\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'xEz1bZIm4Dw\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr1---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=c44cf56d9226e03c&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CFYQ3DAYIiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Sangbad Pratidin\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CFYQ3DAYIiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SangbadPratidin\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCLPCvTftdZpZQSM-mckfqXQ\', \'canonicalBaseUrl\': \'/@SangbadPratidin\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Sangbad Pratidin\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CFYQ3DAYIiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SangbadPratidin\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCLPCvTftdZpZQSM-mckfqXQ\', \'canonicalBaseUrl\': \'/@SangbadPratidin\'}}}]}, \'trackingParams\': \'CFYQ3DAYIiITCIaxvuijw4cDFYKL2AUdMloAVUC8wJuR2a29psQB\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'1 million views\'}}, \'simpleText\': \'1M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CFoQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CFoQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'xEz1bZIm4Dw\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CFoQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'xEz1bZIm4Dw\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'xEz1bZIm4Dw\']}}]}}, \'trackingParams\': \'CFoQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CFYQ3DAYIiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'Cgt4RXoxYlpJbTREdw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CFYQ3DAYIiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CFkQjmIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CFYQ3DAYIiITCIaxvuijw4cDFYKL2AUdMloAVQ==\'}}], \'trackingParams\': \'CFYQ3DAYIiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_minbJIhJspwyQQfZwq2XPJyzKMZ5dobhPnR5D5yrF3VkY=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CFYQ3DAYIiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SangbadPratidin\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCLPCvTftdZpZQSM-mckfqXQ\', \'canonicalBaseUrl\': \'/@SangbadPratidin\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'4 minutes, 26 seconds\'}}, \'simpleText\': \'4:26\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CFgQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'xEz1bZIm4Dw\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CFgQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'xEz1bZIm4Dw\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CFgQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CFcQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CFcQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'xEz1bZIm4Dw\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CFcQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'xEz1bZIm4Dw\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'xEz1bZIm4Dw\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CFcQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_minbJIhJspwyQQfZwq2XPJyzKMZ5dobhPnR5D5yrF3VkY=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CFYQ3DAYIiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@SangbadPratidin\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCLPCvTftdZpZQSM-mckfqXQ\', \'canonicalBaseUrl\': \'/@SangbadPratidin\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'gcNmzgE1XWo\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/gcNmzgE1XWo/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLAKc6qCFr1c0wnOvXdS6b63wyLThw\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/gcNmzgE1XWo/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBse0VUjTXKaBjiSgwJGV9DbNPo_w\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/gcNmzgE1XWo/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLC5jc0dQ1mi63rD6YMR5xJpfrJRlA\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15987192, \'section3Color\': 15460338, \'primaryTitleColor\': 1249305, \'secondaryTitleColor\': 6706820, \'section4Color\': 14867947}, \'darkColorPalette\': {\'section2Color\': 1773107, \'section3Color\': 1313574, \'primaryTitleColor\': 15656447, \'secondaryTitleColor\': 11641804, \'section4Color\': 853785}}, \'title\': {\'runs\': [{\'text\': \'Blockbuster or Disaster? | Budget 2024 EXPLAINED in just 15 minutes\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Blockbuster or Disaster? | Budget 2024 EXPLAINED in just 15 minutes by Labour Law Advisor 630,261 views 2 days ago 16 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\xc3\xa2\\x96\\x80\\nBuy Health Insurance: https://health.lla.in\\nBuy Term Insurance: https://term.lla.in\\n\\nHax to Save Tax Courses by LLA:...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Labour Law Advisor\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CFEQ3DAYIyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@LabourLawAdvisor\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCVOTBwF0vnSxMRIbfSE_K_g\', \'canonicalBaseUrl\': \'/@LabourLawAdvisor\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'16 minutes, 31 seconds\'}}, \'simpleText\': \'16:31\'}, \'viewCountText\': {\'simpleText\': \'630,261 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CFEQ3DAYIyITCIaxvuijw4cDFYKL2AUdMloAVTIGZy1oaWdoWgpGRXRyZW5kaW5nmgEHEPLwBRjkAw==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=gcNmzgE1XWo\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'gcNmzgE1XWo\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr5---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=81c366ce01355d6a&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CFEQ3DAYIyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Labour Law Advisor\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CFEQ3DAYIyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@LabourLawAdvisor\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCVOTBwF0vnSxMRIbfSE_K_g\', \'canonicalBaseUrl\': \'/@LabourLawAdvisor\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Labour Law Advisor\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CFEQ3DAYIyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@LabourLawAdvisor\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCVOTBwF0vnSxMRIbfSE_K_g\', \'canonicalBaseUrl\': \'/@LabourLawAdvisor\'}}}]}, \'trackingParams\': \'CFEQ3DAYIyITCIaxvuijw4cDFYKL2AUdMloAVUDqutWJ4NnZ4YEB\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'630K views\'}}, \'simpleText\': \'630K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CFUQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CFUQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'gcNmzgE1XWo\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CFUQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'gcNmzgE1XWo\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'gcNmzgE1XWo\']}}]}}, \'trackingParams\': \'CFUQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CFEQ3DAYIyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtnY05temdFMVhXbw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CFEQ3DAYIyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CFQQjmIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CFEQ3DAYIyITCIaxvuijw4cDFYKL2AUdMloAVQ==\'}}], \'trackingParams\': \'CFEQ3DAYIyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/CVvE7vApeq2jgHhty_LsDBVJPnp-msvs7r3spAZo_14T_nBqd1CWTjhUdjg1TTAztO7MOxu2=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CFEQ3DAYIyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@LabourLawAdvisor\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCVOTBwF0vnSxMRIbfSE_K_g\', \'canonicalBaseUrl\': \'/@LabourLawAdvisor\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'16 minutes, 31 seconds\'}}, \'simpleText\': \'16:31\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CFMQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'gcNmzgE1XWo\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CFMQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'gcNmzgE1XWo\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CFMQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CFIQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CFIQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'gcNmzgE1XWo\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CFIQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'gcNmzgE1XWo\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'gcNmzgE1XWo\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CFIQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/CVvE7vApeq2jgHhty_LsDBVJPnp-msvs7r3spAZo_14T_nBqd1CWTjhUdjg1TTAztO7MOxu2=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CFEQ3DAYIyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@LabourLawAdvisor\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCVOTBwF0vnSxMRIbfSE_K_g\', \'canonicalBaseUrl\': \'/@LabourLawAdvisor\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'PiRW6KOaM5c\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/PiRW6KOaM5c/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLCvgtbocfLGslpt2oYMClaHbAVu2Q\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/PiRW6KOaM5c/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDhxs0rgzt4kZX1ZaODSRMA_OI8pg\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/PiRW6KOaM5c/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLA6FHWyfqI-gXs0iDkedbKWIg0iGg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15856888, \'section3Color\': 15199474, \'primaryTitleColor\': 1316377, \'secondaryTitleColor\': 5858160, \'section4Color\': 14542059}, \'darkColorPalette\': {\'section2Color\': 2633011, \'section3Color\': 1974566, \'primaryTitleColor\': 15069695, \'secondaryTitleColor\': 10728908, \'section4Color\': 1316377}}, \'title\': {\'runs\': [{\'text\': \'CABBAGE with EGGS | Vegetables with Egg Recipe Cooking in Village | Quick and Easy Omelette Recipe\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'CABBAGE with EGGS | Vegetables with Egg Recipe Cooking in Village | Quick and Easy Omelette Recipe by Village Cooking Channel 2,153,456 views 1 day ago 9 minutes, 41 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'We add an egg to the cabbage to make this delicious recipe. We use some fresh vegetables and cabbage, mix them together, and cook them in a big hot vessel. This is the trending omelet recipe...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Village Cooking Channel\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CEwQ3DAYJCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@VillageCookingChannel\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCk3JZr7eS3pg5AGEvBdEvFg\', \'canonicalBaseUrl\': \'/@VillageCookingChannel\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'1 day ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'9 minutes, 41 seconds\'}}, \'simpleText\': \'9:41\'}, \'viewCountText\': {\'simpleText\': \'2,153,456 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CEwQ3DAYJCITCIaxvuijw4cDFYKL2AUdMloAVTIGZy1oaWdoWgpGRXRyZW5kaW5nmgEHEPLwBRjkAw==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=PiRW6KOaM5c\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'PiRW6KOaM5c\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr5---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=3e2456e8a39a3397&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CEwQ3DAYJCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Village Cooking Channel\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CEwQ3DAYJCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@VillageCookingChannel\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCk3JZr7eS3pg5AGEvBdEvFg\', \'canonicalBaseUrl\': \'/@VillageCookingChannel\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Village Cooking Channel\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CEwQ3DAYJCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@VillageCookingChannel\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCk3JZr7eS3pg5AGEvBdEvFg\', \'canonicalBaseUrl\': \'/@VillageCookingChannel\'}}}]}, \'trackingParams\': \'CEwQ3DAYJCITCIaxvuijw4cDFYKL2AUdMloAVUCX5-icit2Vkj4=\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'2.1 million views\'}}, \'simpleText\': \'2.1M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CFAQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CFAQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'PiRW6KOaM5c\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CFAQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'PiRW6KOaM5c\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'PiRW6KOaM5c\']}}]}}, \'trackingParams\': \'CFAQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CEwQ3DAYJCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtQaVJXNktPYU01Yw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CEwQ3DAYJCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CE8QjmIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CEwQ3DAYJCITCIaxvuijw4cDFYKL2AUdMloAVQ==\'}}], \'trackingParams\': \'CEwQ3DAYJCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/4eEETdAR33227A9KRhQ1T4P2NyYReiZKMeaN_rZ8QZ1LSCLUudaggLhZ1C40RkDyw6SejAmW=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CEwQ3DAYJCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@VillageCookingChannel\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCk3JZr7eS3pg5AGEvBdEvFg\', \'canonicalBaseUrl\': \'/@VillageCookingChannel\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'9 minutes, 41 seconds\'}}, \'simpleText\': \'9:41\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CE4Q-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'PiRW6KOaM5c\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CE4Q-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'PiRW6KOaM5c\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CE4Q-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CE0Qx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CE0Qx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'PiRW6KOaM5c\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CE0Qx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'PiRW6KOaM5c\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'PiRW6KOaM5c\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CE0Qx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/4eEETdAR33227A9KRhQ1T4P2NyYReiZKMeaN_rZ8QZ1LSCLUudaggLhZ1C40RkDyw6SejAmW=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CEwQ3DAYJCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@VillageCookingChannel\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCk3JZr7eS3pg5AGEvBdEvFg\', \'canonicalBaseUrl\': \'/@VillageCookingChannel\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'FRCIvHBY2gI\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/FRCIvHBY2gI/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLB8gd_5wftn4nBu5PgmbzRhbZ55bQ\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/FRCIvHBY2gI/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLA5FN8dV9kuSpzvE1tqq2IqLHA7sg\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/FRCIvHBY2gI/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLAI4vXGigeraU6COfuLdctydnjyAQ\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315121, \'section3Color\': 15919335, \'primaryTitleColor\': 1642768, \'secondaryTitleColor\': 8345682, \'section4Color\': 15458269}, \'darkColorPalette\': {\'section2Color\': 3347215, \'section3Color\': 2493963, \'primaryTitleColor\': 16771301, \'secondaryTitleColor\': 13412515, \'section4Color\': 1640711}}, \'title\': {\'runs\': [{\'text\': \'Saindhav (2024) New Released Full Hindi Dubbed Action Movie | Venkatesh, Nawazuddin, Arya, Shradha\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Saindhav (2024) New Released Full Hindi Dubbed Action Movie | Venkatesh, Nawazuddin, Arya, Shradha by RKD Studios 46,364,055 views 3 weeks ago 2 hours, 10 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Check out Our Blockbuster Action Thriller Movie "SAINDHAV". It is the Hindi dubbed version of the Telugu Blockbuster Movie "SAINDHAV". The film stars Venkatesh Daggubati, Nawazuddin Siddiqui,...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'RKD Studios\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CEcQ3DAYJSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@rkddigital\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjBwQ6M9QyCgO5Pp-TQRFUA\', \'canonicalBaseUrl\': \'/@rkddigital\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'3 weeks ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'2 hours, 10 minutes, 54 seconds\'}}, \'simpleText\': \'2:10:54\'}, \'viewCountText\': {\'simpleText\': \'46,364,055 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CEcQ3DAYJSITCIaxvuijw4cDFYKL2AUdMloAVTIGZy1oaWdoWgpGRXRyZW5kaW5nmgEHEPLwBRjkAw==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=FRCIvHBY2gI\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'FRCIvHBY2gI\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr3---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=151088bc7058da02&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CEcQ3DAYJSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'RKD Studios\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CEcQ3DAYJSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@rkddigital\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjBwQ6M9QyCgO5Pp-TQRFUA\', \'canonicalBaseUrl\': \'/@rkddigital\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'RKD Studios\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CEcQ3DAYJSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@rkddigital\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjBwQ6M9QyCgO5Pp-TQRFUA\', \'canonicalBaseUrl\': \'/@rkddigital\'}}}]}, \'trackingParams\': \'CEcQ3DAYJSITCIaxvuijw4cDFYKL2AUdMloAVUCCtOOCx5eiiBU=\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'46 million views\'}}, \'simpleText\': \'46M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CEsQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CEsQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'FRCIvHBY2gI\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CEsQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'FRCIvHBY2gI\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'FRCIvHBY2gI\']}}]}}, \'trackingParams\': \'CEsQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CEcQ3DAYJSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtGUkNJdkhCWTJnSQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CEcQ3DAYJSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CEoQjmIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CEcQ3DAYJSITCIaxvuijw4cDFYKL2AUdMloAVQ==\'}}], \'trackingParams\': \'CEcQ3DAYJSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/JxO-AGHTUPTCU_Irgbhchh0_5sYjE_AZYX2bPtsaEug68dUXiIrIAFqNOjI9VrxZv262sU4hpQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CEcQ3DAYJSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@rkddigital\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjBwQ6M9QyCgO5Pp-TQRFUA\', \'canonicalBaseUrl\': \'/@rkddigital\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'2 hours, 10 minutes, 54 seconds\'}}, \'simpleText\': \'2:10:54\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CEkQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'FRCIvHBY2gI\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CEkQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'FRCIvHBY2gI\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CEkQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CEgQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CEgQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'FRCIvHBY2gI\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CEgQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'FRCIvHBY2gI\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'FRCIvHBY2gI\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CEgQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/JxO-AGHTUPTCU_Irgbhchh0_5sYjE_AZYX2bPtsaEug68dUXiIrIAFqNOjI9VrxZv262sU4hpQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CEcQ3DAYJSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@rkddigital\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCjBwQ6M9QyCgO5Pp-TQRFUA\', \'canonicalBaseUrl\': \'/@rkddigital\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'7yTGYCrDBbs\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/7yTGYCrDBbs/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLAm6y7dBLciBXIBVeh9inb5NxvghQ\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/7yTGYCrDBbs/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLAAH5LnCTzSQ9tfp-S7o9VVEYjzVw\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/7yTGYCrDBbs/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLAd8ipe849j0aXhvSRYgP6i_-81Ww\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15856888, \'section3Color\': 15199474, \'primaryTitleColor\': 1250841, \'secondaryTitleColor\': 5530224, \'section4Color\': 14542059}, \'darkColorPalette\': {\'section2Color\': 2501683, \'section3Color\': 1843494, \'primaryTitleColor\': 15069951, \'secondaryTitleColor\': 10729420, \'section4Color\': 1250841}}, \'title\': {\'runs\': [{\'text\': \'Washing My Tractors and Vehicles in Dam | JCB 3DX | Tata Truck | Mahindra Arjun 605 | Swaraj 744\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Washing My Tractors and Vehicles in Dam | JCB 3DX | Tata Truck | Mahindra Arjun 605 | Swaraj 744 by MD JCB XPERT 597,507 views 3 days ago 20 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'LIKE || SHARE || SUBSCRIBE\\n=======================\\n\\n_____________________________________________________\\n\\nFollow us on - YouTube / MD JCB XPERT\\nInstagram :-https://www.instagram.com/mdjcb.xpert/...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'MD JCB XPERT\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CEIQ3DAYJiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@MDJCBXPERT\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC0S4TBEsQgiyMJaZ5z1w_Mw\', \'canonicalBaseUrl\': \'/@MDJCBXPERT\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'3 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'20 minutes, 12 seconds\'}}, \'simpleText\': \'20:12\'}, \'viewCountText\': {\'simpleText\': \'597,507 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CEIQ3DAYJiITCIaxvuijw4cDFYKL2AUdMloAVTIGZy1oaWdoWgpGRXRyZW5kaW5nmgEHEPLwBRjkAw==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=7yTGYCrDBbs\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'7yTGYCrDBbs\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr3---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=ef24c6602ac305bb&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CEIQ3DAYJiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'MD JCB XPERT\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CEIQ3DAYJiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@MDJCBXPERT\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC0S4TBEsQgiyMJaZ5z1w_Mw\', \'canonicalBaseUrl\': \'/@MDJCBXPERT\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'MD JCB XPERT\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CEIQ3DAYJiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@MDJCBXPERT\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC0S4TBEsQgiyMJaZ5z1w_Mw\', \'canonicalBaseUrl\': \'/@MDJCBXPERT\'}}}]}, \'trackingParams\': \'CEIQ3DAYJiITCIaxvuijw4cDFYKL2AUdMloAVUC7i4zWgsyxku8B\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'597K views\'}}, \'simpleText\': \'597K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CEYQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CEYQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'7yTGYCrDBbs\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CEYQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'7yTGYCrDBbs\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'7yTGYCrDBbs\']}}]}}, \'trackingParams\': \'CEYQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CEIQ3DAYJiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'Cgs3eVRHWUNyREJicw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CEIQ3DAYJiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CEUQjmIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CEIQ3DAYJiITCIaxvuijw4cDFYKL2AUdMloAVQ==\'}}], \'trackingParams\': \'CEIQ3DAYJiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_k5gYNYLjIQLJj8V3O6z6IGuQyCnFuqLe8TY_uG-Lh05zE=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CEIQ3DAYJiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@MDJCBXPERT\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC0S4TBEsQgiyMJaZ5z1w_Mw\', \'canonicalBaseUrl\': \'/@MDJCBXPERT\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'20 minutes, 12 seconds\'}}, \'simpleText\': \'20:12\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CEQQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'7yTGYCrDBbs\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CEQQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'7yTGYCrDBbs\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CEQQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CEMQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CEMQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'7yTGYCrDBbs\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CEMQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'7yTGYCrDBbs\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'7yTGYCrDBbs\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CEMQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_k5gYNYLjIQLJj8V3O6z6IGuQyCnFuqLe8TY_uG-Lh05zE=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CEIQ3DAYJiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@MDJCBXPERT\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UC0S4TBEsQgiyMJaZ5z1w_Mw\', \'canonicalBaseUrl\': \'/@MDJCBXPERT\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'IOpjcKzqNhs\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/IOpjcKzqNhs/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLDMx97AqGSUDO6kyOBdbZQ1pipohQ\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/IOpjcKzqNhs/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLB11YfzWFW5LyC3WoLURqHyya-sjw\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/IOpjcKzqNhs/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCosQlFd7mulTNaespa7IIWAHR8lA\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16250871, \'section3Color\': 15724527, \'primaryTitleColor\': 1644825, \'secondaryTitleColor\': 6645093, \'section4Color\': 15263976}, \'darkColorPalette\': {\'section2Color\': 3355443, \'section3Color\': 2500134, \'primaryTitleColor\': 16777215, \'secondaryTitleColor\': 13421772, \'section4Color\': 1644825}}, \'title\': {\'runs\': [{\'text\': \'What Villager Hide in His Inventory in Minecraft\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'What Villager Hide in His Inventory in Minecraft by Adi-Spot 512,262 views 2 days ago 10 minutes, 33 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'What Villager Hide in His Inventory in Minecraft\\n\\n\\nMy Second Channel @Blazzy... \\n\\n\xc3\xa2\\x96\xc2\xac\xc3\xa2\\x96\xc2\xac\xc3\xa2\\x96\xc2\xac\xc3\xa2\\x96\xc2\xac\xc3\xa2\\x96\xc2\xac\xc3\xa2\\x96\xc2\xac\xc3\xa2\\x96\xc2\xac\xc3\xa2\\x96\xc2\xac\xc3\xa2\\x96\xc2\xac\xc3\xa2\\x96\xc2\xac\xc3\xa2\\x96\xc2\xac\xc3\xa2\\x96\xc2\xac\xc3\xa2\\x96\xc2\xac\\nSocial Media :\\n\\nFollow karlo jaldi sai :)\\nhttps://www.instagram.com/adisp...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Adi-Spot\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CD0Q3DAYJyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AdiSpot\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCxm-rmArnUkNc-Lpf5s6X8g\', \'canonicalBaseUrl\': \'/@AdiSpot\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'2 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'10 minutes, 33 seconds\'}}, \'simpleText\': \'10:33\'}, \'viewCountText\': {\'simpleText\': \'512,262 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CD0Q3DAYJyITCIaxvuijw4cDFYKL2AUdMloAVTIGZy1oaWdoWgpGRXRyZW5kaW5nmgEHEPLwBRjkAw==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=IOpjcKzqNhs\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'IOpjcKzqNhs\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr1---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=20ea6370acea361b&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CD0Q3DAYJyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Adi-Spot\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CD0Q3DAYJyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AdiSpot\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCxm-rmArnUkNc-Lpf5s6X8g\', \'canonicalBaseUrl\': \'/@AdiSpot\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Adi-Spot\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CD0Q3DAYJyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AdiSpot\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCxm-rmArnUkNc-Lpf5s6X8g\', \'canonicalBaseUrl\': \'/@AdiSpot\'}}}]}, \'trackingParams\': \'CD0Q3DAYJyITCIaxvuijw4cDFYKL2AUdMloAVUCb7Kjniu6Y9SA=\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'512K views\'}}, \'simpleText\': \'512K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CEEQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CEEQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'IOpjcKzqNhs\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CEEQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'IOpjcKzqNhs\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'IOpjcKzqNhs\']}}]}}, \'trackingParams\': \'CEEQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CD0Q3DAYJyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtJT3BqY0t6cU5ocw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CD0Q3DAYJyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CEAQjmIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CD0Q3DAYJyITCIaxvuijw4cDFYKL2AUdMloAVQ==\'}}], \'trackingParams\': \'CD0Q3DAYJyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/5AIANn5GsWevl-bEfnSJ09z3HFEx2S1amog17T671BiKyfVAXd2AYIbc3BPTXO4hKmiSxqIY=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CD0Q3DAYJyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AdiSpot\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCxm-rmArnUkNc-Lpf5s6X8g\', \'canonicalBaseUrl\': \'/@AdiSpot\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'10 minutes, 33 seconds\'}}, \'simpleText\': \'10:33\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CD8Q-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'IOpjcKzqNhs\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CD8Q-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'IOpjcKzqNhs\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CD8Q-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CD4Qx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CD4Qx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'IOpjcKzqNhs\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CD4Qx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'IOpjcKzqNhs\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'IOpjcKzqNhs\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CD4Qx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/5AIANn5GsWevl-bEfnSJ09z3HFEx2S1amog17T671BiKyfVAXd2AYIbc3BPTXO4hKmiSxqIY=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CD0Q3DAYJyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AdiSpot\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCxm-rmArnUkNc-Lpf5s6X8g\', \'canonicalBaseUrl\': \'/@AdiSpot\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'BGy3EbyMmfU\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/BGy3EbyMmfU/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLANaPz-S7yPj_0gpt74Jnmo4aB3bQ\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/BGy3EbyMmfU/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCWOSbIOIm-8zP_l3B_nwTl7_wvAw\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/BGy3EbyMmfU/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCK3ed30bLtK6BzXQi3QpC9qSBbHg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315889, \'section3Color\': 15920615, \'primaryTitleColor\': 1644307, \'secondaryTitleColor\': 7037009, \'section4Color\': 15460061}, \'darkColorPalette\': {\'section2Color\': 2630687, \'section3Color\': 1644307, \'primaryTitleColor\': 16774373, \'secondaryTitleColor\': 13417379, \'section4Color\': 789257}}, \'title\': {\'runs\': [{\'text\': \'Sawan Somvar Vrat Katha : \xc3\xa0\xc2\xa4\\x86\xc3\xa0\xc2\xa4\\x9c \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\xc2\xa6\xc3\xa0\xc2\xa4\xc2\xbf\xc3\xa0\xc2\xa4\xc2\xa8 \xc3\xa0\xc2\xa4\xc2\xaf\xc3\xa0\xc2\xa4\xc2\xb9 \xc3\xa0\xc2\xa4\\x9a\xc3\xa0\xc2\xa4\xc2\xae\xc3\xa0\xc2\xa4\xc2\xa4\xc3\xa0\xc2\xa5\\x8d\xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xbe\xc3\xa0\xc2\xa4\xc2\xb0\xc3\xa0\xc2\xa5\\x80 \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xa5\xc3\xa0\xc2\xa4\xc2\xbe \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa5\\x81\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\\xad\xc3\xa0\xc2\xa5\\x8b\xc3\xa0\xc2\xa4\xc2\xb2\xc3\xa0\xc2\xa5\\x87\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa4\xc2\xbe\xc3\xa0\xc2\xa4\xc2\xa5 \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa4\\xad\xc3\xa0\xc2\xa5\\x80 \xc3\xa0\xc2\xa4\xc2\xae\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa5\\x8b\xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xbe\xc3\xa0\xc2\xa4\xc2\xae\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa4\xc2\xbe \xc3\xa0\xc2\xa4\xc2\xaa\xc3\xa0\xc2\xa5\\x82\xc3\xa0\xc2\xa4\xc2\xb0\xc3\xa0\xc2\xa5\\x8d\xc3\xa0\xc2\xa4\xc2\xa3 \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xb0\xc3\xa0\xc2\xa4\xc2\xa4\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\xc2\xb9\xc3\xa0\xc2\xa5\\x88\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Sawan Somvar Vrat Katha : \xc3\xa0\xc2\xa4\\x86\xc3\xa0\xc2\xa4\\x9c \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\xc2\xa6\xc3\xa0\xc2\xa4\xc2\xbf\xc3\xa0\xc2\xa4\xc2\xa8 \xc3\xa0\xc2\xa4\xc2\xaf\xc3\xa0\xc2\xa4\xc2\xb9 \xc3\xa0\xc2\xa4\\x9a\xc3\xa0\xc2\xa4\xc2\xae\xc3\xa0\xc2\xa4\xc2\xa4\xc3\xa0\xc2\xa5\\x8d\xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xbe\xc3\xa0\xc2\xa4\xc2\xb0\xc3\xa0\xc2\xa5\\x80 \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xa5\xc3\xa0\xc2\xa4\xc2\xbe \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa5\\x81\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\\xad\xc3\xa0\xc2\xa5\\x8b\xc3\xa0\xc2\xa4\xc2\xb2\xc3\xa0\xc2\xa5\\x87\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa4\xc2\xbe\xc3\xa0\xc2\xa4\xc2\xa5 \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa4\\xad\xc3\xa0\xc2\xa5\\x80 \xc3\xa0\xc2\xa4\xc2\xae\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa5\\x8b\xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xbe\xc3\xa0\xc2\xa4\xc2\xae\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa4\xc2\xbe \xc3\xa0\xc2\xa4\xc2\xaa\xc3\xa0\xc2\xa5\\x82\xc3\xa0\xc2\xa4\xc2\xb0\xc3\xa0\xc2\xa5\\x8d\xc3\xa0\xc2\xa4\xc2\xa3 \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xb0\xc3\xa0\xc2\xa4\xc2\xa4\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\xc2\xb9\xc3\xa0\xc2\xa5\\x88 by Trimurti Bhakti 1,741,172 views 4 days ago 28 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'#trimurtibhakti \\nSawan Somvar Vrat Katha : \xc3\xa0\xc2\xa4\\x86\xc3\xa0\xc2\xa4\\x9c \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\xc2\xa6\xc3\xa0\xc2\xa4\xc2\xbf\xc3\xa0\xc2\xa4\xc2\xa8 \xc3\xa0\xc2\xa4\xc2\xaf\xc3\xa0\xc2\xa4\xc2\xb9 \xc3\xa0\xc2\xa4\\x9a\xc3\xa0\xc2\xa4\xc2\xae\xc3\xa0\xc2\xa4\xc2\xa4\xc3\xa0\xc2\xa5\\x8d\xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xbe\xc3\xa0\xc2\xa4\xc2\xb0\xc3\xa0\xc2\xa5\\x80 \xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xa5\xc3\xa0\xc2\xa4\xc2\xbe \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa5\\x81\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa5\\x87 \xc3\xa0\xc2\xa4\\xad\xc3\xa0\xc2\xa5\\x8b\xc3\xa0\xc2\xa4\xc2\xb2\xc3\xa0\xc2\xa5\\x87\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa4\xc2\xbe\xc3\xa0\xc2\xa4\xc2\xa5 \xc3\xa0\xc2\xa4\xc2\xb8\xc3\xa0\xc2\xa4\\xad\xc3\xa0\xc2\xa5\\x80 \xc3\xa0\xc2\xa4\xc2\xae\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa5\\x8b\xc3\xa0\xc2\xa4\\x95\xc3\xa0\xc2\xa4\xc2\xbe\xc3\xa0\xc2\xa4\xc2\xae\xc3\xa0\xc2\xa4\xc2\xa8\xc3\xa0\xc2\xa4\xc2\xbe...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Trimurti Bhakti\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CDgQ3DAYKCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@trimurtibhaktist\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCVhgR0R_67-i_dpb1p5ALww\', \'canonicalBaseUrl\': \'/@trimurtibhaktist\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'4 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'28 minutes, 9 seconds\'}}, \'simpleText\': \'28:09\'}, \'viewCountText\': {\'simpleText\': \'1,741,172 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CDgQ3DAYKCITCIaxvuijw4cDFYKL2AUdMloAVTIGZy1oaWdoWgpGRXRyZW5kaW5nmgEHEPLwBRjkAw==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=BGy3EbyMmfU\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'BGy3EbyMmfU\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr3---sn-ci5gup-pmcl.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=046cb711bc8c99f5&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=525000&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerText\': {\'runs\': [{\'text\': \'Trimurti Bhakti\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CDgQ3DAYKCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@trimurtibhaktist\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCVhgR0R_67-i_dpb1p5ALww\', \'canonicalBaseUrl\': \'/@trimurtibhaktist\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Trimurti Bhakti\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CDgQ3DAYKCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@trimurtibhaktist\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCVhgR0R_67-i_dpb1p5ALww\', \'canonicalBaseUrl\': \'/@trimurtibhaktist\'}}}]}, \'trackingParams\': \'CDgQ3DAYKCITCIaxvuijw4cDFYKL2AUdMloAVUD1s7Lkm-KttgQ=\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'1.7 million views\'}}, \'simpleText\': \'1.7M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CDwQ_pgEGAciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CDwQ_pgEGAciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'BGy3EbyMmfU\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CDwQ_pgEGAciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'BGy3EbyMmfU\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'BGy3EbyMmfU\']}}]}}, \'trackingParams\': \'CDwQ_pgEGAciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CDgQ3DAYKCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtCR3kzRWJ5TW1mVQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CDgQ3DAYKCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CDsQjmIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CDgQ3DAYKCITCIaxvuijw4cDFYKL2AUdMloAVQ==\'}}], \'trackingParams\': \'CDgQ3DAYKCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_meGBuEFNl7Cyf6Axuoi9zmjr2FCxwAxC-Q2-_xZYsZ5Q=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CDgQ3DAYKCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@trimurtibhaktist\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCVhgR0R_67-i_dpb1p5ALww\', \'canonicalBaseUrl\': \'/@trimurtibhaktist\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'28 minutes, 9 seconds\'}}, \'simpleText\': \'28:09\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CDoQ-ecDGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'BGy3EbyMmfU\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CDoQ-ecDGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'BGy3EbyMmfU\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CDoQ-ecDGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CDkQx-wEGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CDkQx-wEGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'BGy3EbyMmfU\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CDkQx-wEGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'BGy3EbyMmfU\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'BGy3EbyMmfU\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CDkQx-wEGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_meGBuEFNl7Cyf6Axuoi9zmjr2FCxwAxC-Q2-_xZYsZ5Q=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CDgQ3DAYKCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@trimurtibhaktist\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCVhgR0R_67-i_dpb1p5ALww\', \'canonicalBaseUrl\': \'/@trimurtibhaktist\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'9qxN8VUozPA\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/9qxN8VUozPA/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLAwEcAPhmuVLqFNytGmsmnQkCAApA\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/9qxN8VUozPA/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCvrh18yvGUgUIqky39DaFyCutBxA\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/9qxN8VUozPA/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBofYUNpW3eGNM1AYU_gkV39Cmrtg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16316401, \'section3Color\': 15921383, \'primaryTitleColor\': 1644304, \'secondaryTitleColor\': 7038021, \'section4Color\': 15460829}, \'darkColorPalette\': {\'section2Color\': 2630937, \'section3Color\': 1644304, \'primaryTitleColor\': 16775909, \'secondaryTitleColor\': 13419683, \'section4Color\': 789256}}, \'title\': {\'runs\': [{\'text\': \'I attended Anant Ambani\xc3\xa2\\x80\\x99s reception Ceremony!\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'I attended Anant Ambani\xc3\xa2\\x80\\x99s reception Ceremony! by Also Abhinav 2,691,462 views 10 days ago 18 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': "Join us as we get an exclusive opportunity to experience the grandeur and hospitality at the wedding reception of the son of Asia\'s richest man, Mr. Mukesh Ambani. This spectacular event was..."}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Also Abhinav\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CDMQ3DAYKSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AlsoAbhinav\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCSoOY37X45twbR5EC4hcdrQ\', \'canonicalBaseUrl\': \'/@AlsoAbhinav\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'10 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'18 minutes, 39 seconds\'}}, \'simpleText\': \'18:39\'}, \'viewCountText\': {\'simpleText\': \'2,691,462 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CDMQ3DAYKSITCIaxvuijw4cDFYKL2AUdMloAVTIGZy1oaWdoWgpGRXRyZW5kaW5nmgEHEPLwBRjkAw==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=9qxN8VUozPA\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'9qxN8VUozPA\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr3---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=f6ac4df15528ccf0&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CDMQ3DAYKSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Also Abhinav\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CDMQ3DAYKSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AlsoAbhinav\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCSoOY37X45twbR5EC4hcdrQ\', \'canonicalBaseUrl\': \'/@AlsoAbhinav\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Also Abhinav\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CDMQ3DAYKSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AlsoAbhinav\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCSoOY37X45twbR5EC4hcdrQ\', \'canonicalBaseUrl\': \'/@AlsoAbhinav\'}}}]}, \'trackingParams\': \'CDMQ3DAYKSITCIaxvuijw4cDFYKL2AUdMloAVUDwmaOplb6T1vYB\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'2.6 million views\'}}, \'simpleText\': \'2.6M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CDcQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CDcQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'9qxN8VUozPA\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CDcQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'9qxN8VUozPA\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'9qxN8VUozPA\']}}]}}, \'trackingParams\': \'CDcQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CDMQ3DAYKSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'Cgs5cXhOOFZVb3pQQQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CDMQ3DAYKSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CDYQjmIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CDMQ3DAYKSITCIaxvuijw4cDFYKL2AUdMloAVQ==\'}}], \'trackingParams\': \'CDMQ3DAYKSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_kaFe0d1d9s-4xJgBMNK1PAD-amWKwxhGXgqWSvHmOyghQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CDMQ3DAYKSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AlsoAbhinav\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCSoOY37X45twbR5EC4hcdrQ\', \'canonicalBaseUrl\': \'/@AlsoAbhinav\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'18 minutes, 39 seconds\'}}, \'simpleText\': \'18:39\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CDUQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'9qxN8VUozPA\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CDUQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'9qxN8VUozPA\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CDUQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CDQQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CDQQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'9qxN8VUozPA\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CDQQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'9qxN8VUozPA\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'9qxN8VUozPA\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CDQQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_kaFe0d1d9s-4xJgBMNK1PAD-amWKwxhGXgqWSvHmOyghQ=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CDMQ3DAYKSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@AlsoAbhinav\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCSoOY37X45twbR5EC4hcdrQ\', \'canonicalBaseUrl\': \'/@AlsoAbhinav\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'bbO_HqMHFfQ\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/bbO_HqMHFfQ/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLA2FLuPYed2ADuAETmzBvq5-LOjNw\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/bbO_HqMHFfQ/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBVM9UH-gOScrv5VtB1gPvrRzWhTQ\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/bbO_HqMHFfQ/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLA-x9PV7fVF5o7plDQ8F9saeaaBMA\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315633, \'section3Color\': 15920359, \'primaryTitleColor\': 1643536, \'secondaryTitleColor\': 7692108, \'section4Color\': 15459549}, \'darkColorPalette\': {\'section2Color\': 3351834, \'section3Color\': 2497555, \'primaryTitleColor\': 16773605, \'secondaryTitleColor\': 13415843, \'section4Color\': 1643021}}, \'title\': {\'runs\': [{\'text\': \'Jafaa - Ep 09 - [CC] 19th July 2024 - Sponsored By Salai, Masterpaints & Ujooba Beauty Cream, HUM TV\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Jafaa - Ep 09 - [CC] 19th July 2024 - Sponsored By Salai, Masterpaints & Ujooba Beauty Cream, HUM TV by HUM TV 9,590,970 views 6 days ago 37 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'\xc3\xb0\\x9f\\x91\\x89 Subscribe To HUM TV - https://bit.ly/Humtvpk\\n\\nJafaa - Ep 09 - [CC] 19th July 2024 - Sponsored By Salai, Masterpaints & Ujooba Beauty Cream - HUM TV\\n\\nDigitally Presented By Salai\\nDigitally...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'HUM TV\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CC4Q3DAYKiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@HUMTV\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCEeEQxm6qc_qaTE7qTV5aLQ\', \'canonicalBaseUrl\': \'/@HUMTV\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'6 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'37 minutes, 2 seconds\'}}, \'simpleText\': \'37:02\'}, \'viewCountText\': {\'simpleText\': \'9,590,970 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CC4Q3DAYKiITCIaxvuijw4cDFYKL2AUdMloAVTIGZy1oaWdoWgpGRXRyZW5kaW5nmgEHEPLwBRjkAw==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=bbO_HqMHFfQ\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'bbO_HqMHFfQ\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr2---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=6db3bf1ea30715f4&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CC4Q3DAYKiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'HUM TV\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CC4Q3DAYKiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@HUMTV\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCEeEQxm6qc_qaTE7qTV5aLQ\', \'canonicalBaseUrl\': \'/@HUMTV\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'HUM TV\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CC4Q3DAYKiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@HUMTV\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCEeEQxm6qc_qaTE7qTV5aLQ\', \'canonicalBaseUrl\': \'/@HUMTV\'}}}]}, \'trackingParams\': \'CC4Q3DAYKiITCIaxvuijw4cDFYKL2AUdMloAVUD0q5yY6uPv2W0=\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'9.5 million views\'}}, \'simpleText\': \'9.5M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CDIQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CDIQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'bbO_HqMHFfQ\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CDIQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'bbO_HqMHFfQ\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'bbO_HqMHFfQ\']}}]}}, \'trackingParams\': \'CDIQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CC4Q3DAYKiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtiYk9fSHFNSEZmUQ%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CC4Q3DAYKiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CDEQjmIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CC4Q3DAYKiITCIaxvuijw4cDFYKL2AUdMloAVQ==\'}}], \'trackingParams\': \'CC4Q3DAYKiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/OZT5Uprp0zQxZv7_Co0WQ8KHJEGnjpWWUgeDSANdjWOduVacF_g-qeTWXbq_PJ4hRlhBXp8m=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CC4Q3DAYKiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@HUMTV\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCEeEQxm6qc_qaTE7qTV5aLQ\', \'canonicalBaseUrl\': \'/@HUMTV\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'37 minutes, 2 seconds\'}}, \'simpleText\': \'37:02\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CDAQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'bbO_HqMHFfQ\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CDAQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'bbO_HqMHFfQ\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CDAQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CC8Qx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CC8Qx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'bbO_HqMHFfQ\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CC8Qx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'bbO_HqMHFfQ\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'bbO_HqMHFfQ\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CC8Qx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/OZT5Uprp0zQxZv7_Co0WQ8KHJEGnjpWWUgeDSANdjWOduVacF_g-qeTWXbq_PJ4hRlhBXp8m=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CC4Q3DAYKiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@HUMTV\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCEeEQxm6qc_qaTE7qTV5aLQ\', \'canonicalBaseUrl\': \'/@HUMTV\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'vZCHehCIuZk\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/vZCHehCIuZk/hqdefault.jpg?sqp=-oaymwE8CNIBEHZIWvKriqkDLwgBFQAAAAAYASUAAMhCPQCAokN4AfABAfgB_gmAAtAFigIMCAAQARhLIEkocjAP&rs=AOn4CLCwI6jFvrIRyYLclYmWK1g-1YQ5gA\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/vZCHehCIuZk/hqdefault.jpg?sqp=-oaymwE9CPYBEIoBSFryq4qpAy8IARUAAAAAGAElAADIQj0AgKJDeAHwAQH4Af4JgALQBYoCDAgAEAEYSyBJKHIwDw==&rs=AOn4CLAFEU5413xVVa2tni2A2ZGmzr_4MQ\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/vZCHehCIuZk/hqdefault.jpg?sqp=-oaymwE9CNACELwBSFryq4qpAy8IARUAAAAAGAElAADIQj0AgKJDeAHwAQH4Af4JgALQBYoCDAgAEAEYSyBJKHIwDw==&rs=AOn4CLCW3KFwzBTdiq9GwoxJTgbfoT6teg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15856120, \'section3Color\': 15198194, \'primaryTitleColor\': 1052697, \'secondaryTitleColor\': 5986697, \'section4Color\': 14605803}, \'darkColorPalette\': {\'section2Color\': 2170931, \'section3Color\': 1644582, \'primaryTitleColor\': 15132159, \'secondaryTitleColor\': 10855372, \'section4Color\': 1052697}}, \'title\': {\'runs\': [{\'text\': \'Akai Onna - A Japanese Horror Game\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Akai Onna - A Japanese Horror Game by Live Insaan 2,333,453 views 7 days ago 35 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Playing Akai Onna, a Japanese horror Game.\\n\\nBecome a Channel Member \xc3\xa2\\x96\xc2\xba https://www.youtube.com/channel/UCFwKgzKe-EdTz83r6wzhmOw/join\\n\\nInstagram \xc3\xa2\\x96\xc2\xba https://www.instagram.com/triggeredinsaan...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Live Insaan\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CCkQ3DAYKyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@liveinsaan\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCFwKgzKe-EdTz83r6wzhmOw\', \'canonicalBaseUrl\': \'/@liveinsaan\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'7 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'35 minutes, 59 seconds\'}}, \'simpleText\': \'35:59\'}, \'viewCountText\': {\'simpleText\': \'2,333,453 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CCkQ3DAYKyITCIaxvuijw4cDFYKL2AUdMloAVTIGZy1oaWdoWgpGRXRyZW5kaW5nmgEHEPLwBRjkAw==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=vZCHehCIuZk\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'vZCHehCIuZk\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr3---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=bd90877a1088b999&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CCkQ3DAYKyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Live Insaan\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CCkQ3DAYKyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@liveinsaan\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCFwKgzKe-EdTz83r6wzhmOw\', \'canonicalBaseUrl\': \'/@liveinsaan\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Live Insaan\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CCkQ3DAYKyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@liveinsaan\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCFwKgzKe-EdTz83r6wzhmOw\', \'canonicalBaseUrl\': \'/@liveinsaan\'}}}]}, \'trackingParams\': \'CCkQ3DAYKyITCIaxvuijw4cDFYKL2AUdMloAVUCZ86KEoe-hyL0B\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'2.3 million views\'}}, \'simpleText\': \'2.3M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CC0Q_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CC0Q_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'vZCHehCIuZk\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CC0Q_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'vZCHehCIuZk\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'vZCHehCIuZk\']}}]}}, \'trackingParams\': \'CC0Q_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CCkQ3DAYKyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'Cgt2WkNIZWhDSXVaaw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CCkQ3DAYKyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CCwQjmIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CCkQ3DAYKyITCIaxvuijw4cDFYKL2AUdMloAVQ==\'}}], \'trackingParams\': \'CCkQ3DAYKyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_nfsMq7BaO5zHVHhYcu_wHgQVimFgC7uBCbboM7a1koBWk=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CCkQ3DAYKyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@liveinsaan\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCFwKgzKe-EdTz83r6wzhmOw\', \'canonicalBaseUrl\': \'/@liveinsaan\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'35 minutes, 59 seconds\'}}, \'simpleText\': \'35:59\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CCsQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'vZCHehCIuZk\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CCsQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'vZCHehCIuZk\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CCsQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CCoQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CCoQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'vZCHehCIuZk\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CCoQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'vZCHehCIuZk\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'vZCHehCIuZk\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CCoQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_nfsMq7BaO5zHVHhYcu_wHgQVimFgC7uBCbboM7a1koBWk=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CCkQ3DAYKyITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@liveinsaan\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCFwKgzKe-EdTz83r6wzhmOw\', \'canonicalBaseUrl\': \'/@liveinsaan\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'Nd0gLi3SXno\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/Nd0gLi3SXno/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLCSr311in_OUEtcJxaudT76hqgXJQ\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/Nd0gLi3SXno/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDuTmOrsGtoGKGxnR65zf3RTjF2iA\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/Nd0gLi3SXno/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBdiks5NpFpBMCZ77Sr1tSIBdVSqA\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15857656, \'section3Color\': 15200242, \'primaryTitleColor\': 1054489, \'secondaryTitleColor\': 4745328, \'section4Color\': 14543083}, \'darkColorPalette\': {\'section2Color\': 335654, \'section3Color\': 202009, \'primaryTitleColor\': 15071743, \'secondaryTitleColor\': 10732492, \'section4Color\': 68108}}, \'title\': {\'runs\': [{\'text\': \'Level 1 SPIDERMAN to Level 1,000,000,000 SPIDERMAN in GTA 5\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Level 1 SPIDERMAN to Level 1,000,000,000 SPIDERMAN in GTA 5 by TheLoudDude 471,124 views 1 day ago 19 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': "Level 1 SPIDERMAN to Level 1,000,000,000 SPIDERMAN in GTA 5\\n\\nDon\'t forget to leave a Like, Comment and Favorite, helps out a lot!!\\n\\nFOLLOW, LIKE AND JOIN ME ON:\\n\\nInstagram - https://www.instagram.c..."}]}, \'longBylineText\': {\'runs\': [{\'text\': \'TheLoudDude\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CCQQ3DAYLCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TheLoudDude\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCS8uIXvlSK3HtC0p0VIWyTQ\', \'canonicalBaseUrl\': \'/@TheLoudDude\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'1 day ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'19 minutes, 25 seconds\'}}, \'simpleText\': \'19:25\'}, \'viewCountText\': {\'simpleText\': \'471,124 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CCQQ3DAYLCITCIaxvuijw4cDFYKL2AUdMloAVTIGZy1oaWdoWgpGRXRyZW5kaW5nmgEHEPLwBRjkAw==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=Nd0gLi3SXno\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'Nd0gLi3SXno\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr2---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=35dd202e2dd25e7a&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CCQQ3DAYLCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'TheLoudDude\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CCQQ3DAYLCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TheLoudDude\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCS8uIXvlSK3HtC0p0VIWyTQ\', \'canonicalBaseUrl\': \'/@TheLoudDude\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'TheLoudDude\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CCQQ3DAYLCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TheLoudDude\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCS8uIXvlSK3HtC0p0VIWyTQ\', \'canonicalBaseUrl\': \'/@TheLoudDude\'}}}]}, \'trackingParams\': \'CCQQ3DAYLCITCIaxvuijw4cDFYKL2AUdMloAVUD6vMnu4oXI7jU=\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'471K views\'}}, \'simpleText\': \'471K views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CCgQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CCgQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'Nd0gLi3SXno\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CCgQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'Nd0gLi3SXno\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'Nd0gLi3SXno\']}}]}}, \'trackingParams\': \'CCgQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CCQQ3DAYLCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgtOZDBnTGkzU1hubw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CCQQ3DAYLCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CCcQjmIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CCQQ3DAYLCITCIaxvuijw4cDFYKL2AUdMloAVQ==\'}}], \'trackingParams\': \'CCQQ3DAYLCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_kLVtNfwERunPCUNfPJ10eP5ZSJ-2ZTU44TITxEo29i9-U=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CCQQ3DAYLCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TheLoudDude\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCS8uIXvlSK3HtC0p0VIWyTQ\', \'canonicalBaseUrl\': \'/@TheLoudDude\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'19 minutes, 25 seconds\'}}, \'simpleText\': \'19:25\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CCYQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'Nd0gLi3SXno\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CCYQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'Nd0gLi3SXno\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CCYQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CCUQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CCUQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'Nd0gLi3SXno\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CCUQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'Nd0gLi3SXno\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'Nd0gLi3SXno\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CCUQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ytc/AIdro_kLVtNfwERunPCUNfPJ10eP5ZSJ-2ZTU44TITxEo29i9-U=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CCQQ3DAYLCITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@TheLoudDude\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCS8uIXvlSK3HtC0p0VIWyTQ\', \'canonicalBaseUrl\': \'/@TheLoudDude\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'9plc9BNJISs\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/9plc9BNJISs/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLChbapFQxaBHBM9IZD1Z0SZtRATFw\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/9plc9BNJISs/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLDDTqYwdTr91y6dk0YsVsc8RwJhdQ\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/9plc9BNJISs/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBtFyViHPYPxqreYTsI8N2WQDX_Eg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 16315121, \'section3Color\': 15919591, \'primaryTitleColor\': 1644310, \'secondaryTitleColor\': 6643035, \'section4Color\': 15458525}, \'darkColorPalette\': {\'section2Color\': 3354157, \'section3Color\': 2499362, \'primaryTitleColor\': 16771813, \'secondaryTitleColor\': 13417398, \'section4Color\': 1644310}}, \'title\': {\'runs\': [{\'text\': \'I Tested VIRAL Instagram REEL Products!!\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'I Tested VIRAL Instagram REEL Products!! by Pragati Verma 3,390,743 views 11 days ago 17 minutes\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Buy Original Adivasi Hair Oil \xc3\xb0\\x9f\\x91\\x87\xc3\xb0\\x9f\\x8f\xc2\xbb\xc3\xb0\\x9f\\x91\\x87\xc3\xb0\\x9f\\x8f\xc2\xbb\\nWebsite: https://ahakkipikki.in\\nDirectly call or whatsapp : 7259287760 7259287720\\n7259287730 7259287757 7259287721 \\n\\n#adivasi #adivasihairoil...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'Pragati Verma\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CB8Q3DAYLSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@PragatiVermaa\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCBu8GHpHy9vX8ixdTb38kIQ\', \'canonicalBaseUrl\': \'/@PragatiVermaa\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'11 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'17 minutes, 46 seconds\'}}, \'simpleText\': \'17:46\'}, \'viewCountText\': {\'simpleText\': \'3,390,743 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CB8Q3DAYLSITCIaxvuijw4cDFYKL2AUdMloAVTIGZy1oaWdoWgpGRXRyZW5kaW5nmgEHEPLwBRjkAw==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=9plc9BNJISs\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'9plc9BNJISs\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr2---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=f6995cf41349212b&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CB8Q3DAYLSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'Pragati Verma\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CB8Q3DAYLSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@PragatiVermaa\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCBu8GHpHy9vX8ixdTb38kIQ\', \'canonicalBaseUrl\': \'/@PragatiVermaa\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'Pragati Verma\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CB8Q3DAYLSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@PragatiVermaa\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCBu8GHpHy9vX8ixdTb38kIQ\', \'canonicalBaseUrl\': \'/@PragatiVermaa\'}}}]}, \'trackingParams\': \'CB8Q3DAYLSITCIaxvuijw4cDFYKL2AUdMloAVUCrwqSawZ7XzPYB\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3.3 million views\'}}, \'simpleText\': \'3.3M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CCMQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CCMQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'9plc9BNJISs\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CCMQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'9plc9BNJISs\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'9plc9BNJISs\']}}]}}, \'trackingParams\': \'CCMQ_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CB8Q3DAYLSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'Cgs5cGxjOUJOSklTcw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CB8Q3DAYLSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CCIQjmIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CB8Q3DAYLSITCIaxvuijw4cDFYKL2AUdMloAVQ==\'}}], \'trackingParams\': \'CB8Q3DAYLSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/ZfgUCYvXJ5kER-VrcsB3FFbcY5oy-HPcag9moKSVoWlYGcmpNxWWVPat0LsjNpheGvQY24QIFY0=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CB8Q3DAYLSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@PragatiVermaa\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCBu8GHpHy9vX8ixdTb38kIQ\', \'canonicalBaseUrl\': \'/@PragatiVermaa\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'17 minutes, 46 seconds\'}}, \'simpleText\': \'17:46\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CCEQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'9plc9BNJISs\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CCEQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'9plc9BNJISs\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CCEQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CCAQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CCAQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'9plc9BNJISs\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CCAQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'9plc9BNJISs\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'9plc9BNJISs\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CCAQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/ZfgUCYvXJ5kER-VrcsB3FFbcY5oy-HPcag9moKSVoWlYGcmpNxWWVPat0LsjNpheGvQY24QIFY0=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CB8Q3DAYLSITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@PragatiVermaa\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCBu8GHpHy9vX8ixdTb38kIQ\', \'canonicalBaseUrl\': \'/@PragatiVermaa\'}}}}}}}}}, {\'videoRenderer\': {\'videoId\': \'0P0aQreFs8w\', \'thumbnail\': {\'thumbnails\': [{\'url\': \'https://i.ytimg.com/vi/0P0aQreFs8w/hqdefault.jpg?sqp=-oaymwEiCNIBEHZIWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLBpTeyPTbm_PYoTpKlLu7dgUofCGA\', \'width\': 210, \'height\': 118}, {\'url\': \'https://i.ytimg.com/vi/0P0aQreFs8w/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCVH9qXAvw71yrWnyKP0awWwNbEyA\', \'width\': 246, \'height\': 138}, {\'url\': \'https://i.ytimg.com/vi/0P0aQreFs8w/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBIRXnX-zF-kj5R4mTov7SVJKROFg\', \'width\': 336, \'height\': 188}], \'lightColorPalette\': {\'section2Color\': 15856888, \'section3Color\': 15199474, \'primaryTitleColor\': 1053977, \'secondaryTitleColor\': 5203066, \'section4Color\': 14542059}, \'darkColorPalette\': {\'section2Color\': 2173491, \'section3Color\': 1580838, \'primaryTitleColor\': 15069951, \'secondaryTitleColor\': 10729420, \'section4Color\': 1053977}}, \'title\': {\'runs\': [{\'text\': \'Stray Kids "Chk Chk Boom" M/V\'}], \'accessibility\': {\'accessibilityData\': {\'label\': \'Stray Kids "Chk Chk Boom" M/V by JYP Entertainment 52,793,171 views 6 days ago 3 minutes, 26 seconds\'}}}, \'descriptionSnippet\': {\'runs\': [{\'text\': \'Stray Kids(\xc3\xac\\x8a\xc2\xa4\xc3\xad\\x8a\xc2\xb8\xc3\xab\\xa0\\x88\xc3\xac\\x9d\xc2\xb4 \xc3\xad\\x82\xc2\xa4\xc3\xac\xc2\xa6\\x88) "Chk Chk Boom" M/V\\n\\nListen to "ATE" now\xc3\xb0\\x9f\xc2\xa5\\xa0\\nhttps://Stray-Kids.lnk.to/ATE\\n\\nStray Kids "ATE"\\niTunes & Apple Music: https://Stray-Kids.lnk.to/ATE/AppleMusic\\nSpotify:...\'}]}, \'longBylineText\': {\'runs\': [{\'text\': \'JYP Entertainment\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CBoQ3DAYLiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@JYPEntertainment\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCaO6TYtlC8U5ttz62hTrZgg\', \'canonicalBaseUrl\': \'/@JYPEntertainment\'}}}]}, \'publishedTimeText\': {\'simpleText\': \'6 days ago\'}, \'lengthText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3 minutes, 26 seconds\'}}, \'simpleText\': \'3:26\'}, \'viewCountText\': {\'simpleText\': \'52,793,171 views\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CBoQ3DAYLiITCIaxvuijw4cDFYKL2AUdMloAVTIGZy1oaWdoWgpGRXRyZW5kaW5nmgEHEPLwBRjkAw==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/watch?v=0P0aQreFs8w\', \'webPageType\': \'WEB_PAGE_TYPE_WATCH\', \'rootVe\': 3832}}, \'watchEndpoint\': {\'videoId\': \'0P0aQreFs8w\', \'watchEndpointSupportedOnesieConfig\': {\'html5PlaybackOnesieConfig\': {\'commonConfig\': {\'url\': \'https://rr1---sn-ci5gup-pmce.googlevideo.com/initplayback?source=youtube&oeis=1&c=WEB&oad=3200&ovd=3200&oaad=11000&oavd=11000&ocs=700&oewis=1&oputc=1&ofpcc=1&msp=1&odepv=1&id=d0fd1a42b785b3cc&ip=2401%3A4900%3A3a11%3A8e93%3Ad11a%3A891f%3Aa379%3A13a8&initcwndbps=511250&mt=1721947519&oweuc=&pxtags=Cg4KAnR4Egg1MTE4MTI5Ng&rxtags=Cg4KAnR4Egg1MTE4MTI5Ng%2CCg4KAnR4Egg1MTE4MTI5Nw%2CCg4KAnR4Egg1MTE4MTI5OA\'}}}}}, \'ownerBadges\': [{\'metadataBadgeRenderer\': {\'icon\': {\'iconType\': \'CHECK_CIRCLE_THICK\'}, \'style\': \'BADGE_STYLE_TYPE_VERIFIED\', \'tooltip\': \'Verified\', \'trackingParams\': \'CBoQ3DAYLiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibilityData\': {\'label\': \'Verified\'}}}], \'ownerText\': {\'runs\': [{\'text\': \'JYP Entertainment\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CBoQ3DAYLiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@JYPEntertainment\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCaO6TYtlC8U5ttz62hTrZgg\', \'canonicalBaseUrl\': \'/@JYPEntertainment\'}}}]}, \'shortBylineText\': {\'runs\': [{\'text\': \'JYP Entertainment\', \'navigationEndpoint\': {\'clickTrackingParams\': \'CBoQ3DAYLiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@JYPEntertainment\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCaO6TYtlC8U5ttz62hTrZgg\', \'canonicalBaseUrl\': \'/@JYPEntertainment\'}}}]}, \'trackingParams\': \'CBoQ3DAYLiITCIaxvuijw4cDFYKL2AUdMloAVUDM55a8q8jG_tAB\', \'showActionMenu\': False, \'shortViewCountText\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'52 million views\'}}, \'simpleText\': \'52M views\'}, \'menu\': {\'menuRenderer\': {\'items\': [{\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Add to queue\'}]}, \'icon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CB4Q_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CB4Q_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'0P0aQreFs8w\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CB4Q_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'0P0aQreFs8w\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'0P0aQreFs8w\']}}]}}, \'trackingParams\': \'CB4Q_pgEGAgiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'menuServiceItemRenderer\': {\'text\': {\'runs\': [{\'text\': \'Share\'}]}, \'icon\': {\'iconType\': \'SHARE\'}, \'serviceEndpoint\': {\'clickTrackingParams\': \'CBoQ3DAYLiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/share/get_share_panel\'}}, \'shareEntityServiceEndpoint\': {\'serializedShareEntity\': \'CgswUDBhUXJlRnM4dw%3D%3D\', \'commands\': [{\'clickTrackingParams\': \'CBoQ3DAYLiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'openPopupAction\': {\'popup\': {\'unifiedSharePanelRenderer\': {\'trackingParams\': \'CB0QjmIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'showLoadingSpinner\': True}}, \'popupType\': \'DIALOG\', \'beReused\': True}}]}}, \'trackingParams\': \'CBoQ3DAYLiITCIaxvuijw4cDFYKL2AUdMloAVQ==\'}}], \'trackingParams\': \'CBoQ3DAYLiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Action menu\'}}}}, \'channelThumbnailSupportedRenderers\': {\'channelThumbnailWithLinkRenderer\': {\'thumbnail\': {\'thumbnails\': [{\'url\': \'https://yt3.ggpht.com/kcV7NQkBm-UvvzVTJvrg1Yf1eHSqi-DLXuZPt_ECa3cHEPefujS951Dxj6KUEQ5i9Z7_fyMUjw=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CBoQ3DAYLiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@JYPEntertainment\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCaO6TYtlC8U5ttz62hTrZgg\', \'canonicalBaseUrl\': \'/@JYPEntertainment\'}}, \'accessibility\': {\'accessibilityData\': {\'label\': \'Go to channel\'}}}}, \'thumbnailOverlays\': [{\'thumbnailOverlayTimeStatusRenderer\': {\'text\': {\'accessibility\': {\'accessibilityData\': {\'label\': \'3 minutes, 26 seconds\'}}, \'simpleText\': \'3:26\'}, \'style\': \'DEFAULT\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'isToggled\': False, \'untoggledIcon\': {\'iconType\': \'WATCH_LATER\'}, \'toggledIcon\': {\'iconType\': \'CHECK\'}, \'untoggledTooltip\': \'Watch Later\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CBwQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'addedVideoId\': \'0P0aQreFs8w\', \'action\': \'ACTION_ADD_VIDEO\'}]}}, \'toggledServiceEndpoint\': {\'clickTrackingParams\': \'CBwQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/browse/edit_playlist\'}}, \'playlistEditEndpoint\': {\'playlistId\': \'WL\', \'actions\': [{\'action\': \'ACTION_REMOVE_VIDEO_BY_VIDEO_ID\', \'removedVideoId\': \'0P0aQreFs8w\'}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Watch Later\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CBwQ-ecDGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayToggleButtonRenderer\': {\'untoggledIcon\': {\'iconType\': \'ADD_TO_QUEUE_TAIL\'}, \'toggledIcon\': {\'iconType\': \'PLAYLIST_ADD_CHECK\'}, \'untoggledTooltip\': \'Add to queue\', \'toggledTooltip\': \'Added\', \'untoggledServiceEndpoint\': {\'clickTrackingParams\': \'CBsQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CBsQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'addToPlaylistCommand\': {\'openMiniplayer\': True, \'videoId\': \'0P0aQreFs8w\', \'listType\': \'PLAYLIST_EDIT_LIST_TYPE_QUEUE\', \'onCreateListCommand\': {\'clickTrackingParams\': \'CBsQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/playlist/create\'}}, \'createPlaylistServiceEndpoint\': {\'videoIds\': [\'0P0aQreFs8w\'], \'params\': \'CAQ%3D\'}}, \'videoIds\': [\'0P0aQreFs8w\']}}]}}, \'untoggledAccessibility\': {\'accessibilityData\': {\'label\': \'Add to queue\'}}, \'toggledAccessibility\': {\'accessibilityData\': {\'label\': \'Added\'}}, \'trackingParams\': \'CBsQx-wEGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'thumbnailOverlayNowPlayingRenderer\': {\'text\': {\'runs\': [{\'text\': \'Now playing\'}]}}}], \'avatar\': {\'decoratedAvatarViewModel\': {\'avatar\': {\'avatarViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://yt3.ggpht.com/kcV7NQkBm-UvvzVTJvrg1Yf1eHSqi-DLXuZPt_ECa3cHEPefujS951Dxj6KUEQ5i9Z7_fyMUjw=s68-c-k-c0x00ffffff-no-rj\', \'width\': 68, \'height\': 68}]}, \'avatarImageSize\': \'AVATAR_SIZE_M\'}}, \'a11yLabel\': \'Go to channel\', \'rendererContext\': {\'commandContext\': {\'onTap\': {\'innertubeCommand\': {\'clickTrackingParams\': \'CBoQ3DAYLiITCIaxvuijw4cDFYKL2AUdMloAVQ==\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/@JYPEntertainment\', \'webPageType\': \'WEB_PAGE_TYPE_CHANNEL\', \'rootVe\': 3611, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'UCaO6TYtlC8U5ttz62hTrZgg\', \'canonicalBaseUrl\': \'/@JYPEntertainment\'}}}}}}}}}]}}, \'trackingParams\': \'CBkQ3BwYACITCIaxvuijw4cDFYKL2AUdMloAVQ==\'}}], \'trackingParams\': \'CBgQuy8YAyITCIaxvuijw4cDFYKL2AUdMloAVQ==\'}}], \'trackingParams\': \'CBcQui8iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'targetId\': \'browse-feedFEtrending\'}}, \'tabIdentifier\': \'\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Now\'}}, \'trackingParams\': \'CBYQ8JMBGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'tabRenderer\': {\'endpoint\': {\'clickTrackingParams\': \'CBUQ8JMBGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/feed/trending?bp=4gINGgt5dG1hX2NoYXJ0cw%3D%3D\', \'webPageType\': \'WEB_PAGE_TYPE_BROWSE\', \'rootVe\': 6827, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'FEtrending\', \'params\': \'4gINGgt5dG1hX2NoYXJ0cw%3D%3D\'}}, \'title\': \'Music\', \'selected\': False, \'tabIdentifier\': \'\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Music\'}}, \'trackingParams\': \'CBUQ8JMBGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'tabRenderer\': {\'endpoint\': {\'clickTrackingParams\': \'CBQQ8JMBGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/feed/trending?bp=4gIcGhpnYW1pbmdfY29ycHVzX21vc3RfcG9wdWxhcg%3D%3D\', \'webPageType\': \'WEB_PAGE_TYPE_BROWSE\', \'rootVe\': 6827, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'FEtrending\', \'params\': \'4gIcGhpnYW1pbmdfY29ycHVzX21vc3RfcG9wdWxhcg%3D%3D\'}}, \'title\': \'Gaming\', \'selected\': False, \'tabIdentifier\': \'\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Gaming\'}}, \'trackingParams\': \'CBQQ8JMBGAIiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, {\'tabRenderer\': {\'endpoint\': {\'clickTrackingParams\': \'CBMQ8JMBGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/feed/trending?bp=4gIKGgh0cmFpbGVycw%3D%3D\', \'webPageType\': \'WEB_PAGE_TYPE_BROWSE\', \'rootVe\': 6827, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'FEtrending\', \'params\': \'4gIKGgh0cmFpbGVycw%3D%3D\'}}, \'title\': \'Films\', \'selected\': False, \'tabIdentifier\': \'\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Films\'}}, \'trackingParams\': \'CBMQ8JMBGAMiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}]}}, \'header\': {\'pageHeaderRenderer\': {\'pageTitle\': \'Trending\', \'content\': {\'pageHeaderViewModel\': {\'title\': {\'dynamicTextViewModel\': {\'text\': {\'content\': \'Trending\'}, \'rendererContext\': {\'loggingContext\': {\'loggingDirectives\': {\'trackingParams\': \'CBIQj-QKIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'visibility\': {\'types\': \'12\'}, \'clientVeSpec\': {\'uiType\': 176655, \'veCounter\': 11127323}}}}}}, \'image\': {\'contentPreviewImageViewModel\': {\'image\': {\'sources\': [{\'url\': \'https://www.youtube.com/img/trending/avatar/trending.png\', \'width\': 100, \'height\': 100}]}, \'style\': \'CONTENT_PREVIEW_IMAGE_STYLE_CIRCLE\', \'layoutMode\': \'CONTENT_PREVIEW_IMAGE_LAYOUT_MODE_UNKNOWN\', \'rendererContext\': {\'loggingContext\': {\'loggingDirectives\': {\'trackingParams\': \'CBEQiqULIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'visibility\': {\'types\': \'12\'}, \'clientVeSpec\': {\'uiType\': 184970, \'veCounter\': 11127322}}}}}}, \'rendererContext\': {\'loggingContext\': {\'loggingDirectives\': {\'trackingParams\': \'CBAQot8KIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'visibility\': {\'types\': \'12\'}, \'clientVeSpec\': {\'uiType\': 176034, \'veCounter\': 11127321}}}}}}}}, \'trackingParams\': \'CAAQhGciEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'topbar\': {\'desktopTopbarRenderer\': {\'logo\': {\'topbarLogoRenderer\': {\'iconImage\': {\'iconType\': \'YOUTUBE_LOGO\'}, \'tooltipText\': {\'runs\': [{\'text\': \'YouTube Home\'}]}, \'endpoint\': {\'clickTrackingParams\': \'CA8QsV4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/\', \'webPageType\': \'WEB_PAGE_TYPE_BROWSE\', \'rootVe\': 3854, \'apiUrl\': \'/youtubei/v1/browse\'}}, \'browseEndpoint\': {\'browseId\': \'FEwhat_to_watch\'}}, \'trackingParams\': \'CA8QsV4iEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'overrideEntityKey\': \'EgZ0b3BiYXIg9QEoAQ%3D%3D\'}}, \'searchbox\': {\'fusionSearchboxRenderer\': {\'icon\': {\'iconType\': \'SEARCH\'}, \'placeholderText\': {\'runs\': [{\'text\': \'Search\'}]}, \'config\': {\'webSearchboxConfig\': {\'requestLanguage\': \'en\', \'requestDomain\': \'in\', \'hasOnscreenKeyboard\': False, \'focusSearchbox\': True}}, \'trackingParams\': \'CA0Q7VAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'searchEndpoint\': {\'clickTrackingParams\': \'CA0Q7VAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'/results?search_query=\', \'webPageType\': \'WEB_PAGE_TYPE_SEARCH\', \'rootVe\': 4724}}, \'searchEndpoint\': {\'query\': \'\'}}, \'clearButton\': {\'buttonRenderer\': {\'style\': \'STYLE_DEFAULT\', \'size\': \'SIZE_DEFAULT\', \'isDisabled\': False, \'icon\': {\'iconType\': \'CLOSE\'}, \'trackingParams\': \'CA4Q8FsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibilityData\': {\'accessibilityData\': {\'label\': \'Clear search query\'}}}}}}, \'trackingParams\': \'CAEQq6wBIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'countryCode\': \'IN\', \'topbarButtons\': [{\'topbarMenuButtonRenderer\': {\'icon\': {\'iconType\': \'MORE_VERT\'}, \'menuRequest\': {\'clickTrackingParams\': \'CAsQ_qsBGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True, \'apiUrl\': \'/youtubei/v1/account/account_menu\'}}, \'signalServiceEndpoint\': {\'signal\': \'GET_ACCOUNT_MENU\', \'actions\': [{\'clickTrackingParams\': \'CAsQ_qsBGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'openPopupAction\': {\'popup\': {\'multiPageMenuRenderer\': {\'trackingParams\': \'CAwQ_6sBIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'style\': \'MULTI_PAGE_MENU_STYLE_TYPE_SYSTEM\', \'showLoadingSpinner\': True}}, \'popupType\': \'DROPDOWN\', \'beReused\': True}}]}}, \'trackingParams\': \'CAsQ_qsBGAAiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'accessibility\': {\'accessibilityData\': {\'label\': \'Settings\'}}, \'tooltip\': \'Settings\', \'style\': \'STYLE_DEFAULT\'}}, {\'buttonRenderer\': {\'style\': \'STYLE_SUGGESTIVE\', \'size\': \'SIZE_SMALL\', \'text\': {\'runs\': [{\'text\': \'Sign in\'}]}, \'icon\': {\'iconType\': \'AVATAR_LOGGED_OUT\'}, \'navigationEndpoint\': {\'clickTrackingParams\': \'CAoQ1IAEGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'url\': \'https://accounts.google.com/ServiceLogin?service=youtube&uilel=3&passive=true&continue=https%3A%2F%2Fwww.youtube.com%2Fsignin%3Faction_handle_signin%3Dtrue%26app%3Ddesktop%26hl%3Den-GB%26next%3Dhttps%253A%252F%252Fwww.youtube.com%252Ffeed%252Ftrending%253Fpersist_gl%253D1%2526gl%253DIN&hl=en-GB&ec=65620\', \'webPageType\': \'WEB_PAGE_TYPE_UNKNOWN\', \'rootVe\': 83769}}, \'signInEndpoint\': {\'idamTag\': \'65620\'}}, \'trackingParams\': \'CAoQ1IAEGAEiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'targetId\': \'topbar-signin\'}}], \'hotkeyDialog\': {\'hotkeyDialogRenderer\': {\'title\': {\'runs\': [{\'text\': \'Keyboard shortcuts\'}]}, \'sections\': [{\'hotkeyDialogSectionRenderer\': {\'title\': {\'runs\': [{\'text\': \'Playback\'}]}, \'options\': [{\'hotkeyDialogSectionOptionRenderer\': {\'label\': {\'runs\': [{\'text\': \'Toggle play/pause\'}]}, \'hotkey\': \'k\'}}, {\'hotkeyDialogSectionOptionRenderer\': {\'label\': {\'runs\': [{\'text\': \'Rewind 10 seconds\'}]}, \'hotkey\': \'j\'}}, {\'hotkeyDialogSectionOptionRenderer\': {\'label\': {\'runs\': [{\'text\': \'Fast forward 10 seconds\'}]}, \'hotkey\': \'l\'}}, {\'hotkeyDialogSectionOptionRenderer\': {\'label\': {\'runs\': [{\'text\': \'Previous video\'}]}, \'hotkey\': \'P (SHIFT + p)\'}}, {\'hotkeyDialogSectionOptionRenderer\': {\'label\': {\'runs\': [{\'text\': \'Next video\'}]}, \'hotkey\': \'N (SHIFT + n)\'}}, {\'hotkeyDialogSectionOptionRenderer\': {\'label\': {\'runs\': [{\'text\': \'Previous frame (while paused)\'}]}, \'hotkey\': \',\', \'hotkeyAccessibilityLabel\': {\'accessibilityData\': {\'label\': \'Comma\'}}}}, {\'hotkeyDialogSectionOptionRenderer\': {\'label\': {\'runs\': [{\'text\': \'Next frame (while paused)\'}]}, \'hotkey\': \'.\', \'hotkeyAccessibilityLabel\': {\'accessibilityData\': {\'label\': \'Full stop\'}}}}, {\'hotkeyDialogSectionOptionRenderer\': {\'label\': {\'runs\': [{\'text\': \'Decrease playback rate\'}]}, \'hotkey\': \'< (SHIFT+,)\', \'hotkeyAccessibilityLabel\': {\'accessibilityData\': {\'label\': \'Less than or SHIFT + comma\'}}}}, {\'hotkeyDialogSectionOptionRenderer\': {\'label\': {\'runs\': [{\'text\': \'Increase playback rate\'}]}, \'hotkey\': \'> (SHIFT+.)\', \'hotkeyAccessibilityLabel\': {\'accessibilityData\': {\'label\': \'Greater than or SHIFT + full stop\'}}}}, {\'hotkeyDialogSectionOptionRenderer\': {\'label\': {\'runs\': [{\'text\': \'Seek to specific point in the video (7 advances to 70% of duration)\'}]}, \'hotkey\': \'0..9\'}}, {\'hotkeyDialogSectionOptionRenderer\': {\'label\': {\'runs\': [{\'text\': \'Seek to previous chapter\'}]}, \'hotkey\': \'CONTROL + \xc3\xa2\\x86\\x90\'}}, {\'hotkeyDialogSectionOptionRenderer\': {\'label\': {\'runs\': [{\'text\': \'Seek to next chapter\'}]}, \'hotkey\': \'CONTROL + \xc3\xa2\\x86\\x92\'}}]}}, {\'hotkeyDialogSectionRenderer\': {\'title\': {\'runs\': [{\'text\': \'General\'}]}, \'options\': [{\'hotkeyDialogSectionOptionRenderer\': {\'label\': {\'runs\': [{\'text\': \'Toggle full screen\'}]}, \'hotkey\': \'f\'}}, {\'hotkeyDialogSectionOptionRenderer\': {\'label\': {\'runs\': [{\'text\': \'Toggle theatre mode\'}]}, \'hotkey\': \'t\'}}, {\'hotkeyDialogSectionOptionRenderer\': {\'label\': {\'runs\': [{\'text\': \'Toggle miniplayer\'}]}, \'hotkey\': \'i\'}}, {\'hotkeyDialogSectionOptionRenderer\': {\'label\': {\'runs\': [{\'text\': \'Close miniplayer or current dialogue\'}]}, \'hotkey\': \'ESCAPE\'}}, {\'hotkeyDialogSectionOptionRenderer\': {\'label\': {\'runs\': [{\'text\': \'Toggle mute\'}]}, \'hotkey\': \'m\'}}]}}, {\'hotkeyDialogSectionRenderer\': {\'title\': {\'runs\': [{\'text\': \'Subtitles and closed captions\'}]}, \'options\': [{\'hotkeyDialogSectionOptionRenderer\': {\'label\': {\'runs\': [{\'text\': \'If the video supports captions, toggle captions ON/OFF\'}]}, \'hotkey\': \'c\'}}, {\'hotkeyDialogSectionOptionRenderer\': {\'label\': {\'runs\': [{\'text\': \'Rotate through different text opacity levels\'}]}, \'hotkey\': \'o\'}}, {\'hotkeyDialogSectionOptionRenderer\': {\'label\': {\'runs\': [{\'text\': \'Rotate through different window opacity levels\'}]}, \'hotkey\': \'w\'}}, {\'hotkeyDialogSectionOptionRenderer\': {\'label\': {\'runs\': [{\'text\': \'Rotate through font sizes (increasing)\'}]}, \'hotkey\': \'+\'}}, {\'hotkeyDialogSectionOptionRenderer\': {\'label\': {\'runs\': [{\'text\': \'Rotate through font sizes (decreasing)\'}]}, \'hotkey\': \'-\', \'hotkeyAccessibilityLabel\': {\'accessibilityData\': {\'label\': \'Minus\'}}}}]}}, {\'hotkeyDialogSectionRenderer\': {\'title\': {\'runs\': [{\'text\': \'Spherical videos\'}]}, \'options\': [{\'hotkeyDialogSectionOptionRenderer\': {\'label\': {\'runs\': [{\'text\': \'Pan up\'}]}, \'hotkey\': \'w\'}}, {\'hotkeyDialogSectionOptionRenderer\': {\'label\': {\'runs\': [{\'text\': \'Pan left\'}]}, \'hotkey\': \'a\'}}, {\'hotkeyDialogSectionOptionRenderer\': {\'label\': {\'runs\': [{\'text\': \'Pan down\'}]}, \'hotkey\': \'s\'}}, {\'hotkeyDialogSectionOptionRenderer\': {\'label\': {\'runs\': [{\'text\': \'Pan right\'}]}, \'hotkey\': \'d\'}}, {\'hotkeyDialogSectionOptionRenderer\': {\'label\': {\'runs\': [{\'text\': \'Zoom in\'}]}, \'hotkey\': \'+ on numpad or ]\', \'hotkeyAccessibilityLabel\': {\'accessibilityData\': {\'label\': \'Plus on number pad or right bracket\'}}}}, {\'hotkeyDialogSectionOptionRenderer\': {\'label\': {\'runs\': [{\'text\': \'Zoom out\'}]}, \'hotkey\': \'- on numpad or [\', \'hotkeyAccessibilityLabel\': {\'accessibilityData\': {\'label\': \'Minus on number pad or left bracket\'}}}}]}}], \'dismissButton\': {\'buttonRenderer\': {\'style\': \'STYLE_BLUE_TEXT\', \'size\': \'SIZE_DEFAULT\', \'isDisabled\': False, \'text\': {\'runs\': [{\'text\': \'Dismiss\'}]}, \'trackingParams\': \'CAkQ8FsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\'}}, \'trackingParams\': \'CAgQteYDIhMIhrG-6KPDhwMVgovYBR0yWgBV\'}}, \'backButton\': {\'buttonRenderer\': {\'trackingParams\': \'CAcQvIYDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'command\': {\'clickTrackingParams\': \'CAcQvIYDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CAcQvIYDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'signalAction\': {\'signal\': \'HISTORY_BACK\'}}]}}}}, \'forwardButton\': {\'buttonRenderer\': {\'trackingParams\': \'CAYQvYYDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'command\': {\'clickTrackingParams\': \'CAYQvYYDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CAYQvYYDIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'signalAction\': {\'signal\': \'HISTORY_FORWARD\'}}]}}}}, \'a11ySkipNavigationButton\': {\'buttonRenderer\': {\'style\': \'STYLE_DEFAULT\', \'size\': \'SIZE_DEFAULT\', \'isDisabled\': False, \'text\': {\'runs\': [{\'text\': \'Skip navigation\'}]}, \'trackingParams\': \'CAUQ8FsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'command\': {\'clickTrackingParams\': \'CAUQ8FsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CAUQ8FsiEwiGsb7oo8OHAxWCi9gFHTJaAFU=\', \'signalAction\': {\'signal\': \'SKIP_NAVIGATION\'}}]}}}}, \'voiceSearchButton\': {\'buttonRenderer\': {\'style\': \'STYLE_DEFAULT\', \'size\': \'SIZE_DEFAULT\', \'isDisabled\': False, \'serviceEndpoint\': {\'clickTrackingParams\': \'CAIQ7a8FIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'commandMetadata\': {\'webCommandMetadata\': {\'sendPost\': True}}, \'signalServiceEndpoint\': {\'signal\': \'CLIENT_SIGNAL\', \'actions\': [{\'clickTrackingParams\': \'CAIQ7a8FIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'openPopupAction\': {\'popup\': {\'voiceSearchDialogRenderer\': {\'placeholderHeader\': {\'runs\': [{\'text\': \'Listening\xc3\xa2\\x80\xc2\xa6\'}]}, \'promptHeader\': {\'runs\': [{\'text\': "Didn\'t hear that. Try again."}]}, \'exampleQuery1\': {\'runs\': [{\'text\': "\'Play Dua Lipa\'"}]}, \'exampleQuery2\': {\'runs\': [{\'text\': "\'Show me my subscriptions\'"}]}, \'promptMicrophoneLabel\': {\'runs\': [{\'text\': \'Tap the microphone to try again\'}]}, \'loadingHeader\': {\'runs\': [{\'text\': \'Working\xc3\xa2\\x80\xc2\xa6\'}]}, \'connectionErrorHeader\': {\'runs\': [{\'text\': \'No connection\'}]}, \'connectionErrorMicrophoneLabel\': {\'runs\': [{\'text\': \'Check your connection and try again\'}]}, \'permissionsHeader\': {\'runs\': [{\'text\': \'Waiting for permission\'}]}, \'permissionsSubtext\': {\'runs\': [{\'text\': \'Allow microphone access to search with voice\'}]}, \'disabledHeader\': {\'runs\': [{\'text\': \'Search with your voice\'}]}, \'disabledSubtext\': {\'runs\': [{\'text\': \'To search by voice, go to your browser settings and allow access to microphone\'}]}, \'microphoneButtonAriaLabel\': {\'runs\': [{\'text\': \'Cancel\'}]}, \'exitButton\': {\'buttonRenderer\': {\'style\': \'STYLE_DEFAULT\', \'size\': \'SIZE_DEFAULT\', \'isDisabled\': False, \'icon\': {\'iconType\': \'CLOSE\'}, \'trackingParams\': \'CAQQ0LEFIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibilityData\': {\'accessibilityData\': {\'label\': \'Cancel\'}}}}, \'trackingParams\': \'CAMQ7q8FIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'microphoneOffPromptHeader\': {\'runs\': [{\'text\': \'Microphone off. Try again.\'}]}}}, \'popupType\': \'TOP_ALIGNED_DIALOG\'}}]}}, \'icon\': {\'iconType\': \'MICROPHONE_ON\'}, \'tooltip\': \'Search with your voice\', \'trackingParams\': \'CAIQ7a8FIhMIhrG-6KPDhwMVgovYBR0yWgBV\', \'accessibilityData\': {\'accessibilityData\': {\'label\': \'Search with your voice\'}}}}}}}'
diff --git a/requirements.txt b/requirements.txt
new file mode 100644
index 0000000000000000000000000000000000000000..6602acb945e81f03359bc023a907a9c2638c618d
--- /dev/null
+++ b/requirements.txt
@@ -0,0 +1,37 @@
+aiofiles
+aiohttp
+asyncio
+dnspython
+ffmpeg-python
+gitpython
+hachoir
+heroku3
+lyricsgenius
+motor==3.3.2
+pillow==10.2.0
+Pyrogram==2.0.106
+psutil
+pykeyboard
+python-dotenv
+pyyaml==6.0.1
+pytube
+requests
+speedtest-cli
+spotipy
+scrapetube
+tgcrypto
+youtube-search
+youtube-search-python
+git+https://github.com/yt-dlp/yt-dlp.git
+ntgcalls==1.1.3
+py-tgcalls==1.2.9
+Flask
+requests
+threaded
+innertube
+Jinja2
+aiohttp_jinja2
+argparse
+google-api-python-client
+lxml
+beautifulsoup4
diff --git a/setup b/setup
new file mode 100644
index 0000000000000000000000000000000000000000..aa3adf04e97ea0ac23596cfd1bb6e349fe5a1eca
--- /dev/null
+++ b/setup
@@ -0,0 +1,137 @@
+#!/bin/bash
+### Yukki Music Bot Installer
+
+pprint (){
+ cred='\033[0;31m'
+ cgreen='\033[0;32m'
+ cyellow='\033[0;33m'
+ cblue='\033[0;34m'
+ cpurple='\033[0;35m'
+ eval "export color='$cpurple'"
+ [ ! -z $2 ] && eval "export color=\"\$$2\""
+ printf "$color $1"
+}
+
+color_reset(){ printf '\033[0;37m';}
+
+yesnoprompt(){
+ old_stty_cfg=$(stty -g)
+ stty raw -echo ; answer=$(head -c 1)
+ stty $old_stty_cfg
+ echo "$answer" | grep -iq "^y"
+}
+
+update() {
+ pprint "\n\nUpdating package list.. "
+ sudo apt update 2>&1 | grep "can be upgraded" &>/dev/null
+ if [ $? -eq 0 ]; then
+ pprint "UPDATE AVAILABLE" "cgreen"
+ pprint "\n\nDo you want to automatically upgrade (y/n)?"
+ if yesnoprompt; then
+ pprint "\n\nUpgrading packages.. "
+ sudo apt upgrade -y &>/dev/null &&
+ pprint "DONE!\n\n" "cgreen" || (pprint "FAIL.\n\n" "cred"; exit 1)
+ else
+ echo
+ fi
+ else
+ pprint "ALREADY UP TO DATE\n\n" "cgreen"
+ fi
+}
+
+packages(){
+ if ! command -v pip &>/dev/null; then
+ pprint "Couldn't found pip, installing now.. "
+ sudo apt install python3-pip -y 2>pypilog.txt 1>/dev/null &&
+ pprint "SUCCESS.\n\n" "cgreen" || (pprint "FAIL.\n\n" "cred"; exit 1)
+ fi
+
+ if ! command -v ffmpeg &>/dev/null; then
+ pprint "Couldn't found ffmpeg, installing now.. "
+ if sudo apt install ffmpeg -y &>/dev/null;then
+ pprint "SUCCESS.\n\n" "cgreen"
+ else
+ pprint "FAIL.\n\n" "cred"
+ pprint "You need to install ffmpeg manually in order to use YukkiMusicBot, exiting..\n" "cblue"
+ exit 1
+ fi
+ fi
+
+ # Check ffmpeg version and warn user if necessary.
+ fv=$(grep -Po 'version (3.*?) ' <<< $(ffmpeg -version)) &&
+ pprint "Playing live streams not going to work since you have ffmpeg $fv, live streams are supported by version 4+.\n" "cblue"
+}
+
+
+node(){
+ command -v npm &>/dev/null && return
+ pprint "Installing Nodejs and Npm.. "
+ curl -fssL https://deb.nodesource.com/setup_18.x | sudo -E bash - &>nodelog.txt &&
+ sudo apt install nodejs -y &>>nodelog.txt &&
+ sudo npm i -g npm &>>nodelog.txt &&
+ pprint "SUCCESS!\n" "cgreen" || (pprint "FAIL.\n" "cred"; exit 1)
+}
+
+
+repo(){
+ # Get git repo if the installer is runned standalone
+ [[ ! "YukkiMusicBot" == $(basename -s .git `git config --get remote.origin.url`) ]] &&
+ git clone https://github.com/TeamYukki/YukkiMusicBot && cd YukkiMusicBot
+}
+
+
+installation(){
+ pprint "\n\nUpgrading pip and installing dependency packages.. "
+ pip3 install -U pip &>>pypilog.txt &&
+ pip3 install -U -r requirements.txt &>>pypilog.txt &&
+ pprint "DONE.\n" "cgreen" && return
+ pprint "FAIL.\n" "cred"
+ exit 1
+}
+
+clear
+pprint "Welcome to Yukki Music Bot Setup Installer\n\n"
+pprint "If you see any error during Installation Process, Please refer to these files for logs: "
+pprint "\nFor node js errors , Checkout nodelog.txt"
+pprint "\nFor pypi packages errors , Checkout pypilog.txt"
+sleep 2
+pprint "\n\nScript needs sudo privileges in order to update & install packages.\n"
+sudo test
+
+update
+packages
+node
+repo
+installation
+pprint "\n\n\n\n\nYukki Music Bot Installation Completed!" "cgreen"
+sleep 4
+clear
+
+pprint "\nEnter Your Values Below\n\n\n"
+pprint "API ID: "; color_reset; read api_id
+pprint "\nAPI HASH: "; color_reset; read api_hash
+pprint "\nBOT TOKEN: "; color_reset; read bot_token
+pprint "\nMONGO DB URI: "; color_reset; read mongo_db
+pprint "\nLOG GROUP ID: "; color_reset; read logger
+pprint "\nPYROGRAM STRING SESSION OF ASSISTANT ACCOUNT: "; color_reset; read string_session
+pprint "\nMUSIC BOT NAME: "; color_reset; read mbt
+pprint "\nOWNER ID:"; color_reset; read ownid
+
+pprint "\n\nProcessing your vars, Wait a while!" "cgreen"
+
+if [ -f .env ]; then
+ rm .env
+fi
+
+echo """API_ID = $api_id
+API_HASH = $api_hash
+BOT_TOKEN = $bot_token
+MONGO_DB_URI = $mongo_db
+LOG_GROUP_ID = $logger
+MUSIC_BOT_NAME = $mbt
+STRING_SESSION = $string_session
+OWNER_ID = $ownid""" > .env
+clear
+pprint "\n\n\nYour Vars have been saved Successfully!, Thanks for using Yukki Installer, now you can proceed by starting the bot with bash start!"
+pprint "\n\n\nWant more vars?"
+pprint "\nCheckout config.py and README.md inside config folder for addtional vars. You can change all images , thumbnails, mode and everything from vars. Have a look towards them\n\n"
diff --git a/start b/start
new file mode 100644
index 0000000000000000000000000000000000000000..b7b86d95e0bcda05e3f9ba16ffe2d430f63d34da
--- /dev/null
+++ b/start
@@ -0,0 +1 @@
+python3 -m YukkiMusic
diff --git a/strings/__init__.py b/strings/__init__.py
new file mode 100644
index 0000000000000000000000000000000000000000..be3e66b8d0947a2bcf842eb81e393f3d7c7eb4f6
--- /dev/null
+++ b/strings/__init__.py
@@ -0,0 +1,63 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+import os
+import sys
+from typing import List
+
+import yaml
+
+languages = {}
+commands = {}
+
+
+languages_present = {}
+
+
+def get_command(value: str) -> List:
+ return commands["command"][value]
+
+
+def get_string(lang: str):
+ return languages[lang]
+
+
+for filename in os.listdir(r"./strings"):
+ if filename.endswith(".yml"):
+ language_name = filename[:-4]
+ commands[language_name] = yaml.safe_load(
+ open(r"./strings/" + filename, encoding="utf8")
+ )
+
+
+for filename in os.listdir(r"./strings/langs/"):
+ if "en" not in languages:
+ languages["en"] = yaml.safe_load(
+ open(r"./strings/langs/en.yml", encoding="utf8")
+ )
+ languages_present["en"] = languages["en"]["name"]
+ if filename.endswith(".yml"):
+ language_name = filename[:-4]
+ if language_name == "en":
+ continue
+ languages[language_name] = yaml.safe_load(
+ open(r"./strings/langs/" + filename, encoding="utf8")
+ )
+ for item in languages["en"]:
+ if item not in languages[language_name]:
+ languages[language_name][item] = languages["en"][item]
+ try:
+ languages_present[language_name] = languages[language_name][
+ "name"
+ ]
+ except:
+ print(
+ "There is some issue with the language file inside bot. Please report it to the TeamYukki at @YukkiSupport on Telegram"
+ )
+ sys.exit()
diff --git a/strings/command.yml b/strings/command.yml
new file mode 100644
index 0000000000000000000000000000000000000000..4b88d37bd5cd48d58c5af49455ac67aad0309899
--- /dev/null
+++ b/strings/command.yml
@@ -0,0 +1,113 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+
+# Commands in Every Language
+
+# Bot Commands
+PING_COMMAND : ["ping"]
+START_COMMAND : ["start"]
+HELP_COMMAND : ["help"]
+SETTINGS_COMMAND : ["settings", "setting"]
+RELOAD_COMMAND : ["admincache", "reload"]
+GSTATS_COMMAND : ["gstats"]
+STATS_COMMAND : ["stats"]
+LANGUAGE_COMMAND : ["lang", "language", "langs"]
+#WEB APP
+WEB_APP_COMMAND : ["webapp"]
+# Play Commands
+PLAY_COMMAND : ["play", "vplay", "cplay", "cvplay", "playforce", "vplayforce", "cplayforce", "cvplayforce"]
+PLAYMODE_COMMAND : ["playmode"]
+CHANNELPLAY_COMMAND : ["channelplay"]
+STREAM_COMMAND : ["stream", "cstream", "streamforce"]
+
+#Playlists Command
+PLAYLIST_COMMAND : ["playlist"]
+DELETEPLAYLIST_COMMAND : ["deleteplaylist"]
+
+
+# Tools
+QUEUE_COMMAND : ["queue","cqueue", "player", "cplayer", "playing", "cplaying"]
+SONG_COMMAND : ["song", "video"]
+LYRICS_COMMAND : ["lyrics"]
+
+
+# Admin Commands
+AUTH_COMMAND : ["auth"]
+UNAUTH_COMMAND : ["unauth"]
+AUTHUSERS_COMMAND : ["authusers"]
+PAUSE_COMMAND : ["pause", "cpause"]
+RESUME_COMMAND : ["resume", "cresume"]
+MUTE_COMMAND : ["mute", "cmute"]
+UNMUTE_COMMAND : ["unmute", "cunmute"]
+STOP_COMMAND : ["stop", "end", "cstop", "cend"]
+SKIP_COMMAND : ["skip", "cskip"]
+SHUFFLE_COMMAND : ["shuffle", "cshuffle"]
+LOOP_COMMAND : ["loop", "cloop"]
+SEEK_COMMAND : ["seek", "cseek", "seekback", "cseekback"]
+RESTART_COMMAND : ["restart"]
+
+# Sudo Users Commaands
+
+# Sudo Command
+ADDSUDO_COMMAND : ["addsudo"]
+DELSUDO_COMMAND : ["delsudo"]
+SUDOUSERS_COMMAND : ["sudolist"]
+
+#Broadcast
+BROADCAST_COMMAND : ["broadcast"]
+
+#Blacklist chat
+BLACKLISTCHAT_COMMAND : ["blacklistchat"]
+WHITELISTCHAT_COMMAND : ["whitelistchat"]
+BLACKLISTEDCHAT_COMMAND : ["blacklistedchat"]
+
+# Video Calls Command
+VIDEOLIMIT_COMMAND : ["set_video_limit"]
+VIDEOMODE_COMMAND : ["videomode"]
+
+#Mantenance
+MAINTENANCE_COMMAND : ["maintenance"]
+LOGGER_COMMAND : ["logger"]
+
+#Heroku
+GETLOG_COMMAND : ["get_log"]
+GETVAR_COMMAND : ["get_var"]
+DELVAR_COMMAND : ["del_var"]
+SETVAR_COMMAND : ["set_var"]
+USAGE_COMMAND : ["usage"]
+VARS_COMMAND : ["vars", "config"]
+
+
+#Basic Bot Commands
+UPDATE_COMMAND : ["update"]
+REBOOT_COMMAND : ["reboot"]
+AUTOEND_COMMAND : ["autoend"]
+
+#Private Bot Mode
+AUTHORIZE_COMMAND : ["authorize"]
+UNAUTHORIZE_COMMAND : ["unauthorize"]
+AUTHORIZED_COMMAND : ["authorized"]
+
+#Block Users Command
+BLOCK_COMMAND : ["block"]
+UNBLOCK_COMMAND : ["unblock"]
+BLOCKED_COMMAND : ["blockedusers"]
+
+#sPEEDTEST
+SPEEDTEST_COMMAND : ["speedtest"]
+
+#Voice chat commands
+ACTIVEVC_COMMAND : ["activevoice"]
+ACTIVEVIDEO_COMMAND : ["activevideo"]
+
+#Gban Commands
+GBAN_COMMAND : ["gban"]
+UNGBAN_COMMAND : ["ungban"]
+GBANNED_COMMAND : ["gbannedusers"]
\ No newline at end of file
diff --git a/strings/helpers.py b/strings/helpers.py
new file mode 100644
index 0000000000000000000000000000000000000000..8693521f5bedd4492a52def6378db1a174cfe444
--- /dev/null
+++ b/strings/helpers.py
@@ -0,0 +1,175 @@
+#
+# Copyright (C) 2021-2022 by TeamYukki@Github, < https://github.com/TeamYukki >.
+#
+# This file is part of < https://github.com/TeamYukki/YukkiMusicBot > project,
+# and is released under the "GNU v3.0 License Agreement".
+# Please see < https://github.com/TeamYukki/YukkiMusicBot/blob/master/LICENSE >
+#
+# All rights reserved.
+
+HELP_1 = """â
**Admin Commands: **
+
+**c** stands for channel play.
+
+/pause or /cpause - Pause the playing music.
+/resume or /cresume- Resume the paused music.
+/mute or /cmute- Mute the playing music.
+/unmute or /cunmute- Unmute the muted music.
+/skip or /cskip- Skip the current playing music.
+/stop or /cstop- Stop the playing music.
+/shuffle or /cshuffle- Randomly shuffles the queued playlist.
+/seek or /cseek - Forward Seek the music to your duration
+/seekback or /cseekback - Backward Seek the music to your duration
+/restart - Restart bot for your chat .
+
+
+â
**Specific Skip:**
+/skip or /cskip [Number(example: 3)]
+ - Skips music to a the specified queued number. Example: /skip 3 will skip music to third queued music and will ignore 1 and 2 music in queue.
+
+â
**Loop Play:**
+/loop or /cloop [enable/disable] or [Numbers between 1-10]
+ - When activated, bot loops the current playing music to 1-10 times on voice chat. Default to 10 times.
+
+â
**Auth Users:**
+Auth Users can use admin commands without admin rights in your chat.
+
+/auth [Username] - Add a user to AUTH LIST of the group.
+/unauth [Username] - Remove a user from AUTH LIST of the group.
+/authusers - Check AUTH LIST of the group."""
+
+
+HELP_2 = """â
**Play Commands:**
+
+Available Commands = play , vplay , cplay
+
+ForcePlay Commands = playforce , vplayforce , cplayforce
+
+**c** stands for channel play.
+**v** stands for video play.
+**force** stands for force play.
+
+/play or /vplay or /cplay - Bot will start playing your given query on voice chat or Stream live links on voice chats.
+
+/playforce or /vplayforce or /cplayforce - **Force Play** stops the current playing track on voice chat and starts playing the searched track instantly without disturbing/clearing queue.
+
+/channelplay [Chat username or id] or [Disable] - Connect channel to a group and stream music on channel's voice chat from your group.
+
+
+â
**Bot's Server Playlists: **
+/playlist - Check Your Saved Playlist On Servers.
+/deleteplaylist - Delete any saved music in your playlist
+/play - Start playing Your Saved Playlist from Servers."""
+
+
+HELP_3 = """â
**Bot Commands:**
+
+/stats - Get Top 10 Tracks Global Stats, Top 10 Users of bot, Top 10 Chats on bot, Top 10 Played in a chat etc etc.
+
+/sudolist - Check Sudo Users of Yukki Music Bot
+
+/lyrics [Music Name] - Searches Lyrics for the particular Music on web.
+
+/song [Track Name] or [YT Link] - Download any track from youtube in mp3 or mp4 formats.
+
+/player - Get a interactive Playing Panel.
+
+**c** stands for channel play.
+
+/queue or /cqueue- Check Queue List of Music."""
+
+HELP_4 = """â
**Extra Commands:**
+/start - Start the Music Bot.
+/help - Get Commands Helper Menu with detailed explanations of commands.
+/ping- Ping the Bot and check Ram, Cpu etc stats of Bot.
+
+â
**Group Settings:**
+/settings - Get a complete group's settings with inline buttons
+
+đ **Options in Settings:**
+
+1ī¸âŖ You can set **Audio Quality** you want to stream on voice chat.
+
+2ī¸âŖ You can set **Video Quality** you want to stream on voice chat.
+
+3ī¸âŖ **Auth Users**:- You can change admin commands mode from here to everyone or admins only. If everyone, anyone present in you group will be able to use admin commands(like /skip, /stop etc)
+
+4ī¸âŖ **Clean Mode:** When enabled deletes the bot's messages after 5 mins from your group to make sure your chat remains clean and good.
+
+5ī¸âŖ **Command Clean** : When activated, Bot will delete its executed commands (/play, /pause, /shuffle, /stop etc) immediately.
+
+6ī¸âŖ **Play Settings:**
+
+/playmode - Get a complete play settings panel with buttons where you can set your group's play settings.
+
+Options in playmode:
+
+1ī¸âŖ **Search Mode** [Direct or Inline] - Changes your search mode while you give /play mode.
+
+2ī¸âŖ **Admin Commands** [Everyone or Admins] - If everyone, anyone present in you group will be able to use admin commands(like /skip, /stop etc)
+
+3ī¸âŖ **Play Type** [Everyone or Admins] - If admins, only admins present in group can play music on voice chat."""
+
+HELP_5 = """đ°**ADD & REMOVE SUDO USERS : **
+/addsudo [Username or Reply to a user]
+/delsudo [Username or Reply to a user]
+
+đ**HEROKU: **
+/usage - Dyno Usage.
+
+đ**CONFIG VARS: **
+/get_var - Get a config var from Heroku or .env.
+/del_var - Delete any var on Heroku or .env.
+/set_var [Var Name] [Value] - Set a Var or Update a Var on heroku or .env. Seperate Var and its Value with a space.
+
+đ¤**BOT COMMANDS: **
+/reboot - Reboot your Bot.
+/update - Update Bot.
+/speedtest - Check server speeds
+/maintenance [enable / disable]
+/logger [enable / disable] - Bot logs the searched queries in logger group.
+/get_log [Number of Lines] - Get log of your bot from heroku or vps. Works for both.
+/autoend [enable|disable] - Enable Auto stream end after 3 mins if no one is listening.
+
+đ**STATS COMMANDS: **
+/activevoice - Check active voice chats on bot.
+/activevideo - Check active video calls on bot.
+/stats - Check Bots Stats
+
+â ī¸**BLACKLIST CHAT FUNCTION: **
+/blacklistchat [CHAT_ID] - Blacklist any chat from using Music Bot
+/whitelistchat [CHAT_ID] - Whitelist any blacklisted chat from using Music Bot
+/blacklistedchat - Check all blacklisted chats.
+
+đ¤**BLOCKED FUNCTION: **
+/block [Username or Reply to a user] - Prevents a user from using bot commands.
+/unblock [Username or Reply to a user] - Remove a user from Bot's Blocked List.
+/blockedusers - Check blocked Users Lists
+
+đ¤**GBAN FUNCTION: **
+/gban [Username or Reply to a user] - Gban a user from bot's served chat and stop him from using your bot.
+/ungban [Username or Reply to a user] - Remove a user from Bot's gbanned List and allow him for using your bot
+/gbannedusers - Check Gbanned Users Lists
+
+đĨ**VIDEOCALLS FUNCTION: **
+/set_video_limit [Number of Chats] - Set a maximum Number of Chats allowed for Video Calls at a time. Default to 3 chats.
+/videomode [download|m3u8] - If download mode is enabled, Bot will download videos instead of playing them in M3u8 form. ByDefault to M3u8. You can use download mode when any query doesnt plays in m3u8 mode.
+
+âĄī¸**PRIVATE BOT FUNCTION: **
+/authorize [CHAT_ID] - Allow a chat for using your bot.
+/unauthorize [CHAT_ID] - Disallow a chat from using your bot.
+/authorized - Check all allowed chats of your bot.
+
+đ**BROADCAST FUNCTION: **
+/broadcast [Message or Reply to a Message] - Broadcast any message to Bot's Served Chats.
+
+options for broadcast:
+**-pin** : This will pin your message
+**-pinloud** : This will pin your message with loud notification
+**-user** : This will broadcast your message to the users who have started your bot.
+**-assistant** : This will broadcast your message from assistant account of your bot.
+**-nobot** : This will force your bot to not broadcast message
+
+**Example:** `/broadcast -user -assistant -pin Hello Testing`
+
+"""
diff --git a/strings/langs/ar.yml b/strings/langs/ar.yml
new file mode 100644
index 0000000000000000000000000000000000000000..9eba896ef84cadd95ffc205517f8a4b4ab0450bf
--- /dev/null
+++ b/strings/langs/ar.yml
@@ -0,0 +1,473 @@
+name : đĻđĒ Arabic
+
+# General Strings
+general_1 : "ŲØąØŦŲ Ø§ŲØąØ¯ ØšŲŲ Ø§ŲŲ
ØŗØĒ؎دŲ
ØŖŲ ŲØĒØ§Ø¨Ų اŲŲŲØ˛Øą ."
+general_2 : "ØØŦŲ Ø§ŲØ§Ų
Øą Ų
ŲØĒŲØ¨ ØēŲØˇ."
+general_3 : "بؚØļ ** ØØ¯ØĢ ØŽØˇØŖ ** ØŖØĢŲØ§ØĄ Ų
ØšØ§ŲØŦØŠ ØˇŲØ¨Ų .\n\nŲب𠨧بިˇØŖ:- {0}"
+general_4 : "ØØ¨ Ø§ŲØĒ Ø§Ø¯Ų
Ų Ų
ØŦŲŲŲ Ø¨ŲØ°Ų Ø§ŲØ§ŲØąŲØ¨ !\n Ø§ØąØŦØš ŲŲØØŗØ§Ø¨ Ų
Ų ØŲŲŲ Ø§Ø§ŲØ§Ø¯Ų
Ų."
+general_5 : "اØēاØĒŲ ŲØ§Ø˛Ų
ØĒŲŲŲ Ø§Ø¯Ų
Ų Ø¨ØĩŲØ§ØŲØŠ اŲŲ
ŲØ§ŲŲ
اØĒ ŲŲØ§ ØĒØĒØ´ØĒØēŲ ."
+general_6 : "ŲØ§ ŲŲØŦد اØĒØĩØ§Ų ØŦØ§ØąŲ ..."
+
+# Classes - Telegram.py
+tg_1 : "** ØĒŲ
ØĒØŲ
ŲŲ Ø§ŲØ¨ŲØĒ ** اŲŲØĢŲØą ** Ų
Ų Ø§ŲØĒŲØ˛ŲŲØ§ØĒ ŲŲ Ø§ŲŲŲØĒ Ø§ŲØØ§ŲŲ.\n\n** ØØ§ŲŲ Ø¨ØšØ¯ ذŲŲ: ** {0} (__expected time__)"
+tg_2 : "ŲØ´Ų Ø§ŲØĒŲØ˛ŲŲ Ø§ØēاØĒŲ "
+
+# Core - Call.py
+call_1 : "Ø§ŲØ¨ŲØĒ ŲØˇŲب ØŖØ°Ų Ų
Ų **Ø§ŲØ§Ø¯Ų
Ų**ØØĒŲ ŲØļŲŲ Ø§ŲŲ
ØŗØ§ØšØ¯ ."
+call_2 : "اŲŲ
ØŗØ§ØšØ¯ Ų
ØØ¸ŲØą ŲØ§Ø˛Ų
ØĒŲØēŲ Ø§ŲØØ¸Øą .\n\n **Ø§ØŗŲ
اŲŲ
ØŗØ§ØšØ¯:** @{0}\n **Ų
ØšØąŲ Ø§ŲŲ
ØŗØ§ØšØ¯:** {1}"
+call_3 : "ØØ¯ØĢ ØŽØˇØŖ ØŖØĢŲØ§ØĄ Ø¯ØšŲØŠ ØØŗØ§Ø¨ اŲŲ
ØŗØ§ØšØ¯ ØĨŲŲ Ø§ŲØ¯ØąØ¯Ø´ØŠ.\n\n**ØŗØ¨Ø¨**: {0}"
+call_4 : "ŲØĒØˇŲب Ø§ŲØ¨ŲØĒ ** Ø¯ØšŲØŠ Ø§ŲŲ
ØŗØĒ؎دŲ
ŲŲ ØšØ¨Øą Ø§ŲØąØ§Ø¨Øˇ ** ØĨØ°Ų ŲØ¯ØšŲØŠ ØØŗØ§Ø¨ اŲŲ
ØŗØ§ØšØ¯ ØĨŲŲ Ų
ØŦŲ
ŲØšØŠ Ø§ŲØŽØ§ØĩØŠ بŲ."
+call_5 : "اŲŲ
ØŗØ§ØšØ¯ ØŲØŦŲ Ø¨ØšØ¯ ØŽŲ
Øŗ ØĢŲØ§ŲŲ Ø§ŲØĒØļØąŲ ŲØąØ¯Ų !"
+call_6 : "ØØŗØ§Ø¨ اŲŲ
ØŗØ§ØšØ¯ [{0}] ØĒŲ
Ø§ŲØ§ŲØļŲ
اŲ
Ø¨ŲØŦاØ.\n\nØ¨Ø¯ØĄ ØĒØ´ØēŲŲ Ø§ŲŲ
ŲØŗŲŲŲ Ø§ŲØĸŲ"
+call_7 : "**ØŲ ØĨØ¯Ø§ØąŲ ØļØ§Øą Ų
ŲØšØˇŲ **\n\n Ø§ŲØąØŦØ§ØĄ Ų
ØŗØ ØĩŲØ§ØŲØŠ **ØØ¸Øą اŲŲ
ØŗØĒ؎دŲ
ŲŲ** Ų
Ų Ø§ŲØ¨ŲØĒ."
+call_8 : "**ØŲ ØĨØ¯Ø§ØąŲ ØļØ§Øą Ų
ŲØšØˇŲ **\n\n Ø§ŲØąØŦØ§ØĄ Ų
ØŗØ ØĩŲØ§ØŲØŠ **اØļاŲŲ Ų
Ø´ØąŲŲŲ ØŦدد ** Ų
Ų Ø§ŲØ¨ŲØĒ."
+call_9 : "**ŲØ´Ų ØĒبدŲŲ Ø§ŲØ§ØēŲŲØŠ ** \n Ø§ŲØąØŦØ§ØĄ Ø§ØŗØĒ؎داŲ
/skip ŲØĒØēŲŲØą Ø§ŲŲ
ØŗØ§Øą Ų
ØąØŠ ØŖØŽØąŲ. "
+call_10 : "ØĒŲØ˛ŲŲ Ø§ŲŲ
ØŗØ§Øą Ø§ŲØĒØ§ŲŲ Ų
Ų ŲØ§ØĻŲ
ØŠ Ø§ŲØĒØ´ØēŲŲ"
+call_11 : "Ø§ŲØąØŦØ§ØĄ ØĨØļØ§ŲØŠ @ {0} ØĨŲŲ ŲŲØ§ØĒŲ [اŲŲ
ØšØąŲ: {1}].\n\n ŲØĒØšØ°Øą ØšŲŲ Ø§ŲØ¨ŲØĒ Ø§ŲØØĩŲŲ ØšŲŲ ØĒŲØ§ØĩŲŲ Ø§ŲŲŲØ§ØŠ."
+
+# PLUGINS - Auth.py
+auth_1 : "ŲŲ
ŲŲ ØŖŲ ŲŲŲŲ ŲØ¯ŲŲ 20 Ų
ØŗØĒ؎دŲ
ŲØ§ ŲŲØˇ ŲŲ ŲØ§ØĻŲ
ØŠ اŲŲ
ØŗØĒ؎دŲ
ŲŲ Ø§ŲŲ
ØšØĒŲ
دŲŲ (AUL) ŲŲ
ØŦŲ
ŲØšØĒŲ"
+auth_2 : "ØĒŲ
ØĒ Ø§ŲØĨØļØ§ŲØŠ ØĨŲŲ ŲØ§ØĻŲ
ØŠ اŲŲ
ØŗØĒ؎دŲ
ŲŲ Ø§ŲŲ
ØšØĒŲ
دŲŲ ŲŲ
ØŦŲ
ŲØšØĒŲ."
+auth_3 : "باŲŲØšŲ ŲŲ ŲØ§ØĻŲ
ØŠ اŲŲ
ØŗØĒ؎دŲ
ŲŲ Ø§ŲŲ
ØšØĒŲ
دŲŲ."
+auth_4 : "ØĒŲ
ØĒ ØĨØ˛Ø§ŲØĒŲ Ų
Ų ŲØ§ØĻŲ
ØŠ اŲŲ
ØŗØĒ؎دŲ
ŲŲ Ø§ŲŲ
ØšØĒŲ
دŲŲ ŲŲØ°Ų اŲŲ
ØŦŲ
ŲØšØŠ."
+auth_5 : "اŲŲ
ØŗØĒ؎دŲ
اŲŲ
ØŗØĒŲØ¯Ų ŲŲØŗ Ų
ØŗØĒ؎دŲ
ŲØ§ Ų
ØĩØąØŲا ŲŲ."
+auth_6 : "ØĨØØļØ§Øą اŲŲ
ØŗØĒ؎دŲ
ŲŲ Ø§ŲŲ
ØĩØąØ ŲŲŲ
... Ø§ŲØąØŦØ§ØĄ Ø§ŲØ§ŲØĒØ¸Ø§Øą"
+auth_7 : "**ŲØ§ØĻŲ
ØŠ اŲŲ
ØŗØĒ؎دŲ
ŲŲ Ø§ŲŲ
ØšØĒŲ
دŲŲ [AUL]:**\n\n"
+auth_8 : "â ØŖØļŲŲØĒ Ų
Ų ŲØ¨Ų:-"
+
+# PLUGINS - Admins
+admin_1 : "اŲŲ
ŲØŗŲŲŲ Ų
ŲŲŲØŠ Ø¨Ø§ŲŲØšŲ."
+admin_2 : "đ§ØĒŲ
اŲŲØ§Ų ØĒØ´ØēŲŲ Ø§ŲŲ
ŲØŗŲŲŲ Ų
Ų ŲŲØ¨Ų {}!"
+admin_3 : "ŲØĒØĩŲØą ŲŲØĒŲ ŲØšØ¯ Ø§ŲŲ Ø´Ų
ØŗŲŲ ØēŲØą Ų
ØŗØĒØĻŲŲ."
+admin_4 : "đ§ ØĒŲ
Ø§ØŗØĻŲØ§Ų اŲŲ
ŲØŗŲŲŲ Ø¨ŲØ§ØŗØˇØŠ {}!"
+admin_5 : "ŲŲŲ ØŖØąŲØ¨ ŲŲ Ø§ØĩŲØ§ Ų
ŲØĒŲŲ
Ų đ¤."
+admin_6 : "đ§ ØĒŲ
ŲØĒŲ
Ø§ŲØĩŲØĒ Ø¨ŲØ§ØŗØˇØŠ {}!"
+admin_7 : "ØĒŲ
ØĒ ØĨؚاد؊ ØĩŲØĒ Ø§ŲŲ
ŲØŗŲŲŲ Ø¨Ø§ŲŲØšŲ."
+admin_8 : "đ§ ŲŲØ§ ؚاد اذا ØŦŲØĒ Ų
Ø¯ŲØŽŲŲ
شؚدŲŲ
Ų
Ø´ØēŲŲŲŲ𤨠\n\n ØĒŲ
Ø§ØąØŦاؚ Ø§ŲØĩŲØĒ Ø¨ŲØ§ØŗØˇØŠ {}!"
+admin_9 : "đ§ Ø§ŲŲ
ØØ§Ø¯ØĢØŠ Ø§ŲØĩŲØĒŲØŠ Ø§ŲØĒŲØĒ Ø¨ŲØ§ØŗØˇØŠ {}!"
+admin_10 : "đ§ ØĒØŽØˇŲØĒ Ø§ŲØ§ØēŲŲØŠ Ø¨ŲØ§ØŗØˇØŠ {}!. ŲØ§ ØĒŲØŦد اØēاŲŲ Ø§ØŽØąŲ ŲŲ Ø§ŲØ§ŲØĒØ¸Ø§Øą."
+admin_11 : "ØØ¯ØĢ ØŽØˇØŖ ŲŲ ØĒØēŲŲØą Ø§ŲاØēŲŲØŠ Ø§ŲŲ **{0}**\n\nØ§ŲØąØŦØ§ØĄ Ø§ØŗØĒ؎داŲ
/skip Ų
ØŦØ¯Ø¯ŲØ§."
+admin_12 : "ØĒØšØ°Øą Ø§ŲØĒØŽØˇŲ ØĨŲŲ Ų
ØŗØ§Øą Ų
ØšŲŲ Ø¨ØŗØ¨Ø¨ ØĒØ´ØēŲŲ Ø§ŲØŲŲØŠ . Ø§ŲØąØŦØ§ØĄ ØĒØšØˇŲŲ ØŲŲØŠ Ø§ŲŲØšØ¨ ØšØ¨Øą `/loop ØĒØšØˇŲŲ` ŲØ§ØŗØĒ؎داŲ
ŲØ°Ų اŲŲ
ŲØ˛ØŠ."
+admin_13 : "Ø§ŲØąØŦØ§ØĄ Ø§ØŗØĒ؎داŲ
ØŖØąŲØ§Ų
ØąŲŲ
ŲØŠ ŲŲ
ØŗØ§ØąØ§ØĒ Ų
ØØ¯Ø¯ØŠ Ø Ų
ØĢŲ 1 ØŖŲ 2 ØŖŲ 4 ŲŲ
ا ØĨŲŲ Ø°ŲŲ"
+admin_14 : "ŲØŦب ØĒŲŲØą Ø§ØēŲŲØĒŲŲ ØšŲŲ Ø§ŲØ§ŲŲ ŲŲ ŲØ§ØĻŲ
Ų Ø§ŲØĒØ´ØēŲŲ ŲŲØĒØŽØˇŲ اŲŲ
ØØ¯Ø¯ Ø ØĒØŲŲ Ų
Ų Ø§ŲŲØ§ØĻŲ
Ų /queue"
+admin_15 : "ŲØ§ ØĒŲØŦد Ų
ØŗØ§ØąØ§ØĒ ŲØ§ŲŲØŠ ŲŲ ŲØ§ØĻŲ
ØŠ Ø§ŲØ§ŲØĒØ¸Ø§Øą ŲŲŲŲŲ
ØŠ Ø§ŲØĒŲ ŲØ¯Ų
ØĒŲØ§. Ø§ŲØąØŦØ§ØĄ ا؎ØĒŲØ§Øą Ø§ŲØŖØąŲاŲ
بŲŲ 1 Ų {0}"
+admin_16 : "ŲØ´Ų Ø§ŲØĒØŽØˇŲ ØĨŲŲ Ų
ØŗØ§Øą Ų
ØšŲŲ.\n\n ØĒØŲŲ Ų
Ų ŲØ§ØĻŲ
ØŠ Ø§ŲØ§ŲØĒØ¸Ø§Øą اŲŲØŗØąŲ بØŲŲŲ /queue"
+admin_17 : "{0}.. Ø§ŲØĒØ¸Øą ŲŲŲŲŲØ§"
+admin_18 : "ŲŲ
ØŖØŦد ŲØ§ØĻŲ
Ų Ø§ŲØ§Ø¯Ų
ŲŲØŠ\n\n ŲØąØŦŲ Ø§ØŗØĒ؎داŲ
Ø§ŲØ§Ų
Øą /admincache ØŖŲ /reload"
+admin_19 : "ŲØŦب Ø§Ų ØĒŲŲŲ Ų
Ø´ØąŲ Ų
Øš ØĩŲØ§ØŲØŠ اŲŲ
ŲØ§ŲŲ
اØĒ ŲØĒŲŲŲ
Ø¨ŲØ°Ų اŲŲ
ŲŲ
ØŠ .\nاذا Ø§ŲØĒ Ų
Ø´ØąŲ Ø¨Ø§ŲŲØšŲ, ØĒØąØŗŲØĒ ŲØ§ØĻŲ
Ų Ø§ŲØ§Ø¯Ų
ŲŲØŠ /admincache "
+admin_20 : "ØĒŲ
ØĒØąØŗŲØĒ ŲØ§ØĻŲ
ØŠ Ø§ŲØ§Ø¯Ų
ŲŲØŠ."
+admin_21 : "ŲØ§ ŲŲØŦد Ø´ŲØĄ ŲŲ ŲØ§ØĻŲ
Ų Ø§ŲØ§ŲØĒØ¸Ø§Øą "
+admin_22 : "ŲØ´Ų Ø§ŲØĒØ¨Ø¯ŲŲ Ø§ŲØšØ´ŲاØĻŲ. \n\n ØĒØŲŲ Ų
Ų ŲØ§ØĻŲ
ØŠ Ø§ŲØ§ŲØĒØ¸Ø§Øą: /queue"
+admin_23 : "** ØĒŲ
ØĒØąØĒŲØ¨ ŲØ§ØĻŲ
ØŠ Ø§ŲØ§ŲØĒØ¸Ø§Øą ØšØ´ŲØ§ØĻŲŲØ§ ØØŗØ¨ {0} ** \n\n ØĒØŲŲ Ų
Ų ØĒØąØĒŲØ¨ ŲØ§ØĻŲ
ØŠ Ø§ŲØ§ŲØĒØ¸Ø§Øą : /queue"
+admin_24 : "**ØĨØŗØĒØšŲ
اŲ:**\n/loop [ØĒŲ
ŲŲŲ / ØĒØšØˇŲŲ] ØŖŲ [ØąŲŲ
بŲŲ 1-10] \n\n** Ų
ØĢاŲ: ** /loop 5"
+admin_25 : "Ø§ŲØšØŦŲØŠ ŲŲØšŲØĒ Ų
Ų {0} اŲŲ **{1}** Ų
ØąØ§ØĒ . Ø§ŲØ¨ŲØĒ ØŗŲŲŲŲ
باؚاد؊ ØĒØ´ØēŲŲ Ø§ŲŲ
ŲØŗŲŲŲ Ø§ŲŲ
ØŽØĒØ§ØąØŠ **{1}** Ų
ØąØŠ "
+admin_26 : "Ø§ŲØąØŦØ§ØĄ ا؎ØĒŲØ§Øą ØąŲŲ
بŲŲ 1-10 ŲØĒŲØšŲŲ Ų
ŲØ¯ Ø§ŲØŲŲØŠ "
+admin_27 : "ØĒŲ
ØĒØšØˇŲŲ Ų
ŲØ¯ Ø§ŲØŲŲØŠ"
+admin_28 : "**ØĨØŗØĒØšŲ
اŲ:**\n/seek or /seekback [اŲŲ
د؊ Ø¨Ø§ŲØĢŲØ§ŲŲ]"
+admin_29 : "Ø§ŲØąØŦØ§ØĄ Ø§ØŗØĒ؎داŲ
ؚدد Ø§ŲØĢŲØ§ŲŲ Ø§ŲŲ
د؊ Ų
ØĢŲ 10-20-30 ØĢاŲŲØŠ ŲŲØĒŲØ§ØšØ¨"
+admin_30 : "ØĸØŗŲ ŲŲŲŲ ŲØ§ ŲŲ
ŲŲŲ Ø§ŲØ¨ØØĢ ØšŲ Ø§ŲØ¨ØĢ Ø§ŲØŦØ§ØąŲ ØĒØ´ØēŲŲŲ. ŲŲ
ŲŲ ŲŲØˇ ØĒØŽØˇŲŲØ§ ØŖŲ ØĨŲŲØ§ŲŲØ§."
+admin_31 : "Ø§ŲØ¨ŲØĒ ØēŲØą ŲØ§Ø¯Øą ØšŲŲ Ø§ŲØĒØēŲŲØą Ø¨ØŗØ¨Ø¨ اŲŲ
د؊ Ø§ŲØˇŲŲŲØŠ Ø§ŲŲ
ØšØˇØ§ØŠ. ØĒØØĒØ§ØŦ ØĨŲŲ Ø§ŲØĒØēŲŲØą ØšŲ Ų
د؊ ØŖŲŲ ŲØĒØ°ŲØą ØŖŲŲ ŲØĒØ¨ŲŲ ŲŲØĒ ŲØ¯ØąŲ 10 ØĢŲØ§ŲŲ Ø¨ØšØ¯ Ø§ŲØĒŲØ§ØšØ¨ .\n\n ŲØĒŲ
Ø§ŲØĒØ´ØēŲŲ ØØ§ŲŲŲØ§ ** {0} ** دŲŲŲØŠ Ų
Ų ** {1} ** دŲŲŲØŠ"
+admin_32 : "Ø§ŲØąØŦØ§ØĄ Ø§ŲØ§ŲØĒØ¸Ø§Øą ... ŲØĒŲ
Ø§ŲØ§Ų
Øą ."
+admin_33 : "ØĒŲ
Ø§ŲØĒŲØ§ØšØ¨ ŲŲ Ø§ŲØ¨ØĢ Ų ŲØĩŲ ØĨŲŲ {0} دŲŲŲØŠ"
+admin_34 : "ŲØ´Ų Ø§ŲØ§Ų
Øą !."
+
+# Bot
+
+# Start
+start_1 : "ŲØ§ ŲŲØŲŲŲ
ØąŲŲÛ ŲŲØ§ØĒŲŲ ŲŲ
اŲŲØŽŲ
ŲŲ đđ¤{0}.\n\n {1} ŲØšŲ
Ų Ø§ŲØ§Ų ⨠.\n\n ØĒØšØąŲ ØšŲŲ Ų
ا ŲŲ
ŲŲŲŲ ŲØšŲŲ Ų
Ų ØŽŲØ§Ų Ø§ŲØļØēØˇ ØšŲŲ Ø˛Øą **Ø§ŲØ§ŲاŲ
Øą** ŲŲ Ø§ŲØ§ØŗŲŲ ØŖŲ ØĨØļØ¨Øˇ اؚداداØĒ Ø§ŲØ¨ŲØĒ ŲŲ Ų
ØŦŲ
ŲØšØĒŲ Ų
Ų ØŽŲØ§Ų Ø˛Øą **Ø§ŲØ§ØšØ¯Ø§Ø¯Ø§ØĒ** đĢâĨī¸."
+start_2 : "** ØŖŲŲØ§ ØšØ˛ŲØ˛Ų Ø§ŲØ§ Ø¨ŲØĒ Ø§ØŗŲ
Ų {0}**.\n\nŲØ¸ŲŲØĒŲ ŲŲ ØĒØ´ØēŲŲ Ø§ŲØ§ØēاŲŲ ŲŲ
ŲØ§ØˇØš اŲŲŲØ¯ŲŲ ŲŲ Ø§ŲŲ
ŲØ§ŲŲ
اØĒ بØĩŲØ§ØŲاØĒ Ų
ØĒØˇŲØąØŠ ŲŲŲ
ŲŲŲ Ø§ŲØĒØŲŲ
بشŲŲ ŲØ§Ų
Ų ØšŲŲ Ø§ŲØ¨ŲØĒ Ų
Ų ØŽŲØ§Ų Ø§ŲØ§ŲاŲ
Øą ŲØ§ŲØ´ØąØ Ø§ŲŲ
Ø¨ØŗØˇ đĢđ."
+start_3 : "Ų
ØąØØ¨Ø§ Ø¨Ų {0}\n\n ŲØ§ Ø§ØØĒØ§ØŦ ØŖŲ **اذŲŲØ§ØĒ Ų
Ø´ØąŲŲŲ ** ŲŲØšŲ
Ų ( ØØĒŲ ØŖØˇŲØ¨ Ų
ŲŲ Ø°ŲŲ ).\n\n ŲŲØ˛Øą اŲŲ
ØŗØ§ØšØ¯ :- @{1}\nØ§ŲØ¯Ų اŲŲ
ØŗØ§ØšØ¯:- {2}"
+start_4 : "Ø§ŲØļŲ
Ų
اŲŲ {0} [{1}] ŲŲØĒŲ ØĨŲŲ Ų
ØØ§Ø¯ØĢØĒŲ."
+start_5 : "Ø§ŲØļŲ
ØšØļŲ Ų
Ų {0} اŲŲ
ØˇŲØąŲŲ [{1}] ŲŲØĒŲ ØĨŲŲ Ų
ØØ§Ø¯ØĢØĒŲ."
+start_6 : "âī¸ **Ø§ØØĒØ§ØŦ Ø§Ų ØĒŲŲŲ Ø§ŲŲ
ØŦŲ
ŲØšØŠ ØŽØ§ØąŲØŠ** âī¸\n\nØ§ŲØąØŦØ§ØĄ ØĒØŲŲŲ **Ų
ØŦŲ
ŲØšØĒŲ** اŲŲ **Ų
ØŦŲ
ŲØšØŠ ØŽØ§ØąŲØŠ** ØĢŲ
ØŖØļŲŲŲ Ų
ØŦددا ŲŲØ§ .\n\n **ŲŲŲ ØŖØŲŲ Ø§ŲŲ
ØŦŲ
ŲØšØŠ ØŽØ§ØąŲØŠ Ø ?**\nâ
اØŦØšŲ ØŗØŦŲ Ø§ŲŲ
ØØ§Ø¯ØĢاØĒ **Ø¸Ø§ŲØą ** اŲŲØ§."
+start_7 : "**Ų
ØŦŲ
ŲØšØŠ Ų
ØØ¸ŲØąØŠ **\n\n Ų
ØŦŲ
ŲØšØĒŲ Ų
ØØ¸ŲØąØŠ Ų
Ų ŲØ¨Ų اŲŲ
ØˇŲØąŲŲ . Ø§ŲØąØŦØ§ØĄ Ų
ØąØ§ØŗŲØŠ Ø§ØØ¯ اŲŲ
ØˇŲØąŲŲ ŲŲŲ Ø§ŲØØ¸Øą ØšŲŲ . ØĒØŲŲ Ų
Ų [Sudolist Ų
Ų ŲŲØ§]({0})"
+
+# Help
+help_1 : "**اŲŲØą ØšŲŲ Ø§ŲØŖØ˛ØąØ§Øą ØŖØ¯ŲØ§Ų ŲŲ
Ø˛ŲØ¯ Ų
Ų Ø§ŲŲ
ØšŲŲŲ
اØĒ.**\n\nØĨذا ŲŲØĒ ØĒŲØ§ØŦŲ ØŖŲ Ų
Ø´ŲŲØŠ ŲŲ Ø§ŲØŖŲ
Øą Ø ŲŲ
ŲŲŲ Ø§ŲØ§ØĒØĩØ§Ų Ø¨Ų
اŲŲ Ø§ŲØ¨ŲØĒ ØŖŲ ØˇŲØ¨ Ø§ŲØ¯ØšŲ
Ų
Ų Ø§ŲŲ
ØˇŲØąŲŲ .\n\nŲŲ Ø§ŲØ§ŲاŲ
Øą ØĒØŗØĒ؎دŲ
Ų
Øš Ø§ŲØ§Ų
Øą : /"
+help_2 : "ØĒŲØ§ØĩŲ Ų
ØšŲ Ų
ØŗØ§ØĄØ§ ŲŲŲ
ØŗØ§ØšØ¯ØŠ ."
+
+# Settings
+setting_1 : "âī¸ **اؚداداØĒ Ø¨ŲØĒ Ø§ŲŲ
ŲŲØ˛Ų **\n\nđ**اŲŲ
ØŦŲ
ŲØšØŠ:** {0}\nđ**Ø§ŲØ¯Ų اŲŲ
ØŦŲ
ŲØšØŠ:** `{1}`\n\nđĄ**ØĒØŲŲ
Ø¨Ø§ŲØ§Ø˛ØąØ§Øą ØŖØ¯ŲØ§Ų ŲŲØĒØŲŲ
باؚداداØĒ Ø§ŲØ¨ŲØĒ .**"
+setting_3 : "âī¸ Ų
ا ŲØ°Ø§ \n\n1) Ų
Ø¨Ø§Ø´Øą: ØšŲØ¯ ØĒŲØšŲŲŲØ§ ØŗŲØĒŲ
Ø§ŲØ´ØēŲŲ Ų
Ø¨Ø§Ø´ØąØŠ Ø¨ØŖØØ¯ Ø§ŲØ§ŲاŲ
Øą ŲŲØ¯ŲŲ Ø§Ų ØĩŲØĒ .\n\n2) Ø§Ø˛ØąØ§Øą: ØšŲØ¯ ØĒØ´ØēŲŲŲØ§ ØŗŲØĒŲ
ظŲŲØą Ø§ŲØ§Ø˛ØąØ§Øą ØšŲ Ø§ØšØˇØ§ØĄ ØŖŲ
Øą Ø§ŲØĒØ´ØēŲŲ ØĨŲ ŲŲØĒ ØĒØąŲØ¯ ŲŲØ¯ŲŲ ØŖŲ
ØĩŲØĒ ."
+setting_4 : "âī¸ Ų
ا ŲØ°Ø§ \n\nđĨ Ø§ŲØŦŲ
ŲØš: ØŦŲ
ب𠨧ب§ØšØļØ§ØĄ ŲØŗØĒØˇŲØšŲŲ Ø§ØŗØĒ؎داŲ
Ø§ŲØ§Ų
Øą Ø§ŲØ§Ø¯Ų
Ų (skip, pause, resume etc) ŲŲ ŲØ°Ų اŲŲ
ØŦŲ
ŲØšØŠ.\n\nđ Ø§ŲØ§Ø¯Ų
ŲŲØŠ ŲŲØˇ: Ø§ŲØ§Ø¯Ų
ŲŲØŠ ŲŲØˇ Ų Ø§ŲØØŗØ§Ø¨Ø§ØĒ اŲŲ
ŲØĢŲŲ Ø¨ŲØ§ ŲØŗØĒØˇŲØšŲŲ Ø§ØŗØĒ؎داŲ
Ø§ŲØ§Ų
Øą Ø§ŲØ§Ø¯Ų
Ų ."
+setting_5 : "ŲŲ
ØŖØŦد ØØŗØ§Ø¨Ø§ØĒ Ų
ŲØĢŲŲŲ\n\nŲŲ
ŲŲŲ ØąŲØš Ø§Ų ØšØļŲ ŲŲØŗØĒØˇŲØš Ø§ØŗØĒ؎داŲ
Ø§ŲØ§Ų
Øą Ø§ŲØ§Ø¯Ų
Ų Ų
Ų ØŽŲØ§Ų /auth ŲØ§Ø˛Ø§ŲØĒŲ Ø¨Ø§ØŗØĒ؎داŲ
/unauth"
+setting_9 : "âī¸Ų
ا ŲØ°Ø§ ?\n\nØšŲØ¯ ØĒŲØšŲŲŲ ØŗŲŲŲŲ
Ø§ŲØ¨ŲØĒ Ø¨ØØ°Ų Ø§ŲØąØŗØ§ØĻŲ Ø§ŲŲØĒŲ ØąØŗŲŲØ§ بؚد {0} ŲŲØĒØŖŲد Ų
Ų Ø¨ŲØ§ØĄ Ų
ØŦŲ
ŲØšØĒŲ ŲØ¸ŲŲØŠ ."
+setting_10 : "âī¸ Ų
ا ŲØ°Ø§ ?\n\n1) اŲŲ
ØŦŲ
ŲØšØŠ: ØĒŲŲŲ
بØĒØ´ØēŲŲ Ø§ŲŲ
ŲØŗŲŲŲ ŲŲ Ø§ŲŲ
ØŦŲ
ŲØšØŠ ØŲØĢ ŲØĒŲ
ØĨØšØˇØ§ØĄ Ø§ŲØŖŲ
Øą. \n\n2) اŲŲŲØ§ØŠ: ØĒŲŲŲ
بØĒØ´ØēŲŲ Ø§ŲŲ
ŲØŗŲŲŲ ŲŲ Ø§ŲŲŲØ§ØŠ Ø§ŲØĒŲ ØĒØąŲØ¯Ųا. ØĒØšŲŲŲ Ų
ØšØąŲ Ø§ŲŲŲØ§ØŠ ØšØ¨Øą /channelplay"
+setting_11 : "âī¸ Ų
ا ŲØ°Ø§Ø \n\n1) Ø§ŲØŦŲ
ŲØš: ŲŲ
ŲŲ ŲØŖŲ Ø´ØŽØĩ Ų
ŲØŦŲØ¯ ŲŲ ŲØ°Ų اŲŲ
ØŦŲ
ŲØšØŠ ØĒØ´ØēŲŲ Ø§ŲŲ
ŲØŗŲŲŲ ŲŲØ§. \n\n2) اŲŲ
ØŗØ¤ŲŲ ŲŲØˇ: ŲŲ
ŲŲ ŲŲŲ
ØŗØ¤ŲŲŲŲ ŲŲØˇ ØĒØ´ØēŲŲ Ø§ŲŲ
ŲØŗŲŲŲ ŲŲ ŲØ°Ų اŲŲ
ØŦŲ
ŲØšØŠ."
+setting_12 : "â ŲŲØŗ ŲØ¯ŲŲ Ų
ØšØąŲ ŲŲØ§ØŠ Ų
ØØ¯Ø¯ ŲŲØļØš اŲŲŲØ§ØŠ. ŲØąØŦŲ ØĒØØ¯Ųد Ų
Øš /channelplay."
+setting_13 : "ŲØ§ Ø§ØŗØĒØˇŲØš ØĒØēŲŲØą ŲØļØš Ø§ŲØĒØ´ØēŲŲ ŲØ§ŲŲ
ŲØ§ŲŲ
Ų Ų
ŲØ´ØēŲØŠ Ø Ø§ŲØąØŦØ§ØĄ Ø§ŲØ§ŲŲØ§Ų Ų
Ų ØŽŲØ§Ų /stop."
+setting_14 : "âī¸ Ų
ا ŲØ°Ø§ ?\n\nØšŲØ¯ ØĒŲØšŲŲŲ ØŗŲŲŲŲ
Ø§ŲØ¨ŲØĒ Ø¨ØØ°Ų Ø§ŲØ§ŲاŲ
Øą (/play, /pause, /shuffle, /stop Ø§ŲØŽ..) Ų
Ø¨Ø§Ø´ØąØŠ .\n\nØ§ŲØ¨ŲØĒ ØŗŲØØ°Ų ØąØŗØ§ŲØŠ Ø§ŲØ§Ø¯Ų
Ų ØšŲØ¯ ØĒŲŲŲØ° Ø§ŲØ§Ų
Øą Ų
Ø¨Ø§Ø´ØąØŠ ."
+setting_15 : "ŲØ´Ų ŲŲ ØŲ اŲŲØ¸ŲØą, ŲØ´Ų ŲŲ Ø§ŲŲ
ŲŲ
ØŠ Ø ØĒØŖŲØ¯ Ų
Ų ØŖŲŲ ØŖØļŲØĒ Ø§ŲØ¨ŲØĒ ŲŲ ŲŲØ§ØĒŲ ŲŲŲ
ØĒ بØĒØąŲŲØĒŲ ŲŲ
ØŗØ¤ŲŲ.\n\nØØ§ŲŲ Ø§ØļØ¨Øˇ /channelplay Ų
ØŦددا.."
+setting_16 : "âī¸ Ų
ا ŲØ°Ø§ ?\n\n ØšŲØ¯ ØĒŲØšŲŲŲØ§ ØŗŲŲŲŲ
Ø§ŲØ¨ŲØĒ Ø¨Ø§ØąØŗØ§Ų ŲŲ 1-2 ØŗØ§ØšØŠ Ø§ŲØ§ŲاŲ
Øą ŲŲØĒØšŲŲŲ
(ŲŲŲŲØŠ Ø§ØŗØĒ؎داŲ
ŲØ§, ŲØŖŲ Ø§ŲØŽŲØ§ØąØ§ØĒ Ø§ŲØļŲ ŲØ§ŲŲØĢŲØą Ų
Ų Ø§ŲØ§Ų
ŲØą ) ØšØ´ŲØ§ØĻŲØ§."
+
+
+set_cb_1 : "دŲŲŲØŠ ØŲŲŲ
ØąŲŲÛ ..."
+set_cb_2 : "ØĢŲØ§ŲŲ Ú¯ŲØ¨ŲŲ ŲØŗØŠ Ø§Ø¯Ø˛..."
+set_cb_3 : "؎ادŲ
Ų ŲØąŲØŲ ŲØŗØŠ ..."
+set_cb_4 : "ØĒدŲŲ ×¤ŲŲØ§ØĒŲŲÛ Ø¯ŲŲŲØŠ ..."
+set_cb_5 : "ŲØĒØŖŲ
ØąŲŲ ØŖŲ
Øą ØĸØēاØĒŲ ŲØØ¸ØŠ Ø¨Øŗ ..."
+set_cb_6 : "ŲØĒŲ
Ø§ŲØŖŲ
Øą."
+set_cb_7 : "ŲØŗØŠ اØŦŲØ¨ŲŲ ØąØ§ØŗŲŲ
ØŲاØĒŲ ØŽØ§Ø¯Ų
Ų Ø§ŲŲ ."
+set_cb_8 : "ØĒØĒŲ
Ø§ŲØ§ØšØ§Ø¯ØŠ.."
+
+# Misc
+ustats_1 : "ŲŲ
ØŖØŦد ØŖŲ Ų
ØŗØĒ؎دŲ
."
+ustats_2 : "ØĒŲØ§ŲŲŲØ§ !, ŲŲØ¯ Ø´ØēŲŲØĒ **{0}** اØēŲŲØŠ Ų
Ų ØŖØĩŲ **{1}** Ų
ØąØŠ.\n\nØĒŲØ¨ {2} ØØĒŲ Ø§ŲØĸŲ :\n\n"
+
+gstats_1 : "ØĒØŲ
ŲŲ Ø§ŲØ§ØØĩاØĻŲØ§ØĒ Ø§ŲØšØ§ŲŲ
ŲØŠ ... ØąØ¨Ų
ا ØŗŲØŖØŽØ° ŲŲØĒŲØ§ ..."
+gstats_2 : "ŲŲ
ØŖØŦد Ø´ŲØĄ ."
+gstats_3 : "ØŦŲØ¨ Ø§ØØĩاØĻŲØ§ØĒ Ø§ŲØĒŲØ¨ 10 {0} ŲŲØ¨ŲØĒ, ØąØ¨Ų
ا ØŗŲØŖØŽØ° ŲŲØĒŲØ§.."
+gstats_4 : "** ØĨØŦŲ
اŲŲ Ø§ŲØˇŲباØĒ ŲŲØ¨ŲØĒ: ** {0} \n\n {1} ØĒŲ
ØĒØ´ØēŲŲ ** {2} ** Ų
ŲØ§ØˇØš ØĩŲØĒŲØŠ ØØĒŲ Ø§ŲØĸŲ Ø¨ØšØ¯Ø¯ ŲØ§ØĻŲ Ų
Ų ** {3} ** Ų
ØąØŠ. \n\n * * ØŖŲŲ
{4} اŲŲ
ØŗØ§ØąØ§ØĒ: ** \n"
+gstats_5 : "**ØĒŲØ¨ {0} Ų
ØŦŲ
ŲØšØ§ØĒ Ų
Ų {1}:**\n\n"
+gstats_6 : "**ØĒŲØ¨ {0} Ų
ØŗØĒ؎دŲ
ŲŲ Ų
Ų {1}:**\n\n"
+gstats_7 : "ŲØ°Ų اŲŲ
ØŦŲ
ŲØšØŠ ŲØ¯ Ø´ØēŲŲØĒ **{0}** اØēŲŲØŠ ØØĒŲ Ø§ŲØ§Ų Ų
Ų ØŖØĩŲ **{1}** Ų
ØąØŠ . \n\n ØĒŲØ¨ {2} Ų
Ų ŲØ§Ų
Ø¨Ø§ŲØĒØ´ØēŲŲ ŲŲ ŲØ°Ų اŲŲ
ØŦŲ
ŲØšØŠ:\n\n"
+gstats_8 : "ŲØĒŲ
ØŦŲØ¨ Ų
ØšŲŲŲ
اØĒ Ø§ŲØ¨ŲØĒ ..."
+gstats_9 : "**ØĒŲØ¨ 10 ŲŲØŗŲØąŲØą ** \n\n ا؎ØĒØą Ų
Ų Ø§ŲØ§ØŗŲŲ ŲŲ
ØšØąŲØŠ Ø§ŲØĒŲØ¨ 10 ŲŲØŗŲØąŲØą ŲØ§Ų
Ų ."
+gstats_10 : "***ØĒŲØ¨ 10 ŲŲØŗŲØąŲØą of {0}**\n\nا؎ØĒØą Ų
Ų Ø§ŲØ§ØŗŲŲ ŲŲ
ØšØąŲØŠ Ø§ŲØĒŲØ¨ 10 ŲŲØŗŲØąŲØą ŲØ§Ų
Ų."
+gstats_11 : "**Ø§ŲØĒŲØ¨ Ø§ŲØšØ§ŲŲ
Ų Ų
Ų {0}** \n ا؎ØĒØą Ų
Ų Ø§ŲØ§ØŗŲŲ ŲŲ
ØšØąŲØŠ Ø§ŲØĒŲØ¨ 10 ŲŲØŗŲØąŲØą ŲØ§Ų
Ų. \n\n ŲŲ ØĒŲØØĩ ØŖŲØļŲ Ø§ŲØ§ØēاŲŲ, اŲŲ
ØŦŲ
ب𨧨Ē, اŲŲ
ØŗØĒ؎دŲ
ŲŲ ŲØ¨ØšØļ Ø§ŲØ§ØēØąØ§Øļ Ø§ŲØ§ØŽØąŲ, Ø§ØŗØĒ؎دŲ
/gstats"
+
+
+# Play
+
+#Play Callback
+playcb_1 : "اŲ
Ø´Ų ŲŲŲ ŲØ§Ų Ų
Ų Ø§ŲŲ! Ø§Ø¨ØØĢ ØšŲ Ø§ØēŲŲØĒŲ Ø§ŲØŽØ§ØĩŲ."
+playcb_2 : "ØŦŲØ¨ اŲŲ
ØŗØ§Øą Ø§ŲØĒØ§ŲŲ"
+
+# Channel Play
+cplay_1 : "ŲŲ
ŲŲŲ ØĒØ´ØēŲŲ Ø§ŲŲ
ŲØŗŲŲŲ ŲŲ ŲŲØ§ØĒŲ Ų
Ų ØŽŲØ§Ų ŲØ°Ų اŲŲ
ØØ§Ø¯ØĢØŠ [{0}] ŲØŖŲ ŲŲØ§ØŠ . \n\n**ŲØąØ¨Øˇ ŲŲØ§ØĒŲ :**\n`/{1} [Ø§ŲØ¯Ų اŲŲŲØ§ØŠ]`"
+cplay_2 : "ŲØ°Ų اŲŲ
ØØ§Ø¯ØĢØŠ ØēŲØą Ų
ØąØ¨ŲØˇØŠ Ø¨ØŖŲ ŲŲØ§ØŠ."
+cplay_3 : "اŲŲŲØ§ØŠ ØēŲØąØĒ ØĨŲŲ {0}\n\n__Ų
ØšØąŲ Ø§ŲŲŲØ§ØŠ__: {1}"
+cplay_4 : "ŲØ´Ų ŲŲ Ø§ŲŲØĩŲŲ ŲŲŲŲØ§ØŠ.\n\nØĒØ§ŲØ¯ Ų
Ų Ø§ØļاŲŲ Ø§ŲØ¨ŲØĒ ŲŲŲŲØ§ØŠ ŲØąŲØšŲ Ų
Ø´ØąŲ Ø¨ŲØ§ .\nØĢŲ
Ø§ØąØŗŲ /channelplay"
+cplay_5 : "ŲØĒŲ
دؚŲ
اŲŲŲŲØ§ØĒ ŲŲØˇ."
+cplay_6 : "ŲØŦب Ø§Ų ØĒŲŲŲ ØŖŲØĒ **اŲŲ
اŲŲ** ŲŲŲŲØ§ØŠ [{0}] ŲØąØ¨Øˇ ŲØ°Ø§ اŲŲØąŲب .\n**Ų
اŲŲ Ø§ŲŲŲØ§ØŠ:** @{1}\n\nØ¨Ø¯ŲØ§Ų Ų
Ų Ø°ŲŲ Ø ŲŲ
ŲŲŲ ØąØ¨Øˇ Ų
ØŦŲ
ŲØšØĒŲ Ø¨ØĒŲŲ Ø§ŲŲŲØ§ØŠ ØĢŲ
Ų
ØØ§ŲŲØŠ Ø§ŲØ§ØĒØĩØ§Ų Ø¨ŲØ§ `/channelplay Ų
ØąØĒØ¨Øˇ`"
+
+#Play
+play_1 : "đ ŲØĒŲ
Ø§ŲØĒŲØ¯Ų
... Ø§ŲØąØŦØ§ØĄ Ø§ŲØ§ŲØĒØ¸Ø§Øą !"
+play_2 : "**đˇŲØļØš Ø§ŲØĒØ´ØēŲŲ ŲŲ Ø§ŲŲŲØ§ØŠ**\n\nđ ŲØĒŲ
Ø§ŲØĸŲ ... Ø§ŲØąØŦØ§ØĄ Ø§ŲØ§ŲØĒØ¸Ø§Øą !\n**ŲŲØ§ØŠ Ų
ØąØĒØ¨ØˇØŠ:** {0}"
+play_3 : "ŲØ´ŲØĒ ŲŲ Ø§ŲŲØĩŲŲ!"
+play_4 : "đ **ØŖØąŲØ¨ Ø§ŲØĒ Ų
Ų ØŖØ¯Ų
Ų **\nØ¨Øŗ Ø§ŲØ§Ø¯Ų
ŲŲØŠ ŲØ§ŲØØŗØ§Ø¨Ø§ØĒ اŲŲ
ŲØĢŲŲŲ ŲŲØ¯ØąŲŲ ŲØ´ØēŲŲŲ Ø§ŲØ§ØēاŲŲ ŲŲØ§ .\n\nØĒŲØ¯Øą ØĒØŽŲŲ Ø§ŲŲŲ ŲØ´ØēŲ Ų
Ų ØŽŲØ§Ų /playmode ŲØ§Ø°Ø§ ØŦŲØĒ Ø§ŲØĒ Ø§ØĩŲØ§ ادŲ
Ų Ø§ØąØŦØš Ø¯Ø˛ /admincache"
+play_5 : "ŲØ´ŲØĒ ŲŲ Ø§ŲŲØĩŲŲ ŲŲØ§ØēŲŲØŠ .\n\nŲØĒŲØØˇŲŲ ŲØ§Ø˛Ų
ØØŦŲ
Ø§ŲØ§ØēŲŲØŠ Ø§ŲŲ Ų
Ų 100 mb"
+play_6 : "**ØĒŲ
ØĒØŦØ§ŲØ˛ ØØ¯ اŲŲ
د؊**\n\n**اŲŲ
د؊ اŲŲ
ØŗŲ
ŲØ Ø¨ŲØ§: **{0} minute(s)\n**اŲŲ
د؊ اŲŲ
ØŗØĒŲŲ
ØŠ:** {1} hour(s)"
+play_7 : " ØšØ°ØąØ§ ŲŲØ¯ ŲØĩŲØĒ ŲŲØØ¯ Ø§ŲØ§ŲØĩŲ ŲŲ Ø§ŲØĒØ´ØēŲŲ . اŲŲØĢŲØą Ų
Ų Ø§ŲŲ
ŲØ§ŲŲ
اØĒ Ų
ŲØšŲØŠ Ø§ŲØ§Ų. ØŦØąØ¨ ØĒØ´ØēŲŲ Ø§ŲØĩŲØĒŲØ§ØĒ ØŖŲ ØšØ¯ ŲØ§ØŲØ§Ų đĨ˛"
+play_8 : "اŲŲØ¯ŲŲ ØēŲØą Ų
دؚŲŲ
!\n\n**ØēŲØą Ų
دؚŲŲ
:** {0}"
+play_9 : "بŲŲØŠ ŲØØˇØĒŲŲ ØŗŲØ¯ ŲŲØ§Ų ØĒŲØ˛Ų .. Ø§ŲØØ¯ Ø§ŲØ§ŲØĩŲ ŲŲŲŲØ¯ŲŲ ŲŲ 1 GiB"
+play_10 : "**Ų
ŲØ˛ØŠ ŲØ§ØĻŲ
ØŠ ØĒØ´ØēŲŲ ŲŲØĒŲŲØ¨**\n\nØØ¯Ø¯ اŲŲØļØš Ø§ŲØ°Ų ØĒØąŲØ¯ ØĒØ´ØēŲŲ ŲØ§ØĻŲ
ØŠ ØĒØ´ØēŲŲ Youtube باŲŲØ§Ų
Ų ŲŲŲ"
+play_11 : "đØ§ŲØšŲŲØ§Ų: **{0}\n\nâŗØ§ŲŲ
د؊:** {1} Mins"
+play_12 : "**ŲØļØš Spotify Play ** \n\n ØĒŲ
ØˇŲØ¨Ų Ø¨ŲØ§ØŗØˇØŠ:- {0}"
+play_13 : "**ŲŲØ§ØĻŲ
ØĒØ´ØēŲŲ Apple ** \n\n ØĒŲ
ØˇŲØ¨Ų Ø¨ŲØ§ØŗØˇØŠ:- {0}"
+play_14 : "**ØĒØšØ°Øą Ø§ŲØĒØŲŲ Ų
Ų ØšŲŲØ§Ų URL. ** \n ŲØ§ ØĒØĒØŗØ§ØĄŲ ØšŲ
ا ØĨذا ŲØ§Ų ØšŲŲØ§Ų url ŲØ°Ø§ ŲŲØĒŲ
Ų ØĨŲŲ ØŖŲ Ų
Ų Ø§ŲØŖŲظŲ
ØŠ Ø§ŲØŖØŗØ§ØŗŲØŠ Ø§ŲØĒØ§ŲŲØŠ: Youtube Ų AppleMusic Ų Spotify Ų Resso Ų Soundcloud. \n\n ŲŲ
ŲŲŲ Ø§ØŗØĒ؎داŲ
/stream ŲŲ M3u8 ØŖŲ Ø§ŲØąŲØ§Ø¨Øˇ Ø§ŲØ¨ØšŲد؊."
+play_15 : "**ØĒŲ
Ø§ŲØĒØ´Ø§Ų Ø§ŲØ¨ØĢ اŲŲ
Ø¨Ø§Ø´Øą ** \n\n Ø§ŲØĒØ´ŲØĒ Ø§ŲØŖŲظŲ
ØŠ Ø§ØąØĒØ¨Ø§Øˇ اŲŲ
ØŗØ§Øą Ø§ŲØŽØ§Øĩ Ø¨Ų ØšŲŲ ØŖŲŲ Ø¨ØĢ Ų
Ø¨Ø§Ø´Øą. ØĒØąŲØ¯ ØŖŲ ØĒŲØšØ¨ Ø§ŲØ¨ØĢ اŲŲ
Ø¨Ø§Ø´Øą ?"
+play_16 : "ŲØ´ŲØĒ بØĨØØļØ§Øą Ų
ØšŲŲŲ
اØĒ اŲŲŲØ¯ŲŲ. ØŦØąØ¨ ØĒØ´ØēŲŲ ØŖŲ Ø§ØēŲŲØŠ Ø§ØŽØąŲ."
+play_17 : "ØēŲØą ŲØ§Ø¯Øą ØšŲŲ ØĒØ´ØēŲŲ ŲØ°Ø§ اŲŲŲØš Ų
Ų Ø§ØŗØĒØšŲØ§Ų
ØŗØ¨ŲØĒŲŲŲ!\n\nŲŲ
ŲŲŲŲ ŲŲØˇ ØĒØ´ØēŲŲ Ų
ØŗØ§ØąØ§ØĒ Spotify ŲØ§ŲØŖŲØ¨ŲŲ
اØĒ ŲØ§ŲŲŲØ§ŲŲŲ ŲŲŲØ§ØĻŲ
Ø§ŲØĒØ´ØēŲŲ "
+play_18 : "**ŲØ§ ØĒŲØŦد Ų
ŲØ§ŲŲ
Ų ŲŲ Ø§ŲŲ
ØŦŲ
ŲØšØŠ**\n\nŲØ§ØŗØĒ؎داŲ
اŲŲØšØ¨ Ø¨Ø§ŲŲŲØŠ Ø ŲØŦب ØŖŲ ØĒŲŲŲ ŲŲØ§Ų Ų
ØØ§Ø¯ØĢØŠ ØĩŲØĒŲØŠ ŲØ´ØˇØŠ ØŦØ§ØąŲØŠ ŲŲ Ų
ØŦŲ
ŲØšØĒŲ. ** Force Play ** ŲŲŲŲ Ų
ØŗØ§Øą Ø§ŲØĒØ´ØēŲŲ ŲŲ Ø§ŲØ¯ØąØ¯Ø´ØŠ Ø§ŲØĩŲØĒŲØŠ ŲŲØ¨Ø¯ØŖ ØĒØ´ØēŲŲ Ø§ŲŲ
ØŗØ§Øą Ø§ŲØ°Ų ØĒŲ
Ø§ŲØ¨ØØĢ ØšŲŲ ØšŲŲ Ø§ŲŲŲØą Ø¯ŲŲ ØĨØ˛ØšØ§ØŦ/clearing ØˇØ§Ø¨ŲØą."
+
+
+#Playlist
+playlist_1 : "**Ø§ŲØ§ØŗØĒ؎داŲ
:** /play [Ø§ØŗŲ
اŲŲ
ŲØŗŲŲŲ ØŖŲ ØąØ§Ø¨Øˇ ŲŲØĒŲŲØ¨ ØŖŲ Ø§ŲØąØ¯ ØšŲŲ Ø§ŲØĩŲØĒ]\n\nØĨذا ŲŲØĒ ØĒØąŲØ¯ ØĒØ´ØēŲŲ ŲØ§ØĻŲ
ØŠ ØĒØ´ØēŲŲŲ ŲŲ Ø§ŲØŗŲØąŲØą ! اØļØēØˇ ØšŲŲ Ø§ŲØ˛Øą ØŖØ¯ŲØ§Ų."
+playlist_2 : "Ø§ŲØØĩŲŲ ØšŲŲ ŲØ§ØĻŲ
ØŠ Ø§ŲØĒØ´ØēŲŲ Ø§ŲØŽØ§ØĩØŠ بŲ. ØŖØąØŦŲ Ø§ŲØĨŲØĒØ¸Ø§Øą"
+playlist_3 : "ŲŲØŗ ŲØ¯ŲŲ ŲØ§ØĻŲ
ØŠ ØĒØ´ØēŲŲ ØšŲŲ ØŽØ§Ø¯Ų
Ø§ŲØ¨ŲØĒ."
+playlist_4 : "ŲØ§ØĻŲ
ØŠ Ø§ŲØĒØ´ØēŲŲ Ø§ŲØĒŲ ØĒŲ
ØŦŲØ¨Ųا: \n\n"
+playlist_5 : "اŲŲ
د؊- {0} دŲŲŲØŠ"
+playlist_6 : "ØĒŲØ§ØĩŲ Ų
ØšŲ ŲŲ Ų
ØØ§Ø¯ØĢØŠ ؎اØĩØŠ ŲØØ°Ų ŲŲØ§ØĻŲ
Ø§ŲØĒØ´ØēŲŲ."
+playlist_7 : "اŲŲ
ØŗØ§ØąØ§ØĒ Ø¯Ø§ØŽŲ ŲØ§ØĻŲ
ØŠ Ø§ŲØĒØ´ØēŲŲ: {0}\n\nاØļØēØˇ ØšŲŲ Ø§ŲØŖØ˛ØąØ§Øą ŲØØ°Ų Ų
ØŗØ§Øą Ų
ØšŲŲ ŲŲ ŲØ§ØĻŲ
ØŠ Ø§ŲØĒØ´ØēŲŲ Ø§ŲØŽØ§ØĩØŠ بŲ.\n\nŲØØ°Ų ŲØ§ØĻŲ
ØŠ Ø§ŲØĒØ´ØēŲŲ Ø¨ØŖŲŲ
ŲŲØ§: اØļØēØˇ ØšŲŲ Ø˛Øą **Ų
ØŗØ ŲŲ ŲØ§ØĻŲ
ØŠ Ø§ŲØĒØ´ØēŲŲ **."
+playlist_8 : "Ų
ŲØŦŲØ¯ باŲŲØšŲ\n\nŲØ°Ø§ اŲŲ
ØŗØ§Øą Ų
ŲØŦŲØ¯ ŲŲ ŲØ§ØĻŲ
ØŠ Ø§ŲØĒØ´ØēŲŲ Ø§ŲØŽØ§ØĩØŠ بŲ."
+playlist_9 : "ØĸØŗŲ! ŲŲ
ŲŲ ØŖŲ ŲŲŲŲ ŲØ¯ŲŲ {0} Ų
ŲØŗŲŲŲ ŲŲØˇ ŲŲ ŲØ§ØĻŲ
ØŠ Ø§ŲØĒØ´ØēŲŲ."
+playlist_10 : "ØĨØļØ§ŲØŠ ŲØ§ØĻŲ
ØŠ Ø§ŲØĒØ´ØēŲŲ\n\n {0} \n Ų
ØļØ§ŲØŠ ØĨŲŲ ŲØ§ØĻŲ
ØŠ Ø§ŲØĒØ´ØēŲŲ Ø§ŲØŽØ§ØĩØŠ بŲ."
+playlist_11 : "ØĒŲ
ØØ°Ų Ų
ØŗØ§ØąŲ Ø¨ŲØŦاØ."
+playlist_12 : "ŲØ´Ų ØØ°Ų اŲŲ
ØŗØ§Øą Ø§ŲØŽØ§Øĩ بŲ."
+playlist_13 : "ØØ°Ų ŲŲ ŲŲØ§ØĻŲ
Ø§ŲØĒØ´ØēŲŲ Ø§ŲØŽØ§ØĩØŠ Ø¨Ų Ų
Ų Ø§ŲØŽØ§Ø¯Ų
. "
+playlist_14 : "**ŲŲ ØĒØąŲØ¯ Ø¨Ø§ŲØĒØŖŲŲØ¯ ØØ°Ų ŲØ§ØĻŲ
ØŠ Ø§ŲØĒØ´ØēŲŲ Ø¨ØŖŲŲ
ŲŲØ§Ø **\n\nØŗØĒŲŲØ¯ ŲØ§ØĻŲ
ØŠ Ø§ŲØĒØ´ØēŲŲ Ø§ŲØŽØ§ØĩØŠ Ø¨Ų ŲŲØ§ ŲŲ
ŲŲ Ø§ØŗØĒØąØ¯Ø§Ø¯ŲØ§ ŲØ§ØŲŲØ§."
+playlist_15 : "[Ų
Ø´Ø§ŲØ¯ØŠ ŲØ§ØĻŲ
ØŠ Ø§ŲØĒØ´ØēŲŲ Ø¨ØŖŲŲ
ŲŲØ§]({0})"
+playlist_16 : "ŲØ§ØĻŲ
ØŠ Ø§ŲØĒØ´ØēŲŲ ŲŲ ŲØ§ØĻŲ
ØŠ Ø§ŲØ§ŲØĒØ¸Ø§Øą:"
+playlist_17 : "Ų
ŲŲŲ ŲŲ ŲØ§ØĻŲ
ØŠ Ø§ŲØ§ŲØĒØ¸Ø§Øą-"
+playlist_18 : "[Ų
Ø´Ø§ŲØ¯ØŠ ŲØ§ØĻŲ
ØŠ ØĒØ´ØēŲŲŲ Ø¨ØŖŲŲ
ŲŲØ§]({0}) \n\n ØĸØŽØą Ų
ŲØļØš ŲŲ ŲØ§ØĻŲ
ØŠ Ø§ŲØĒØ´ØēŲŲ : **{1}**"
+
+#Playmode
+playmode_1 : "ØØ¯Ø¯ اŲŲØļØš Ø§ŲØ°Ų ØĒØąŲØ¯ ØĒØ´ØēŲŲ Ø§ŲØˇŲباØĒ ŲŲŲ Ø¯Ø§ØŽŲ Ų
ØŦŲ
ŲØšØĒŲ [{0}]."
+playmode_2 : "ØĒŲ
ØĒØēŲŲØą Ø§ŲØĨؚداداØĒ ŲØŲØ¸Ųا Ø¨ŲØŦØ§Ø Ø¨ŲØ§ØŗØˇØŠ {0}"
+
+#Stream
+str_1 : "ŲØąØŦŲ ØĒŲŲŲØą ØąŲØ§Ø¨Øˇ M3u8 ØŖŲ ØąŲØ§Ø¨Øˇ اŲŲب਺"
+str_2 : "â
ØĒŲ
Ø§ŲØĒØŲŲ Ų
Ų Ø¯ŲŲ ØĩØ§ŲØ \n\n Ø§ŲØąØŦØ§ØĄ Ø§ŲØĒØ¸Ø§Øą Ø§ØąØĒØ¨Ø§Øˇ اŲŲ
ØšØ§ŲØŦØŠ.."
+str_3 : "ØēŲØą ŲØ§Ø¯Øą ØšŲŲ Ø¯ŲŲ ŲŲØĒŲŲØ¨ Ø§ŲØ¨ØĢ اŲŲ
Ø¨Ø§Ø´Øą. ŲŲ
ŲØĒŲ
Ø§ŲØšØĢŲØą ØšŲŲ ØĒŲØŗŲŲ Ų
Ø¨Ø§Ø´Øą"
+
+#TopPlay
+tracks_1 : "** ØŦØ§ØąŲ Ų
ØšØ§ŲØŦØŠ {0} ØŖŲØļŲ 10 ŲŲØ§ØĻŲ
ØĒØ´ØēŲŲ **\n ŲØ¯ ŲØŗØĒØēØąŲ Ø°ŲŲ Ø¨ØšØļ Ø§ŲØ¯ŲاØĻŲ (ØŲاŲŲ 3-4 Ø¯ŲØ§ØĻŲ) .. ŲŲØąØŦŲ Ø§ŲØ§ŲØĒØ¸Ø§Øą ... \n\n ** đ¤ ØĒŲ
ØˇŲØ¨Ų Ø¨ŲØ§ØŗØˇØŠ: ** {1} \n\n ØĒØŲŲ ØŖŲØļŲ 10 Ų
ØŗØ§ØąØ§ØĒ/gstats"
+tracks_2 : "** ØŽØˇØŖ ** \n\nŲØ§ ØĒŲØŦد ** {0} ØŖŲØļŲ 10 ŲØ§ØĻŲ
ØŠ ØĒØ´ØēŲŲ ** ØšŲŲ ØŽŲØ§Ø¯Ų
Ø§ŲØąŲØ¨ŲØĒ. ŲØąØŦŲ Ų
ØØ§ŲŲØŠ ØŖŲ ŲØ§ØĻŲ
ØŠ ØĒØ´ØēŲŲ ØŖØŽØąŲ"
+
+# TOOLS
+
+#Lyrics
+lyrics_1 : "**Ø§ŲØ§ØŗØĒ؎داŲ
:**\n\n/lyrics [ Ø§ØŗŲ
Ø§ŲØ§ØēŲŲØŠ ]"
+lyrics_2 : "ŲØĒŲ
Ø§ŲØ¨ØØĢ ..."
+lyrics_3 : "â ŲØ´ŲØĒ ŲŲ Ø§ŲØØĩŲŲ ØšŲŲ Ø§ŲŲŲŲ
اØĒđ.\n\nđĄ**ØŦØąØ¨ Ø§ŲØ¨ØØĢ ØšŲ :** {0}"
+lyrics_4 : "اØļØēØˇ ØšŲŲ Ø§ŲØ˛Øą Ø§Ø¯ŲØ§Ų ŲŲØ¨ØŽØĢ ØšŲ Ø§ŲŲŲŲ
اØĒ ŲØĒØŦŲØ¨ Ø§ŲØŗØ¨Ø§Ų
ŲŲ Ų
ØŦŲ
ŲØšØĒŲ ."
+
+#Ping
+ping_1 : "ŲØĒŲ
Ø§ŲØØŗØ§Ø¨!!!!"
+ping_2 : "{0} \n ŲØšŲ
Ų Ø¨Ø´ŲŲ ØŦŲØ¯ Ų
Øš Ø§ŲØ§ØĒØĩØ§Ų Ų
Ų \n `{1}` ŲŲ Ø§ŲØĢØ§ŲŲØŠ.\n\nØ§ŲØŦŲŲØ˛ŲØŠ Ø¨ŲØĒ ŲŲ {2} \n ŲØ§ØŗØĒ؎دŲ
Ų
ا Ų
ØŦŲ
ŲØšŲ {3} ØĒØŽØ˛ŲŲ Ø§ŲØŽØ§Ø¯Ų
.\n ØĒØŲ
ŲŲ ŲØØ¯ØŠ اŲŲ
ØšØ§ŲØŦØŠ اŲŲ
ØąŲØ˛ŲØŠ ØŲاŲŲ {4} \n Ų
Øš Ø§ØŗØĒŲŲØ§Ų {5} \n Ø§ŲØąØ§Ų
Ø§ŲØšŲ
ŲŲ ŲØ¯ŲŲ ØŖŲØļŲØ§ ا؎ØĒØ¨Ø§Øą اØĒØĩØ§Ų ØŦŲØ¯ ŲŲ `{6}` ŲŲ Ø§ŲØĢØ§ŲŲØŠ."
+
+
+# Song
+song_1 : "ŲŲ
ŲŲŲ Ø§ŲØĒŲØ˛ŲŲ Ų
Ų ŲŲØĒŲŲØ¨ ŲŲØˇ ŲŲ Ų
ØØ§Ø¯ØĢØŠ ؎اØĩØŠ. Ø§ŲØąØŦØ§ØĄ Ø§ØąØŗØ§Ų Ø§ŲØ§Ų
Øą ŲŲ ØŽØ§Øĩ Ø§ŲØ¨ŲØĒ."
+song_2 : "**Ų
ØĢاŲ:**\n\n/song [Ø§ŲØ§ØŗŲ
] or [Ø§ŲØąØ§Ø¨Øˇ Ų
Ų ŲŲØĒŲŲØ¨]"
+song_3 : "ØĒŲ
ŲØ´Ų Ø§ŲØąØ§Ø¨Øˇ. Ø§ŲØ§ ØēŲØą ŲØ§Ø¯Øą ØšŲŲ ØĒŲØ˛ŲŲ Ø§ŲØ¨ØĢ اŲŲ
Ø¨Ø§Ø´Øą. "
+song_4 : "**đØ§ŲØšŲŲØ§Ų:**- {0}\n\nا؎ØĒØą Ų
ا ØĒØąŲØ¯ ØĒŲØ˛ŲŲŲ ."
+song_5 : "ØąØ§Ø¨Øˇ ØēŲØą ØĩØ§ŲØ"
+song_6 : ŲØĒŲ
Ø§ŲØŦŲØ¨..\n\nŲØąØŦŲ Ø§ŲØ§ŲØĒØ¸Ø§Øą .."
+song_7 : "ŲŲØ¯ ŲØ´ŲØĒ .. ØŦØąØ¨ Ų
ŲØˇØš Ø§ØŽØą."
+song_8 : "ŲØĒŲ
Ø§ŲØĒŲØ˛ŲŲ\n\nØąØ¨Ų
ا ŲŲŲŲ Ø§ŲØĒŲØ˛ŲŲ Ø¨ØˇŲØĻØ§ Ųب𨧠Ų
ا. Ø§ŲØąØŦØ§ØĄ Ø§ŲØ§ŲØĒØ¸Ø§Øą .."
+song_9 : "ŲØ´ŲØĒ ŲŲ ØĒŲØ˛ŲŲ Ø§ŲØ§ØēŲŲØŠ -DL\n\n**Reason:** {0}"
+song_10 : "ŲØ´ŲØĒ ŲŲ ØąŲØš Ø§ŲŲ
ŲŲ Ø§ŲŲ ØĒŲŲØēØąØ§Ų
.. اؚد اŲŲ
ØØ§ŲŲØŠ."
+song_11 : "ŲØĒŲ
Ø§ŲØąŲØš\n\n ØąØ¨Ų
ا ŲŲŲŲ Ø§ŲØąŲØš Ø¨ØˇŲØĻØ§ . Ø§ŲØąØŦØ§ØĄ Ø§ŲØ§ŲØĒØ¸Ø§Øą .."
+
+# Tools - Queue
+queue_1 : "ŲØąØŦŲ Ø§ŲØ§ŲØĒØ¸Ø§Øą ..."
+queue_2 : "ŲØ§ØĻŲ
Ų Ø§ŲØ§ŲØĒØ¸Ø§Øą ŲØ§ØąØēØŠ đ¤"
+queue_3 : "**ØąŲŲ
.: ** [ØĒŲØØĩ اŲŲ
Ø˛ŲØ¯ Ų
Ų Ø§ŲŲ
ØŗØ§ØąØ§ØĒ Ų
Ų ŲŲØ§ ({0})"
+queue_4 : "âŗ Ø§ØļŲŲØĒ ŲŲŲØ§ØĻŲ
Ų ŲŲ **#{0}\n\nđĄØ§ŲØšŲŲØ§Ų:** {1}\n**âąØ§ŲŲ
د؊:** {2}\nđ¤**ØˇŲØ¨ Ų
Ų :** {3}"
+queue_5 : "ŲØ§ ØĒŲØŦد ØŗŲŲ Ø§ØēŲŲØŠ ŲØ§ØØ¯ØŠ ŲŲ ŲŲ Ø§ŲŲØ§ØĻŲ
Ų Ø Ø§ŲØąØŦØ§ØĄ ØĒØ´ØēŲŲ Ø§ŲŲ
Ø˛ŲØ¯ ØŖŲŲØ§ "
+
+# All Streaming Lines
+stream_1 : "đĄ **Ø¨Ø¯ØŖ Ø§ŲØ¨ØĢ** đĄ\n\nđ¤**ØˇŲØ¨ØĒ Ų
Ų :** {0}\nđĻ**Ų
ØšŲŲŲ
اØĒ Ø§ŲØĢØą: **[اØļØēØˇ ŲŲØ§]({1})"
+stream_2 : "đĄ **Ø¨Ø¯ØŖ Ø§ŲØ¨ØĢ Ų
Ų Ø§ŲØąØ§Ø¨Øˇ ** đĄ\n\nđ¤**ØˇŲØ¨ØĒ Ø¨ŲØ§ØŗØˇØŠ:** {0}"
+stream_3 : "đĄ **بدا Ø§ŲØ¨ØĢ** đĄ\n\n**đˇØ§ŲØšŲŲØ§Ų:** {0}\nâī¸**اŲŲ
د؊**: {1}\nđ¤**ØˇŲØ¨ØĒ Ų
Ų :** {2}"
+stream_4 : "đĄ **Ø¨Ø¯ØŖ Ø§ŲØ¨ØĢ** đĄ\n\n**đˇØ§ŲØšŲŲØ§Ų:** [{0}]({1})\nâī¸**اŲŲ
د؊**: {2}\nđ¤**Ø¨ØˇŲØ¨ Ų
Ų:** {3}"
+
+# Inline Buttons
+
+#General Buttons
+CLOSE_BUTTON : "đ Ø§ØēŲØ§Ų "
+CLOSEMENU_BUTTON : "đ Ø§ØēŲØ§Ų اŲŲØ§ØĻŲ
ØŠ"
+BACK_BUTTON : "âŦ
ØšŲØ¯ØŠ"
+UNBAN_BUTTON : "đ Ø§ŲØēØ§ØĄ Ø§ŲØØ¸Øą "
+
+#Lyrics
+L_B_1 : "đ Ø§ŲØ°Ųاب ŲŲØŽØ§Øĩ"
+
+# Start
+S_B_1 : "đ Ø§ŲØ§ŲاŲ
Øą"
+S_B_2 : "âī¸ Ø§ŲØ§ØšØ¯Ø§Ø¯Ø§ØĒ"
+S_B_3 : "đ¨ Ø§Øĩب𠨍بĒŲ"
+S_B_4 : "đģ ØŗŲāĸĒØŗ Ų
اØēŲ"
+S_B_5 : "â Ø§ØļŲŲŲ ŲŲ
ØŦŲ
ŲØšØĒŲ"
+S_B_6 : "اØĩب𠨍بĒŲ Ø§ŲØŽØ§Øĩ đ"
+S_B_7 : "đ¤ Ø§ŲŲ
ØˇŲØą"
+S_B_8 : "âī¸ ŲØ§ØĻŲ
ØŠ Ø§ŲØ§ŲاŲ
Øą."
+
+#Help
+H_B_1 : "Ø§ŲØ§Ų
Øą Ø§ŲØ§Ø¯Ų
Ų"
+H_B_2 : "Ø§ŲØ§Ų
Øą Ø§ŲØĒØ´ØēŲŲ"
+H_B_3 : "Ø§ŲØ§Ų
Øą Ø§ŲØ¨ŲØĒ"
+H_B_4 : "Ø§ŲØ§Ų
Øą اØļاŲŲØŠ"
+H_B_5 : "اØēŲØ§Ų اŲŲØ§ØĻŲ
Ų"
+H_B_6 : "Ø§ŲØ§Ų
Øą اŲŲ
ØˇŲØąŲŲ"
+
+#PlayMode
+PM_B_1 : "ØĒØ´ØēŲŲ Ų
Ø¨Ø§Ø´Øą"
+PM_B_2 : "Ø§Ø˛ØąØ§Øą اŲŲØ§ŲŲ"
+PM_B_3 : "ØĒØ´ØēŲŲ ŲŲ Ø§ŲŲŲØ§ØŠ"
+
+#Play
+P_B_1 : "đĩ ØĒØ´ØēŲŲ ØĩŲØĒ"
+P_B_2 : "đĨ ØĒØ´ØēŲŲ ŲŲØ¯ŲŲ"
+P_B_3 : "đŽ Ø¨Ø¯ØŖ بØĢ Ų
Ø¨Ø§Ø´Øą"
+P_B_4 : "đĩ ŲØ§ØĻŲ
ØŠ ØĒØ´ØēŲŲŲ"
+
+#Playlist
+PL_B_1 : "đ ŲØ§ØĻŲ
ØŠ Ø§ŲØĒØ´ØēŲŲ"
+PL_B_2 : "â Ø§ØļŲ ŲŲØ§ØĻŲ
Ų Ø§ŲØĒØ´ØēŲŲ"
+PL_B_3 : "â Ø§ŲاŲ
Øą اØļاŲŲØŠ"
+PL_B_4 : "đĄ ŲØļØš Ø§ŲØĒØ´ØēŲŲ"
+PL_B_5 : "đ Ų
ØŗØ ŲŲ ŲØ§ØĻŲ
ØŠ Ø§ŲØĒØ´ØēŲŲ"
+PL_B_6 : "âī¸ Ų
ØŗØ ŲØ§ØĻŲ
Ų Ø§ŲØĒØ´ØēŲŲ"
+PL_B_7 : "âī¸ ŲØšŲ
Ø§ŲØ§ Ų
ØĒØ§ŲØ¯ Ø Ø§ØØ°ŲŲØ§ "
+PL_B_8 : "đĸ Ø§ŲØĒŲØ¨ 10"
+PL_B_9 : "đ¤ ØĒØ´ØēŲŲ Ø§ŲØĒŲØ¨ 10 اØēاŲŲ"
+PL_B_10 : "đ ØĒØ´ØēŲŲ ØĒŲØ¨ 10 ŲŲØ°Ø§ اŲŲØąŲب "
+PL_B_11 : "đ¤ ØĒØ´ØēŲŲ ØĒŲØ¨ 10 Ø§ŲØŽØ§ØĩØŠ Ø¨Ų "
+
+#Settings
+ST_B_1 : "đ ØŦŲØ¯ØŠ Ø§ŲØĩŲØĒ"
+ST_B_2 : "đĨ ØŦŲØ¯ØŠ اŲŲŲØ¯ŲŲ"
+ST_B_3 : "đŠ Ø§ŲŲ
ØšØĒŲ
دŲŲ"
+ST_B_4 : "đą ŲŲØØŠ Ø§ŲØĒØŲŲ
"
+ST_B_5 : "âļī¸ ŲØļØš Ø§ŲØĒØ´ØēŲŲ"
+ST_B_6 : "đŽđļ Ø§ŲŲØēØŠ "
+ST_B_7 : "đ Ø§ŲŲØļØš اŲŲØ¸ŲŲ"
+ST_B_8 : "{0} ØŦŲØ¯ØŠ ØļØšŲŲØŠ "
+ST_B_9 : "{0} ØŦŲØ¯ØŠ Ų
ØĒŲØŗØˇØŠ "
+ST_B_10 : "{0} ØŦŲØ¯ØŠ ؚاŲŲØŠ "
+ST_B_11 : "{0} ØŦŲØ¯ØŠ ØļØšŲŲØŠ "
+ST_B_12 : "{0} ØŦŲØ¯ØŠ Ų
ØĒŲØŗØˇØŠ "
+ST_B_13 : "{0} ØŦŲØ¯ØŠ ؚاŲŲØŠ "
+ST_B_14 : "â
ØĒŲØšŲŲ"
+ST_B_15 : "â ØĒØšØˇŲŲ "
+ST_B_16 : "đ¤ Ø§ŲŲ
Ø´ØąŲŲŲ"
+ST_B_17 : "đĨ ŲŲØŦŲ
ŲØš "
+ST_B_18 : "đ ŲØ§ØĻŲ
ØŠ اŲŲ
ØšØĒŲ
دŲŲ"
+ST_B_19 : "đ ŲØļØš Ø§ŲØ¨ØØĢ"
+ST_B_20 : "â
Ų
Ø¨Ø§Ø´Øą"
+ST_B_21 : "â
Ø˛Øą اŲŲØ§ŲŲ"
+ST_B_22 : "đ¨ââī¸ Ø§ŲØ§Ų
Øą Ø§ŲØ§Ø¯Ų
Ų"
+ST_B_23 : "đ Ø§ŲŲ
ØŦŲ
ŲØšØŠ "
+ST_B_24 : "đˇ Ø§ŲŲŲØ§ØŠ "
+ST_B_25 : "đĢ Ø§ŲØ§Ų
Øą Ø§ŲØĒØ´ØēŲŲ"
+ST_B_26 : "đ Ų
ØŗØ Ø§ŲØ§ŲاŲ
Øą"
+ST_B_27 : "đ§âđ ŲØļØš Ø§ŲØ§ŲØĒØąØ§ØØ§ØĒ"
+
+#Song
+SG_B_1 : "âī¸ ŲØĒØ ŲŲ Ų
ØØ§Ø¯ØĢØŠ ؎اØĩØŠ"
+SG_B_2 : "đ ØĩŲØĒ"
+SG_B_3 : "đĨ ŲŲØ¯ŲŲ"
+
+#Stats
+SA_B_1 : "đĸ ØĒŲØ¨ 10 Ų
ØŦŲ
ب𨧨Ē"
+SA_B_2 : "đĸ ØĒŲØ¨ 10 اØēاŲŲ"
+SA_B_3 : "đ§ ØĒŲØ¨ 10 Ų
ØŗØĒ؎دŲ
ŲŲ"
+SA_B_4 : "đˇ ØĒŲØ¨ 10 ŲŲØ§"
+SA_B_5 : "đĄ Ø§ŲŲ
ØšŲŲŲ
اØĒ Ø§ŲØšØ§Ų
ØŠ"
+SA_B_6 : "đ¤ ØØ§ŲØŠ Ø§ŲŲ
ØŗØĒ؎دŲ
"
+SA_B_7 : "đĸ ØĒŲØ¨ 10 ؚاŲŲ
ŲØ§"
+SA_B_8 : "đ¤ Ų
ØšŲŲŲ
اØĒ Ø§ŲØ¨ŲØĒ"
+
+#Queue
+QU_B_1 : "đ ŲØ§ØĻŲ
ØŠ Ø§ŲØ§ŲØĒØ¸Ø§Øą"
+QU_B_2 : "Ø´ŲØēŲØĒ {0} Ų
Ų Ø§ØĩŲ {1} دŲŲŲØŠ"
+
+# Sudo Users [ If you are translating this to some other language .. you can leave all these strings in english language]
+
+#Sudo
+sudo_1 : "{0} اŲŲ
ØŗØĒ؎دŲ
Ų
ØˇŲØą Ų
ØŗØ¨ŲŲØ§."
+sudo_2 : "ØŖØļŲŲ **{0}** اŲŲ Ų
ØˇŲØąŲŲ Ø§ŲØ¨ŲØĒ."
+sudo_3 : "ŲØŗØĒ ØŦØ˛ØĄ Ų
Ų Ų
ØˇŲØąŲŲ Ø§ŲØ¨ŲØĒ."
+sudo_4 : "ØĒŲ
ØØ°ŲŲ Ų
Ų Ø§ŲŲ
ØˇŲØąŲŲ"
+sudo_5 : "âī¸ **اŲŲ
اŲŲŲŲ:** \n"
+sudo_6 : "\nâī¸ **اŲŲ
ØˇŲØąŲŲ:** \n"
+sudo_7 : "ŲØ§ ŲŲØŦد Ų
ØˇŲØąŲŲ"
+
+#Block
+block_1 : "{0} اŲŲ
ØŗØĒ؎دŲ
Ų
ØØ¸ŲØą Ų
ØŗØ¨ŲØ§."
+block_2 : "ØŖØļŲŲ **{0}** ŲŲŲ
ØØ¸ŲØąŲŲ Ų
Ų Ø§ŲØ¨ŲØĒ.اŲŲ
ØŗØĒ؎دŲ
Ø§ŲØ§Ų Ų
Ų
ŲŲØš Ų
Ų Ø§ØŗØĒ؎داŲ
Ø§Ų Ø§Ų
Øą ŲŲ Ø§ŲØ¨ŲØĒ ØĒØØĒ ØŖŲ Ø¸ØąŲŲ .\n\nCØĒŲØØĩ اŲŲ
ØŗØĒ؎دŲ
ŲŲ Ø§ŲŲ
ØØ¸ŲØąŲŲ: /blockedusers"
+block_3 : "اŲŲ
ØŗØĒ؎دŲ
ŲŲØŗØĒ ØšŲŲŲ ØŖŲ ŲŲŲØ¯ Ų
ØŗØ¨ŲØ§."
+block_4 : "ØĒŲ
ØØ°Ų اŲŲ
ØŗØĒ؎دŲ
Ų
Ų ŲØ§ØĻŲ
Ų Ø§ŲŲ
ØØ¸ŲØąŲŲ. اŲŲ
ØŗØĒ؎دŲ
Ø§ŲØ§Ų ØŲØą."
+block_5 : "ŲØ§ ŲŲØŦد Ų
ØŗØĒ؎دŲ
ŲŲ Ų
ØØ¸ŲØąŲŲ"
+block_6 : "ØŦŲØ¨ اŲŲ
ØŗØĒ؎دŲ
ŲŲ Ø§ŲŲ
ØØ¸ŲØąŲŲ ... Ø§ŲØąØŦØ§ØĄ Ø§ŲØ§ŲØĒØ¸Ø§Øą "
+block_7 : "**اŲŲ
ØŗØĒ؎دŲ
ŲŲ Ø§ŲŲ
ØØ¸ŲØąŲŲ:**\n\n"
+
+#Blacklist Chats
+black_1 : "**Ų
ØĢاŲ:**\n/blacklistchat [Ø§ŲØ¯Ų اŲŲ
ØŦŲ
ŲØšØŠ]"
+black_2 : "اŲŲ
ØŦŲ
ŲØšØŠ Ø¨Ø§ŲŲØšŲ Ų
ØØ¸ŲØąØŠ."
+black_3 : "ØĒŲ
ØØ¸Øą اŲŲ
ØŦŲ
ŲØšØŠ â
"
+black_4 : "**Ų
ØĢاŲ:**\n/whitelistchat [Ø§ŲØ¯Ų اŲŲ
ØŦŲ
ŲØšØŠ]"
+black_5 : "اŲŲ
ØŦŲ
ŲØšØŠ ŲŲØŗØĒ باŲŲØ§ØĻŲ
Ų Ø§ØŗØ§ØŗØ§."
+black_6 : "ØĒŲ
Ø§Ø˛Ø§ŲØŠ Ø§ŲŲ
ØŦŲ
ŲØšØŠ Ų
Ų Ø§ŲŲØ§ØĻŲ
Ų Ø§ŲŲ
ØØ¸ŲØąØŠ"
+black_7 : "**اŲŲ
ØŦŲ
ŲØšØ§ØĒ Ø§ŲŲ
ØØ¸ŲØąØŠ:**\n\n"
+black_8 : "ŲØ§ ØĒŲØŦد Ų
ØŦŲ
ŲØšØ§ØĒ Ų
ØØ¸ŲØąØŠ"
+
+#videolimit
+vid_1 : "**Ų
ØĢاŲ:**\n/set_video_limit [ØąŲŲ
Ø§ŲØØ¯ Ø§ŲØ§ŲØĩŲ Ø§ŲŲ
ØŦŲ
ŲØšØ§ØĒ Ø§ŲŲŲ ØĒØ´ØēŲ ŲŲØ¯ŲŲ ŲŲØŗ اŲŲŲØĒ ] ØŖŲ [disable]"
+vid_2 : "ŲØąØŦŲ Ø§ØŗØĒ؎داŲ
Ø§ŲØŖØąŲاŲ
Ø§ŲØąŲŲ
ŲØŠ ŲØĒØØ¯ŲØ¯ Ø§ŲØØ¯."
+vid_3 : "ØĒŲ
ØĒØēŲŲØą Ø§ŲØØ¯ Ø§ŲØ§ŲØĩŲ ŲØ¨ØĢ اŲŲŲØ¯ŲŲ Ø§ŲŲ {0} Ų
ØŦŲ
ŲØšØŠ."
+vid_4 : "ØĒŲ
ØĒØšØˇŲŲ Ø§ŲØØ¯ Ø§ŲØ§ŲØĩŲ Ø Ø§ØĩØ¨ØØĒ ØšØ§Ų
ØŠ"
+
+#maintenance
+maint_1 : "**ØĨØŗØĒØšŲ
اŲ:**\n/maintenance [disable | enable]"
+maint_2 : "Ų
Ų
ŲŲ ŲŲØĩŲØ§ŲØŠ"
+maint_3 : "ŲØļØš Ø§ŲØĩŲØ§ŲØŠ Ų
ØšØˇŲ"
+
+#log
+log_1 : "**ØĨØŗØĒØšŲ
اŲ:**\n/logger [enable | disable]"
+log_2 : "ØĒŲ
ŲŲŲ Ø§ŲØĒØŗØŦŲŲ"
+log_3 : "ØĒØŗØŦŲŲ ØĒØšØˇŲŲ"
+
+#videomode
+vidmode_1 : "**Ø§ŲØ§ØŗØĒØšŲ
اŲ:**\n/videomode [download|m3u8]"
+vidmode_2 : "ØĒŲ
ØĒØšŲŲŲ ŲØļØš ØĒØ´ØēŲŲ Ø§ŲŲŲØ¯ŲŲ ØšŲŲ ØŖŲŲ Ø¨ØąŲØ§Ų
ØŦ ØĒŲØ˛ŲŲ. ØŗŲŲŲŲ
Ø§ŲØ¨ŲØĒ بØĒŲØ˛ŲŲ Ø§ŲŲ
ØŗØ§ØąØ§ØĒ Ø§ŲØĸŲ."
+vidmode_3 : "ØĒŲ
ØĒØšŲŲŲ ŲØļØš ØĒØ´ØēŲŲ Ø§ŲŲŲØ¯ŲŲ ØšŲŲ m3u8. Ø§ŲØąŲØ¨ŲØĒ ØŗŲØĒŲ
ØĒØ´ØēŲŲ Ø§ŲŲ
ØŗØ§ØąØ§ØĒ Ų
Ø¨Ø§Ø´ØąØŠ Ø§ŲØĸŲ."
+
+#broadcast
+broad_1 : "**ØĒØĒŲ
Ø§ŲØ§Ø°Ø§ØšŲ ŲŲ {0} Ų
ØŦŲ
ŲØšØŠ Ų
Øš {1} Ø§ŲØĒØĢØ¨ŲØĒ Ų
Ų ŲØ¨Ų Ø§ŲØ¨ŲØĒ .**"
+broad_2 : "ŲØĒŲ
Ø§Ø°Ø§ØšŲ Ø§ŲØØŗØ§Ø¨ اŲŲ
ØŗØ§ØšØ¯..."
+broad_3 : "**بØĢ اŲŲ
ØŗØ§ØšØ¯:**\n\n"
+broad_4 : "Ø§ŲØØŗØ§Ø¨ اŲŲ
ØŗØ§ØšØ¯ {0} اذاؚ ŲŲ {1} Ų
ØŦŲ
ŲØšØŠ\n"
+broad_5 : "**Ų
ØĢاŲ**:\n/broadcast [Ø§ŲØ§Ø°Ø§ØšØŠ] Ø§Ų [Ø¨Ø§ŲØąØ¯ ØšŲŲ Ø§ŲØąØŗØ§ŲØŠ]"
+broad_6 : "Ø§ŲØąØŦØ§ØĄ ŲØĒØ§Ø¨ØŠ Ø§ŲØ§Ø°Ø§ØšŲ Ų
Øš Ø§ŲØ§Ų
Øą."
+broad_7 : "**Ø§Ø°ŲØšØĒ Ø§ŲØąØŗØ§ŲØŠ Ø§ŲŲ {0} Ų
Ø´ØĒØąŲ.**"
+
+#Heroku
+heroku_1 : "Please make sure your Heroku API Key, Your App name are configured correctly in the heroku"
+heroku_2 : "You can only get logs of Heroku Apps"
+heroku_3 : "**Usage:**\n/get_var [Var Name]"
+heroku_4 : "Unable to find any such var."
+heroku_5 : ".env file not found."
+heroku_6 : "**Usage:**\n/del_var [Var Name]"
+heroku_7 : "{0} Deleted."
+heroku_8 : "**Usage:**\n/set_var [Var Name] [Var Value]"
+heroku_9 : "{0} has been updated successfully"
+heroku_10 : "{0} has been added successfully"
+heroku_11 : "Only for Heroku Apps"
+heroku_12 : "Checking Heroku Usage. Please Wait"
+heroku_13 : "Checking for available updates..."
+heroku_14 : "Git Command Error"
+heroku_15 : "Invalid Git Repsitory"
+
+#Private bot mode
+pbot_1 : "**ØĨØŗØĒØšŲ
اŲ:**\n/authorize [Ų
ØšØąŲ Ø§ŲØ¯ØąØ¯Ø´ØŠ]"
+pbot_2 : "**ØĨØŗØĒØšŲ
اŲ:**\n/unauthorize [Ų
ØšØąŲ Ø§ŲØ¯ØąØ¯Ø´ØŠ]"
+pbot_3 : "ØĒŲ
ØĒ ØĨØļØ§ŲØŠ Ø§ŲØ¯ØąØ¯Ø´ØŠ اŲŲ
ØšŲŲØŠ ØĨŲŲ Ø§ŲŲØ§ØĻŲ
ØŠ اŲŲ
ØĩØąØ Ø¨ŲØ§"
+pbot_4 : "ØĒŲ
ØĒ ØĨØ˛Ø§ŲØŠ Ø§ŲØ¯ØąØ¯Ø´ØŠ اŲŲ
ØšØˇØ§ØŠ Ų
Ų Ø§ŲŲØ§ØĻŲ
ØŠ اŲŲ
ØĩØąØ Ø¨ŲØ§"
+pbot_5 : "Ø§ŲØ¯ØąØ¯Ø´ØŠ Ų
ŲØŦŲØ¯ØŠ باŲŲØšŲ ŲŲ Ø§ŲŲØ§ØĻŲ
ØŠ اŲŲ
ØĩØąØ Ø¨ŲØ§"
+pbot_6 : "ŲØ§ ØĒŲØŦد Ų
ØĢŲ ŲØ°Ų Ø§ŲØ¯ØąØ¯Ø´ØŠ ŲŲ Ø§ŲŲØ§ØĻŲ
ØŠ اŲŲ
ØĩØąØ Ø¨ŲØ§"
+pbot_7 : "ŲØ´Ų Ø§ŲØĒØŲŲ Ų
Ų Ų
ØšØąŲ Ø§ŲØ¯ØąØ¯Ø´ØŠ.\n\nØĒØŖŲØ¯ Ų
Ų ØŖŲŲ ØąŲŲ
Ų ŲØĩØŲØ. ŲØ§ ØĒØŗØĒ؎دŲ
Ø§ØŗŲ
Ų
ØŗØĒ؎دŲ
Ø§ŲØ¯ØąØ¯Ø´ØŠ ØŖŲ Ø§ŲØąŲØ§Ø¨Øˇ."
+pbot_8 : "Ø§ŲØąØŦØ§ØĄ Ø§ŲØ§ŲØĒØ¸Ø§Øą .... ØĨØØļØ§Øą Ø§ŲØ¯ØąØ¯Ø´Ø§ØĒ اŲŲ
ØĩØąØ Ø¨ŲØ§."
+pbot_9 : "**Ø§ŲØ¯ØąØ¯Ø´Ø§ØĒ Ø§ŲØĒŲ ØĒŲ
ØŦŲØ¨Ųا: **\n\n"
+pbot_10 : "Ø¯ØąØ¯Ø´ØŠ ؎اØĩØŠ"
+pbot_11 : "ŲŲ
ŲØĒŲ
Ø§ŲØšØĢŲØą ØšŲŲ Ų
ØØ§Ø¯ØĢاØĒ Ų
ØĩØąØ Ø¨ŲØ§"
+pbot_12 : "ŲØļØš Ø§ŲØąŲØ¨ŲØĒ Ø§ŲØŽØ§Øĩ Ų
ØšØˇŲ.\n\nŲØ§ØŗØĒ؎داŲ
Ø§ŲØąŲØ¨ŲØĒ Ø§ŲØŽØ§Øĩ Ø¨Ų ŲØ¨ŲØĒ ؎اØĩ Ø ØĒØŖŲØ¯ Ų
Ų Ø§ŲØĒØšŲŲŲ **PRIVATE_BOT_MODE** = **True**"
+pbot_13 : "\n**Ø§ŲØ¯ØąØ¯Ø´Ø§ØĒ Ø§ŲØĒŲ ŲŲ
ŲØĒŲ
ØĨØØļØ§ØąŲØ§: **\n\n"
+
+
+#Gbanned
+gban_1 : ØĒØąŲØ¯ ØĒØØ¸Øą ØąŲØŲ Ø Ø§ŲØŲ
د ŲŲŲ ŲØ§ŲØ´ŲØą !"
+gban_2 : "ŲØšŲŲ ŲØŗØŠ ŲØ§Ø˛Ų
Ø§ØØ¸Øą ŲŲØŗŲ Ø ØļØŲŲ"
+gban_3 : "ŲŲ ØšŲŲŲ ØĒØąŲØ¯ ØĒØØ¸ØąØŠ ŲŲŲ Ų
ØˇŲØą ?"
+gban_4 : "{0} ŲŲ Ø¨Ø§ŲŲØšŲ **Ų
ØØ¸ŲØą** Ų
Ų Ø§ŲØ¨ŲØĒ."
+gban_5 : "**ØŦØ§ØąŲ Ø§ØšØ§Ø¯ØŠ ØļØ¨Øˇ اŲŲ
ØØ¸ŲØąŲŲ {0}**\n\nاŲŲŲØĒ Ø§ŲŲ
ØĒŲŲØš : {1}."
+gban_6 : "**ØĒŲ
ØØ¸ØąŲ**\n\nŲ
ØØ¸ŲØą **{0}** Ų
Ų **{1}** Ų
ØŦŲ
ŲØšØŠ ."
+gban_7 : "{0} ØēŲØą Ų
ØØ¸ŲØą Ų
Ų Ø§ŲØ¨ŲØĒ ØØĒŲ Ø§ŲØ§Ų ."
+gban_8 : "**ŲØĒŲ
Ø§ŲØ§Ų {0}**\n\nاŲŲŲØĒ Ø§ŲŲ
ØĒŲŲØš : {1}."
+gban_9 : "**ØĒŲ
Ø§ŲØēØ§ØĄ ØØ¸ØąŲ **\n\nØēŲØą Ų
ØØ¸ŲØą **{0}** ŲŲ **{1}** Ų
ØŦŲ
ŲØšŲ."
+gban_10 : "اŲŲŲ ŲŲŲŲŲ ŲØ§ØąØēŲ ."
+gban_11 : "ŲØąØŦŲ Ø§ŲØ§ŲØĒØ¸Ø§Øą ŲŲŲŲØ§.. ŲØĒŲ
ØŦŲØ¨ اŲŲØ§ØĻŲ
Ų"
+
+#Suggestions
+sug_0 : "â**ŲŲ ØĒØšŲŲ
?**\n\nâ
"
+sug_1 : "ŲŲ
ŲŲŲ ØĒØ´ØēŲŲ Ø§ŲØ§ØēاŲŲ Ø¨ŲØļØšŲŲ Ų
ØŽØĒŲŲŲŲ **ŲØļØš Ø§ŲØ¨ØØĢ** i.e. اŲŲØļØš اŲŲ
Ø¨Ø§Ø´Øą ŲØ§Ø˛ØąØ§Øą Ø§ŲØ§ŲŲØ§ŲŲ .\n\nØēŲØą ŲŲ Ø§ŲØ§ŲاŲ
Øą Ų
Ų /playmode"
+sug_2 : "ŲŲ
ŲŲŲ ØĒØ´ØēŲŲ Ø§ŲŲ
ŲØŗŲŲŲ Ø¨ŲØļØšŲŲ **Ø§ŲØ§Ų
Øą Ø§ŲØĒØ´ØēŲŲ** i.e. Ø§ŲØĒØŲŲ
ŲŲØ§Ø¯Ų
ŲŲØŠ ŲŲØˇ ŲØ§ŲØĒØŲŲ
ŲØŦŲ
ب𠨧ب§ØšØļØ§ØĄ .\n\nØēŲØą Ø§ŲØļŲØš Ų
Ų ØŽŲØ§Ų /playmode"
+sug_3 : "ŲŲ
ŲŲŲ ØĒØ´ØēŲŲ Ø§ŲŲ
ŲØŗŲŲŲ ŲŲ **اŲŲŲŲØ§ØĒ**.\n\nØļØš Ø§ŲØ¯Ų اŲŲŲØ§ØŠ /channelplay ŲØ´ØēŲ Ų
Ų ØŖŲ
Øą /cplay "
+sug_4 : "ŲØ§ ØŖØØ¯ ŲØŗØĒØˇŲØš Ø§Ų ŲØĒØŲŲ
ŲŲ Ø§ŲØ§ŲاŲ
Øą ØØĒŲ ŲØļØ§Ų Ø§ŲŲ** ŲØ§ØĻŲ
Ų Ø§ŲŲ
ØšØĒŲ
دŲŲ**. \nاØļŲ Ø§Ų Ø´ØŽØĩ ŲŲŲØ§ØĻŲ
Ų Ų
Ų ØŽŲØ§Ų /auth , اŲ
ØŗØŲ Ø¨Ų /unauth ŲØĒŲŲØ¯ اŲŲØ§ØĻŲ
Ų Ų
Ų ØŽŲØ§Ų /authusers"
+sug_5 : "اذا ØĒŲ
ØĒŲØšŲŲ **ŲØļØš Ø§ŲØĒŲØ¸ŲŲ**.\nØŗŲØØ°Ų Ø§ŲØ¨ŲØĒ ØąØŗØ§ØĻŲŲ Ø¨ØšØ¯ 5 Ø¯ŲØ§ØĻŲ ŲŲØĒØ§Ųد Ų
Ų Ø¨ŲØ§ØĄ Ų
ØØ§Ø¯ØĢØĒŲ ŲØ¸ŲŲØŠ n.\n\nØĒŲ
ŲŲŲ ØŖŲ ØĒØšØˇŲŲ Ø§ŲŲØļØš اŲŲØ¸ŲŲ Ų
Ų/settings [__Enabled by default__]"
+sug_6 : "ŲŲ
ŲŲŲ ØŖŲØļŲØ§ ØĒØ´ØēŲŲ Ų
ØŗØ§ØąØ§ØĒ ŲŲŲØ§ØĻŲ
ØĒØ´ØēŲŲ ** Spotify **. \n\n Ø§Ø¨Ø¯ØŖ اŲŲØšØ¨ Ø§ŲØĸŲ /play [Spotify Link]"
+sug_7 : "ŲŲ
ŲŲŲ ØŖŲØļŲØ§ ØĒØ´ØēŲŲ Ų
ØŗØ§ØąØ§ØĒ ŲŲŲØ§ØĻŲ
ØĒØ´ØēŲŲ ** Apple Music **. \n\n Ø§Ø¨Ø¯ØŖ اŲŲØšØ¨ Ø§ŲØĸŲ Ø¨Ø§ØŗØĒ؎داŲ
/play [Apple Link]"
+sug_8 : "ŲŲ
ŲŲŲ ØŖŲØļŲØ§ ØĒØ´ØēŲŲ Ų
ØŗØ§ØąØ§ØĒ ŲŲŲØ§ØĻŲ
ØĒØ´ØēŲŲ ** Resso Music **. \n\n Ø§Ø¨Ø¯ØŖ اŲŲØšØ¨ Ø§ŲØĸŲ Ø¨Ø§ØŗØĒ؎داŲ
/play [Resso Link]"
+sug_9 : "ŲŲ
ŲŲŲ ØŖŲØļŲØ§ ØĒØ´ØēŲŲ Ų
ØŗØ§ØąØ§ØĒ ŲŲŲØ§ØĻŲ
ØĒØ´ØēŲŲ ** Sound Cloud **. \n\n Ø§Ø¨Ø¯ØŖ اŲŲØšØ¨ Ø§ŲØĸŲ /play [SoundCloud Link]"
+sug_10 : "ŲŲ
ŲŲŲ ØĒØ´ØēŲŲ ** Ų
ŲØ§ØˇØš ŲŲØ¯ŲŲ ** ŲŲ Ø§ŲØ¯ØąØ¯Ø´ØŠ Ø§ŲØĩŲØĒŲØŠ ØšØ¨Øą /vplay [Video Name] or /play -v [Video Name]"
+sug_11 : "ŲŲ
ŲŲŲ ØļØ¨Øˇ ** ØŦŲØ¯ØŠ Ø§ŲØĩŲØĒ ** ŲŲØ¯ØąØ¯Ø´ØŠ Ø§ŲØĩŲØĒŲØŠ ØšŲŲ Ų
ŲØŽŲØļØŠ ØŖŲ Ų
ØĒŲØŗØˇØŠ ØŖŲ ØšØ§ŲŲØŠ. \n\n اØļØ¨Øˇ Ø§ŲØŦŲØ¯ØŠ ØšØ¨Øą/settings"
+sug_12 : "ŲŲ
ŲŲŲ ØļØ¨Øˇ ** ØŦŲØ¯ØŠ اŲŲŲØ¯ŲŲ ** ŲŲØ¯ØąØ¯Ø´ØŠ Ø§ŲØĩŲØĒŲØŠ ØšŲŲ Ų
ŲØŽŲØļØŠ ØŖŲ Ų
ØĒŲØŗØˇØŠ ØŖŲ ØšØ§ŲŲØŠ. \n\n اØļØ¨Øˇ Ø§ŲØŦŲØ¯ØŠ ØšØ¨Øą /settings"
+sug_13 : "ŲŲ
ŲŲŲ Ø§ŲØĒØŲŲ Ų
Ų ** Ø§ŲØĨØØĩاØĻŲØ§ØĒ ** Ø§ŲØŽØ§ØĩØŠ Ø¨Ų ØšŲŲ Ø§ŲØąŲØ¨ŲØĒ Ų
ØĢŲ ØŖŲØļŲ 10 Ų
ØŗØ§ØąØ§ØĒ ØĒŲ
ØĒØ´ØēŲŲŲØ§. \n\n Ø§ØØĩŲ ØšŲŲ Ø§ŲØĨØØĩاØĻŲØ§ØĒ: /gstats "
+sug_14 : "ŲŲ
ŲŲŲ Ø§ŲØĒØŲŲ Ų
Ų ** ØĨØØĩاØĻŲØ§ØĒ اŲŲ
ØŦŲ
ŲØšØŠ ** ØšŲŲ Ø§ŲØąŲØ¨ŲØĒ Ų
ØĢŲ ØŖŲØļŲ 10 Ų
ØŗØ§ØąØ§ØĒ ØĒŲ
ØĒØ´ØēŲŲŲØ§. \n\n Ø§ØØĩŲ ØšŲŲ Ø§ŲØĨØØĩاØĻŲØ§ØĒ: /gstats "
+sug_15 : "ŲŲ
ŲŲŲ Ø§ŲØĒØŲŲ Ų
Ų ** Ø§ŲØĨØØĩاØĻŲØ§ØĒ Ø§ŲØšØ§ŲŲ
ŲØŠ ** Ø§ŲØŽØ§ØĩØŠ Ø¨Ø§ŲØ¨ŲØĒ Ų
ØĢŲ ØŖŲØļŲ 10 Ų
ØŗØĒ؎دŲ
ŲŲ ŲØŖŲŲ
10 Ų
ØØ§Ø¯ØĢاØĒ ŲØŖŲŲ
10 Ų
ØŗØ§ØąØ§ØĒ ŲŲ
ا ØĨŲŲ Ø°ŲŲ. \ n \ n ØĒØŲŲ Ų
Ų Ø§ŲØĨØØĩاØĻŲØ§ØĒ: /gstats "
+sug_16 : "ŲŲ
ŲŲŲ Ø§ŲØĸŲ ŲØĒŲ
ØĩŲØĒ Ø§ŲŲ
ŲØŗŲŲŲ ŲŲØ¯ Ø§ŲØĒØ´ØēŲŲ ŲŲ Ø§ŲØ¯ØąØ¯Ø´ØŠ Ø§ŲØĩŲØĒŲØŠ. \n\n ØŖŲ
Øą: /mute"
+sug_17 : "ŲŲ
ŲŲŲ Ø§ŲØĸŲ ØĨŲØēØ§ØĄ ŲØĒŲ
ØĩŲØĒ ŲŲØĒŲ
ØĩŲØĒ Ø§ŲŲ
ŲØŗŲŲŲ Ø§ŲØĒŲ ŲØĒŲ
ØĒØ´ØēŲŲŲØ§ ŲŲ Ø§ŲØ¯ØąØ¯Ø´ØŠ Ø§ŲØĩŲØĒŲØŠ. \n\n Ø§ŲØŖŲ
Øą: /mute and /unmute"
+sug_18 : "ŲŲ
ŲŲŲ Ø§ŲØ¨ØØĢ Ų
ØšŲØ§ ØŖŲØļŲØ§ ŲŲ ŲŲŲ
اØĒ اŲŲ
ŲØŗŲŲŲ .. \n\n Ø§ŲØŖŲ
Øą: /lyrics [Music Name]"
+sug_19 : "ŲŲ
ŲŲŲ ØĒŲØ˛ŲŲ Ø§ŲŲ
ŲØŗŲŲŲ ØŖŲ Ø§ŲŲŲØ¯ŲŲ Ų
Ų Ø§ŲØąŲØ¨ŲØĒ Ų
Ų ØŽŲØ§Ų Youtube. \n\n Ø§ŲØŖŲ
Øą: /song [Ø§ØŗŲ
اŲŲ
ŲØŗŲŲŲ]"
+sug_20 : "ŲŲ
ŲŲŲ Ø§ŲØØĩŲŲ ØšŲŲ ŲØ§ØĻŲ
ØŠ ŲØ§Ų
ŲØŠ Ø¨Ø§ŲØŖŲاŲ
Øą Ø§ŲØĒŲ ØŖŲØ¨ŲŲØ§. \n\n Ø§ŲØŖŲ
Øą: /help"
+sug_21 : "ŲØØĒŲŲ Ø§ŲØąŲØ¨ŲØĒ ØšŲŲ ØŽŲØ§Øą ŲØ§ØĻŲ
ØŠ ØĒØ´ØēŲŲ ØšŲŲ ØŦØ§ŲØ¨ Ø§ŲØŽØ§Ø¯Ų
. \n\n ŲŲ
ŲŲŲ ØĨØļØ§ŲØŠ Ų
ŲØŗŲŲŲ ŲŲ ŲØ§ØĻŲ
ØŠ Ø§ŲØĒØ´ØēŲŲ ŲØĒØ´ØēŲŲŲØ§ ØŦŲ
ŲØšŲا Ų
ØšŲØ§ ØšØ¨Øą /play"
+sug_22 : "ŲŲ
ŲŲŲ Ø§ŲØĸŲ ØĒبدŲŲ Ø§ŲŲ
ŲØŗŲŲŲ ŲŲ ŲØ§ØĻŲ
ØŠ Ø§ŲØ§ŲØĒØ¸Ø§Øą ØšŲŲ Ø§ŲØąŲØ¨ŲØĒ ØšØ´ŲØ§ØĻŲŲØ§.\n\n Ø§ŲØŖŲ
Øą: /shuffle"
+sug_23 : "ŲŲ
ŲŲŲ Ø§ŲØĒØŲŲ Ų
Ų ŲØ§ØĻŲ
ØŠ Ø§ŲØĒØ¸Ø§Øą اŲŲ
ŲØŗŲŲŲ.\n\nØ§ŲØŖŲ
Øą: /queue"
+sug_24 : "ŲŲ
ŲŲŲ Ø§ŲØĒØŲŲ Ų
Ų Ø§ŲŲ
اŲŲ ŲŲ
ØŗØĒ؎دŲ
Ų sudo Ø§ŲØ°ŲŲ ŲØ¯ŲØąŲŲŲŲ. \n\n Ø§ŲØŖŲ
Øą: /sudolist"
+sug_25 : "ŲØØĒŲŲ Ø§ŲØ¨ŲØĒ ØšŲŲ Ų
ŲØ˛ØŠ ØĒØŗŲ
Ų ** ŲØļØš ØØ°Ų Ø§ŲØŖŲاŲ
Øą **. ŲŲŲŲ
Ø¨ØØ°Ų Ø§ŲØŖŲاŲ
Øą اŲŲ
ŲŲØ°ØŠ Ø§ŲØŽØ§ØĩØŠ Ø¨Ų ØĒŲŲØ§ØĻŲŲØ§. \ n \ n ØĒŲ
ŲŲŲ ØŖŲ ØĒØšØˇŲŲ Ø§ŲØØ°Ų Ų
Ų /settings [__Enabled by default__]"
+sug_26 : "ŲŲ
ŲŲŲ ØĒØēŲŲØą ŲØēØŠ Ø§ŲØąŲØ¨ŲØĒ ØĨŲŲ Ø§Ųب稧ØĒ اŲŲ
ØĒØ§ØØŠ ŲŲŲŲ
ŲØ§ Ø¨ØŗŲŲŲØŠ.\n\nØŖŲ
Øą: /language"
+sug_27 : "ŲØØĒŲŲ Ø§ŲØąŲØ¨ŲØĒ ØšŲŲ Ų
ŲØ˛ØŠ ØĒØŗŲ
Ų ** ŲŲØŠ Ø§Ųب𨍠**.\n\n** ŲŲØŠ Ø§Ųب𨍠** ŲŲŲŲ Ų
ØŗØ§Øą Ø§ŲØĒØ´ØēŲŲ ŲŲ Ø§ŲØ¯ØąØ¯Ø´ØŠ Ø§ŲØĩŲØĒŲØŠ ŲŲØ¨Ø¯ØŖ ŲŲ ØĒØ´ØēŲŲ Ø§ŲŲ
ØŗØ§Øą Ø§ŲØ°Ų ØĒŲ
Ø§ŲØ¨ØØĢ ØšŲŲ ØšŲŲ Ø§ŲŲŲØą Ø¯ŲŲ ØĨØ˛ØšØ§ØŦ / Ų
ØŗØ ŲØ§ØĻŲ
ØŠ Ø§ŲØ§ŲØĒØ¸Ø§Øą. \ n \ n Ø§ŲØŖŲ
Øą: /playforce"
+
diff --git a/strings/langs/az.yml b/strings/langs/az.yml
new file mode 100644
index 0000000000000000000000000000000000000000..9e1995f19dcea941ea3d86036a97458f051a5d96
--- /dev/null
+++ b/strings/langs/az.yml
@@ -0,0 +1,421 @@
+name : đĻđŋ Azerbaycan
+
+# General Strings
+general_1 : "İstifadÉçinin mesajÄąna cavab verin vÉ ya istifadÉçi adÄą/user_id-ni verin."
+general_2 : "XÉta! KomandanÄąn YanlÄąÅ Ä°stifadÉsi."
+general_3 : "SorÄunuzu emal edÉrkÉn bÉzi **istisna baÅ verdi**.\n\nİstisna nÃļvÃŧ:- {0}"
+general_4 : "Siz bu sÃļhbÉt qrupunda anonim adminsiniz!\nAdmin HÃŧquqlarÄąndan İstifadÉçi HesabÄąna qayÄądÄąn."
+general_5 : "Bu ÉmÉliyyatÄą yerinÉ yetirmÉk ÃŧçÃŧn sÉsli sÃļhbÉt hÃŧquqlarÄąnÄą idarÉ edÉn admin olmalÄąsÄąnÄąz."
+general_6 : "Bot sÉsli sÃļhbÉtdÉ yayÄąmlanmÄąr."
+
+# Classes - Telegram.py
+tg_1 : "Bot hazÄąrda endirmÉlÉrlÉ **hÉddÉn artÄąq yÃŧklÉnib**.\n\n**Sonra cÉhd edin:** {0} (__gÃļzlÉnilÉn vaxt__)"
+tg_2 : "Telegramdan media yÃŧklÉmÉk alÄąnmadÄą."
+
+# Core - Call.py
+call_1 : "Bot kÃļmÉkçi hesabÄąnÄą kanalÄąnÄąza dÉvÉt etmÉk ÃŧçÃŧn **Admin** İcazÉsi tÉlÉb edir.\n\nKanal oynatma rejimini : /playmode vasitÉsilÉ deaktiv edin"
+call_2 : "Qrupunuzda vÉ ya kanalÄąnÄązda Assistent qadaÄan edilib, lÃŧtfÉn, qadaÄanÄą lÉÄv edin.\n\n**Assistent İstifadÉçi AdÄą:** @{0}\n**Assistent ID:** {1}"
+call_3 : "Assistent HesabÄąnÄą sÃļhbÉtinizÉ dÉvÉt edÉrkÉn İstisna baÅ verdi.\n\n**SÉbÉb**: {0}"
+call_4 : "Bot **Link vasitÉsilÉ Ä°stifadÉçilÉri DÉvÉt Et** KÃļmÉkçi hesabÄąnÄą sÃļhbÉt qrupunuza dÉvÉt etmÉk ÃŧçÃŧn icazÉ tÉlÉb edir."
+call_5 : "Assistent HesabÄą 5 SaniyÉyÉ qoÅulacaq. ZÉhmÉt olmasa GÃļzlÉyin!"
+call_6 : "Assistent HesabÄą[{0}] UÄurla QoÅuldu.\n\nMusiqi İndi BaÅlayÄąr"
+call_7 : "**ZÉrÉrli Admin hÃŧququ verilir **\n\nLÃŧtfÉn, botdan **İSTİFADÆÃİLÆRİ QADANAN** hÃŧquqlarÄąnÄą silin."
+call_8 : "**ZÉrÉrli Admin hÃŧququ verilir **\n\nLÃŧtfÉn, botdan **YENİ ADMINSÆLÆMÆ** hÃŧquqlarÄąnÄą silin."
+call_9 : "**YayÄąmÄą dÉyiÅmÉk alÄąnmadÄą**\nTresi yenidÉn dÉyiÅmÉk ÃŧçÃŧn /skip istifadÉ edin."
+call_10 : "PleylistdÉn nÃļvbÉti trek endirilir"
+call_11 : "LÃŧtfÉn, kanalÄąnÄąza @{0} ÉlavÉ edin[ ID: {1}].\n\nBot kanal tÉfÉrrÃŧatlarÄąnÄą ÉldÉ edÉ bilmir."
+
+# PLUGINS - Auth.py
+auth_1 : "Qrupunuzun SÉlahiyyÉtli İstifadÉçilÉr SiyahÄąsÄąnda (AUL) yalnÄąz 20 İstifadÉçi ola bilÉr"
+auth_2 : "Qrupunuzun SÉlahiyyÉtli İstifadÉçilÉr SiyahÄąsÄąna ÉlavÉ edildi."
+auth_3 : "ArtÄąq SÉlahiyyÉtli İstifadÉçilÉr SiyahÄąsÄąndadÄąr."
+auth_4 : "Bu Qrupun SÉlahiyyÉtli İstifadÉçilÉri SiyahÄąsÄąndan Silindi."
+auth_5 : "HÉdÉf edilmiÅ istifadÉçi SÉlahiyyÉtli İstifadÉçi deyil."
+auth_6 : "İcazÉli İstifadÉçilÉr gÃļtÃŧrÃŧlÃŧr... LÃŧtfÉn gÃļzlÉyin"
+auth_7 : "**SÉlahiyyÉtli İstifadÉçilÉr SiyahÄąsÄą[AUL]:**\n\n"
+auth_8 : "â ÆlavÉ edib:-"
+
+# PLUGINS - Admins
+admin_1 : "Musiqi artÄąq dayandÄąrÄąlÄąb."
+admin_2 : "đ§ SÉsli sÃļhbÉt {} tÉrÉfindÉn dayandÄąrÄąldÄą!"
+admin_3 : "Musiqi artÄąq davam etdirilib."
+admin_4 : "đ§ SÉsli sÃļhbÉt {} tÉrÉfindÉn davam etdirildi!"
+admin_5 : "Musiqi artÄąq sÉssizdir."
+admin_6 : "đ§ SÉsli sÃļhbÉt {} tÉrÉfindÉn susduruldu!"
+admin_7 : "Musiqi artÄąq sÉssizdir."
+admin_8 : "đ§ SÉsli sÃļhbÉt {} tÉrÉfindÉn sÉssizdÉn Ã§ÄąxarÄąldÄą!"
+admin_9 : "đ§ SÉsli sÃļhbÉt {} tÉrÉfindÉn bitdi/dayandÄąrÄąldÄą!"
+admin_10 : "đ§ SÉsli sÃļhbÉt {} tÉrÉfindÉn atlandÄą!. NÃļvbÉdÉ daha musiqi yoxdur."
+admin_11 : "YayÄąm **{0}** olaraq dÉyiÅdirilÉrkÉn xÉta baÅ verdi.\n\nLÃŧtfÉn, yenidÉn /skip istifadÉ edin."
+admin_12 : "AktivlÉÅdirilmiÅ loop ifasÄąna gÃļrÉ xÃŧsusi treki keçmÉk mÃŧmkÃŧn deyil. LÃŧtfÉn, bu funksiyadan istifadÉ etmÉk ÃŧçÃŧn `/loop disable` vasitÉsilÉ loop ifasÄąnÄą deaktiv edin."
+admin_13 : "XÃŧsusi treklÉr ÃŧçÃŧn rÉqÉmli nÃļmrÉlÉrdÉn istifadÉ edin, mÉsÉlÉn, 1, 2 vÉ ya 4 vÉ s."
+admin_14 : "XÃŧsusi nÃļmrÉyÉ keçmÉk ÃŧçÃŧn nÃļvbÉyÉ Én azÄą 2 trek lazÄąmdÄąr. NÃļvbÉni /nÃļvbÉ ilÉ yoxlayÄąn"
+admin_15 : "Sizin verdiyiniz dÉyÉr ÃŧçÃŧn nÃļvbÉdÉ kifayÉt qÉdÉr trek yoxdur. LÃŧtfÉn, 1 vÉ {0} arasÄąnda rÉqÉmlÉr seçin"
+admin_16 : "XÃŧsusi treki keçmÉk alÄąnmadÄą.\n\nSol nÃļvbÉni /queue ilÉ yoxlayÄąn"
+admin_17 : "{0}.. ZÉhmÉt olmasa gÃļzlÉyin"
+admin_18 : "Admin SiyahÄąsÄą TapÄąlmadÄą\n\nLÃŧtfÉn, /admincache vÉ ya /reload vasitÉsilÉ admin siyahÄąsÄąnÄą yenidÉn yÃŧklÉyin"
+admin_19 : "Bunu hÉyata keçirmÉk ÃŧçÃŧn sÉsli çatÄą idarÉ etmÉk hÃŧququ olan admin olmalÄąsÄąnÄąz.\nÆgÉr siz artÄąq adminsinizsÉ, /admincache vasitÉsilÉ admincache yenidÉn yÃŧklÉyin "
+admin_20 : "Admin keÅi uÄurla yenidÉn yÃŧklÉndi."
+admin_21 : "NÃļvbÉdÉ qarÄąÅdÄąrmaq ÃŧçÃŧn heç nÉ yoxdur"
+admin_22 : "QarÄąÅdÄąrmaq alÄąnmadÄą.\n\nNÃļvbÉni yoxlayÄąn : /nÃļvbÉ"
+admin_23 : "**NÃļvbÉ {0} tÉrÉfindÉn qarÄąÅdÄąrÄąldÄą**\n\nQarÄąÅdÄąrÄąlmÄąÅ nÃļvbÉni yoxlayÄąn : /nÃļvbÉ"
+admin_24 : "**İstifadÉ:**\n/dÃļngÃŧ [enable/disable] vÉ ya [1-10 arasÄą rÉqÉm]\n\n**Misal:** /dÃļngÃŧ 5"
+admin_25 : "Loop {0} tÉrÉfindÉn **{1}** dÉfÉ aktivlÉÅdirildi. Bot indi sÉsli çatda cari oxunan musiqini **{1}** dÉfÉ tÉkrarlayacaq"
+admin_26 : "LÃŧtfÉn, dÃļvrÉ oyunu ÃŧçÃŧn 1-10 arasÄą rÉqÉmlÉrdÉn istifadÉ edin"
+admin_27 : "Loop Play qeyri-aktiv edilib"
+
+# Bot
+
+# Start
+start_1 : "MÉni {0}-da olduÄunuz ÃŧçÃŧn tÉÅÉkkÃŧr edirÉm.\n{1} saÄdÄąr.\n\nHÉr hansÄą yardÄąm vÉ ya yardÄąm ÃŧçÃŧn dÉstÉk qrupumuzu vÉ kanalÄąmÄązÄą yoxlayÄąn."
+start_2 : "Salam, mÉnim adÄąm {0}.\n\nMÉnim bÉzi faydalÄą xÃŧsusiyyÉtlÉri olan teleqram yayÄąm botuyam. Youtube, Spotify, Resso, AppleMusic, Soundcloud vÉ s. kimi platformalarÄą istifadÉ edirÉm.\n\nMÉni qruplarÄąnÄąza ÉlavÉ etmÉkdÉn çÉkinmÉyin."
+start_3 : "XoÅ gÉlmisiniz {0}\n\nİÅlÉmÉk ÃŧçÃŧn **admin icazÉsinÉ** ehtiyacÄąm yoxdur ( tÉlÉb olunana qÉdÉr).\n\nAssistent İstifadÉçi AdÄą:- @{1}\nAssistent ID-si:- {2} "
+start_4 : "{0} Sahibi[{1}] indicÉ sÃļhbÉtinizÉ qoÅulub."
+start_5 : "{0} adlÄą istifadÉçinin Sudo İstifadÉçisinin[{1}] ÃŧzvÃŧ indicÉ sÃļhbÉtinizÉ qoÅulub."
+start_6 : "âī¸ **Superqrup lazÄąmdÄąr** âī¸\n\nLÃŧtfÉn, **qrupunuzu** **superqrupa** çevirin vÉ sonra mÉni yenidÉn ÉlavÉ edin.\n\n**Superqrupu necÉ yaratmaq olar?**\nâ
Qrupunuzun sÃļhbÉt tarixçÉsini bir dÉfÉ **gÃļrÃŧnÉn** edin."
+start_7 : "**Blacklisted Chat**\n\nYou're chat has been blacklisted by the Bot. Please ask any SudoUser to whitelist chat first. Check [Sudolist from here]({0})"
+
+# Help
+help_1 : "ÆtraflÄą mÉlumat ÃŧçÃŧn aÅaÄÄądakÄą dÃŧymÉlÉrÉ kliklÉyin. ÆgÉr komandada hÉr hansÄą problemlÉ ÃŧzlÉÅsÉniz, bot sahibimlÉ ÉlaqÉ saxlaya vÉ ya dÉstÉk çatÄąnda soruÅa bilÉrsiniz.\n\nBÃŧtÃŧn ÉmrlÉr aÅaÄÄądakÄąlarla istifadÉ edilÉ bilÉr: /"
+help_2 : "KÃļmÉk ÃŧçÃŧn PM-dÉ mÉnimlÉ ÉlaqÉ saxlayÄąn."
+
+# Settings
+settings_1 : "âī¸ **Musiqi Botu ParametrlÉri**\n\nđ**Qrup:** {0}\nđ**Qrup ID-si:** `{1}`\n\nđĄ**FunksiyanÄą seçin AÅaÄÄądan redaktÉ etmÉk vÉ ya dÉyiÅmÉk istÉdiyiniz dÃŧymÉlÉr.**"
+settings_3 : "âī¸ Bu nÉdir?\n\n1) BirbaÅa: AxtarÄąÅ sorÄularÄąnÄą birbaÅa oxuyur. VideolarÄą birbaÅa rejimdÉ oynamaq ÃŧçÃŧn -v dÃŧymÉsini istifadÉ edin.\n\n2) Daxil: Video vÉ audio arasÄąnda seçim etmÉk ÃŧçÃŧn Daxili İÅarÉlÉmÉ DÃŧymÉlÉrini qaytarÄąr."
+settings_4 : "âī¸ Bu nÉdir?\n\nđĨ HÉr kÉs: Bu qrupda mÃļvcud olan admin ÉmrlÉrindÉn (keçmÉ, fasilÉ, davam etdirmÉ vÉ s.) hÉr kÉs istifadÉ edÉ bilÉr.\n\nđ YalnÄąz Admin: YalnÄąz adminlÉr vÉ sÉlahiyyÉtli istifadÉçilÉr admin ÉmrlÉrindÉn istifadÉ edÉ bilÉr. ."
+settings_5 : "Heç bir SÉlahiyyÉtli İstifadÉçi TapÄąlmadÄą\n\nSiz hÉr hansÄą qeyri-admin admin ÉmrlÉrimi /auth ilÉ istifadÉ etmÉyÉ vÉ /unauth istifadÉ edÉrÉk silmÉyÉ icazÉ verÉ bilÉrsiniz"
+settings_9 : "âī¸ Bu nÉdir?\n\nAktivlÉÅdirildikdÉ, Bot sÃļhbÉtinizi tÉmiz vÉ aydÄąn etmÉk ÃŧçÃŧn {0} sonra mesajÄąnÄą silÉcÉk."
+settings_10 : "âī¸ Bu nÉdir?\n\n1) Qrup: KomandanÄąn verildiyi qrupda musiqi ifa edir .\n\n2) Kanal: İstÉdiyiniz kanalda musiqi oxuyur. /channelplay vasitÉsilÉ kanal id-sini tÉyin edin."
+settings_11 : "âī¸ Bu nÉdir?\n\n1) HÉr kÉs: Bu qrupda olan hÉr kÉs burada musiqi ifa edÉ bilÉr.\n\n2) YalnÄąz Admin: Bu qrupda musiqini yalnÄąz adminlÉr ifa edÉ bilÉr."
+settings_12 : "â Kanal rejimi ÃŧçÃŧn mÃŧÉyyÉn edilmiÅ kanal id-si yoxdur. LÃŧtfÉn, /channelplay ilÉ mÃŧÉyyÉn edin."
+settings_13 : "Aktiv qrup zÉngindÉ ifa rejimini dÉyiÅmÉk mÃŧmkÃŧn deyil. LÃŧtfÉn, ÉvvÉlcÉ /stop ilÉ sÉsli sÃļhbÉti dayandÄąrÄąn."
+settings_14 : "âī¸ Bu nÉdir?\n\nAktivlÉÅdirildikdÉ, Bot icra etdiyi ÉmrlÉri (/oynat, /pauza, /qarÄąÅdÄąr, /dayan vÉ s.) dÉrhal silÉcÉk.\n\nBunun ÃŧçÃŧn bot admindÉn mesajlarÄąn silinmÉsini tÉlÉb edÉcÉk. dÃŧzgÃŧn iÅlÉyin."
+settings_15 : "Peer hÉll edilmÉdi, kanalÄąnÄąza bot ÉlavÉ etdiyinizÉ vÉ onu admin kimi tanÄątdÄąÄÄąnÄąza Émin olun.\n\nYenidÉn /channelplay-Äą quraÅdÄąrmaÄa cÉhd edin.."
+
+set_cb_1 : "SÉs KeyfiyyÉti Paneli ÉldÉ edilir..."
+set_cb_2 : "Video KeyfiyyÉt Paneli ÉldÉ edilir..."
+set_cb_3 : "İstifadÉçilÉrin Auth Paneli ÉldÉ edilir..."
+set_cb_4 : "Oynatma Rejimi Paneli ÉldÉ edilir..."
+set_cb_5 : "TÉmiz Rejim Paneli ÉldÉ edilir..."
+set_cb_6 : "DÉyiÅikliklÉrin qurulmasÄą."
+set_cb_7 : "Auth İstifadÉçi SiyahÄąsÄą ÉldÉ edilir.. LÃTFEN GÃZLÆYİN."
+set_cb_8 : "Geri qayÄądÄąram.."
+
+# Misc
+ustats_1 : "Heç bir istifadÉçi statistikasÄą tapÄąlmadÄą."
+ustats_2 : "Salam!, Siz indiyÉ qÉdÉr **{1}** dÉfÉ Ã§oxlu sayda **{0}** trek ifa etmisiniz.\n\nÆn çox ifa etdiyiniz {2}:\n\n"
+
+gstats_1 : "Qlobal Statistika ÉldÉ edilir, bu bir az vaxt ala bilÉr..."
+gstats_2 : "Heç bir statistika tapÄąlmadÄą."
+gstats_3 : "Botda Qlobal Top 10 {0}-u ÉldÉ etmÉk, bu bir az vaxt apara bilÉr.."
+gstats_4 : "**BotdakÄą Ãmumi SorÄular:** {0}\n\n{1} indiyÉdÉk **{3}** dÉfÉ Ã§oxlu sayda **{2}** treki ifa edib.\n \n**Æn yaxÅÄą {4} trek:**\n"
+gstats_5 : "**Æn YaxÅÄą {0} SÃļhbÉt {1}:**\n\n"
+gstats_6 : "**Æn çox {1} istifadÉçisi olan {0}:**\n\n"
+gstats_7 : "Bu sÃļhbÉt qrupu indiyÉdÉk **{1}** dÉfÉ Ã§oxlu sayda **{0}** trek ifa edib.\n\nBu sÃļhbÉt qrupu tÉrÉfindÉn ifa olunan Én yaxÅÄą {2}:\n\n"
+gstats_8 : "Botun Ãŧmumi statistikasÄą vÉ mÉlumatÄą ÉldÉ edilir.. Bu bir az vaxt ala bilÉr..."
+gstats_9 : "**BOTUN ÃÃÃN QLOBAL 10 İSTATİSTİKASI**\n\nAÅaÄÄądan botun serverlÉrindÉn qlobal statistikanÄą yoxlamaq istÉdiyiniz dÃŧymÉlÉri seçin."
+gstats_10 : "**{0} ÃŧzrÉ Qlobal Statistikalar**\n\nAÅaÄÄądan botun serverlÉrindÉn qlobal statistikanÄą yoxlamaq istÉdiyiniz dÃŧymÉlÉri seçin."
+gstats_11 : "**{0} ÃŧzrÉ Ãmumi Statistikalar**\nAÅaÄÄądan botun serverlÉrindÉn qlobal statistik gÃļstÉricilÉri yoxlamaq istÉdiyiniz dÃŧymÉlÉri seçin.\n\nÆn yaxÅÄą treklÉri, sÃļhbÉtlÉri, istifadÉçilÉri vÉ digÉr materiallarÄą yoxlamaq ÃŧçÃŧn /gstats istifadÉ edin."
+
+
+# Play
+
+#Play Callback
+cplay_1 : "Siz bu sÃļhbÉtdÉn[{0}] istÉnilÉn kanala vÉ ya sÃļhbÉtinizin ÉlaqÉli kanalÄąna olan kanallarda musiqi oxuya bilÉrsiniz.\n\n**ÆlaqÉli kanal ÃŧçÃŧn:**\n`/{1} ÉlaqÉlÉndirilmiÅ`\n\ n**HÉr hansÄą digÉr kanal ÃŧçÃŧn:**\n`/{1} [Kanal ID]`"
+cplay_2 : "Bu çatda baÄlÄą kanal yoxdur."
+cplay_3 : "Kanal {0} ÃŧçÃŧn mÃŧÉyyÉn edilib\n\n__Kanal ID__: {1}"
+cplay_4 : "Kanal ÉldÉ etmÉk alÄąnmadÄą.\n\nKanalÄąnÄąza bot ÉlavÉ etdiyinizÉ vÉ onu admin kimi tÉbliÄ etdiyinizÉ Émin olun.\nKanalÄą /channelplay vasitÉsilÉ dÉyiÅdirin vÉ ya /playmode vasitÉsilÉ kanalÄąn oxutma rejimini deaktiv edin"
+cplay_5 : "YalnÄąz Kanallar dÉstÉklÉnir."
+cplay_6 : "Bu qrupa qoÅulmaq ÃŧçÃŧn kanalÄąn[{0}] **Sahibi** olmalÄąsÄąnÄąz.\n**KanalÄąn Sahibi:** @{1}\n\nAlternativ olaraq qrupunuzu ÉlaqÉlÉndirÉ bilÉrsiniz. hÉmin kanala vÉ sonra `/channelplay linked` ilÉ qoÅulmaÄa cÉhd edin"
+
+#Play
+play_1 : "đ SorÄu emal olunur... LÃŧtfÉn gÃļzlÉyin!"
+play_2 : "**đˇKanal Oynatma Rejimi**\n\nđ SorÄu emal olunur... LÃŧtfÉn gÃļzlÉyin!\n**ÆlaqÉlÉndirilmiÅ Kanal:** {0}"
+play_3 : "SorÄunu emal etmÉk alÄąnmadÄą!"
+play_4 : "đ **YalnÄąz AdminlÉr OynadÄąr**\nYalnÄąz AdminlÉr vÉ Auth İstifadÉçilÉri bu qrupda musiqi oxuya bilÉr.\n\nRejimi /playmode vasitÉsilÉ dÉyiÅin vÉ artÄąq adminsinizsÉ, /admincache vasitÉsilÉ admincache yenidÉn yÃŧklÉyin"
+play_5 : "Audio faylÄą emal etmÉk alÄąnmadÄą.\n\nAudio FaylÄąn ÃlçÃŧsÃŧ 100 mb-dÉn Az OlmalÄądÄąr"
+play_6 : "**MÃŧddÉt Limiti keçdi**\n\n**İcazÉ VerilÉn MÃŧddÉt: **{0} dÉqiqÉ\n**QÉbul MÃŧddÉti:** {1} saat(s)"
+play_7 : "BaÄÄąÅlayÄąn! Bot CPU-nun hÉddÉn artÄąq yÃŧklÉnmÉsi problemlÉrinÉ gÃļrÉ yalnÄąz mÉhdud sayda video zÉnglÉrÉ icazÉ verir. Bir çox digÉr çatlar hazÄąrda video zÉngdÉn istifadÉ edir. Audioya keçin vÉ ya sonra yenidÉn cÉhd edin"
+play_8 : "EtibarlÄą Video Fayl GeniÅlÉnmÉsi Deyil!\n\n**DÉstÉklÉnÉn Formatlar:** {0}"
+play_9 : "Videonun Fayl ÃlçÃŧsÃŧ 1 GiB-dÉn Az OlmalÄądÄąr"
+play_10 : "**Youtube Pleylist XÃŧsusiyyÉti**\n\nBÃŧtÃŧn Youtube Pleylistini oxutmaq istÉdiyiniz Rejimi seçin"
+play_11 : "đBaÅlÄąq: **{0}\n\nâŗMÃŧddÉt:** {1} DÉqiqÉ"
+play_12 : "**Spotify Play Mode**\n\nTÉlÉb:- {0}"
+play_13 : "**Apple Playlists**\n\nTÉlÉb:- {0}"
+play_14 : "**URL-i yoxlamaq mÃŧmkÃŧn olmadÄą.**\nBot bu url-in aÅaÄÄądakÄą platformalardan hÉr hansÄą birinÉ aid olub-olmamasÄą ilÉ maraqlanÄąr: Youtube, AppleMusic, Spotify, Resso vÉ Soundcloud.\n\nM3u8 vÉ ya Uzaqdan LinklÉr ÃŧçÃŧn /stream istifadÉ edÉ bilÉrsiniz. ."
+play_15 : "**CanlÄą YayÄąm AÅkarlandÄą**\n\nSistemlÉr trek linkinizi canlÄą yayÄąm kimi aÅkarladÄą. CanlÄą yayÄąmÄą oynamaq istÉyirsiniz?"
+play_16 : "Toz tÉfÉrrÃŧatlarÄąnÄą ÉldÉ etmÉk alÄąnmadÄą. BaÅqa birini çalmaÄa cÉhd edin."
+play_17 : "Bu cÃŧr spotify sorÄusunu oxutmaq mÃŧmkÃŧn deyil!\n\nMÉn yalnÄąz spotify musiqilÉrini, albomlarÄąnÄą, ifaÃ§ÄąlarÄąnÄą vÉ Ã§alÄÄą siyahÄąlarÄąnÄą oxuya bilÉrÉm"
+play_18 : "**Heç bir Aktiv SÉsli SÃļhbÉt TapÄąlmadÄą**\n\nZorla oxutmaqdan istifadÉ etmÉk ÃŧçÃŧn qrupunuzda aktiv sÉsli sÃļhbÉt olmalÄądÄąr. **Force Play** sÉsli çatda oxunan treki dayandÄąrÄąr vÉ nÃļvbÉni pozmadan/tÉmizlÉmÉdÉn dÉrhal treki axtardÄą."
+
+
+#Playlist
+playlist_1 : "**İstifadÉ:** /oyun [Musiqi AdÄą vÉ ya Youtube Linki vÉ ya Audioya Cavab]\n\nÆgÉr Botun Server Pleylistini oynamaq istÉyirsinizsÉ! AÅaÄÄądakÄą dÃŧymÉni basÄąn."
+playlist_2 : "Pleylistiniz alÄąnÄąr. LÃŧtfÉn gÃļzlÉyin"
+playlist_3 : "Bot serverindÉ pleylistiniz yoxdur."
+playlist_4 : "GÉtirilmiÅ pleylist:\n\n"
+playlist_5 : " MÃŧddÉt - {0} DÉqiqÉ"
+playlist_6 : "PlaylistlÉrin silinmÉsi ÃŧçÃŧn mÉnimlÉ PM-dÉ ÉlaqÉ saxlayÄąn."
+playlist_7 : "Pleylist daxilindÉki treklÉr: {0}\n\nPleylistinizdÉki xÃŧsusi treki silmÉk ÃŧçÃŧn DÃŧymÉlÉrÉ basÄąn.\n\nBÃŧtÃŧn pleylisti silmÉk ÃŧçÃŧn: BÃŧtÃŧn Pleylist dÃŧymÉsini basÄąn."
+playlist_8 : "ArtÄąq MÃļvcuddur\n\nBu trek pleylistinizdÉ mÃļvcuddur."
+playlist_9 : "BaÄÄąÅlayÄąn! PleylistdÉ yalnÄąz {0} musiqi ola bilÉr."
+playlist_10 : "Pleylist ÆlavÉsi\n\n{0}\nplaylistinizÉ ÉlavÉ edildi."
+playlist_11 : "TraÄÄąnÄąz uÄurla silindi."
+playlist_12 : "TraÄÄąnÄązÄą silmÉk alÄąnmadÄą."
+playlist_13 : "BÃŧtÃŧn pleylistlÉriniz serverdÉn silindi."
+playlist_14 : "**BÃŧtÃŧn pleylistinizi silmÉk istÉdiyinizÉ Éminsiniz?**\n\nPleylistinizi itirÉcÉksiniz vÉ onu sonradan bÉrpa etmÉk mÃŧmkÃŧn olmayacaq."
+playlist_15 : "[BÃŧtÃŧn Pleylistini YoxlayÄąn]({0})"
+playlist_16 : "NÃļvbÉyÉ qoyulmuÅ pleylist:"
+playlist_17 : "NÃļvbÉyÉ qoyulmuÅ mÃļvqe-"
+playlist_18 : "[BÃŧtÃŧn nÃļvbÉyÉ qoyulmuÅ pleylistÉ baxÄąn]({0})\n\nSon nÃļvbÉyÉ qoyulmuÅ mÃļvqe : **{1}**"
+
+#Playmode
+playmode_1 : "Qrupunuzda sorÄularÄą oynamaq istÉdiyiniz rejimi seçin[{0}]."
+playmode_2 : "ParametrlÉr {0} tÉrÉfindÉn dÉyiÅdirildi vÉ uÄurla yadda saxlanÄąldÄą"
+
+#Stream
+str_1 : "LÃŧtfÉn, M3u8 LinklÉri vÉ ya İndeks BaÄlantÄąlarÄąnÄą tÉmin edin."
+str_2 : "â
EtibarlÄą YayÄąm DoÄrulandÄą\n\nLÃŧtfÉn, linkin iÅlÉnilmÉsini gÃļzlÉyin.."
+str_3 : "YouTube canlÄą yayÄąmlarÄąnÄą yayÄąmlamaq mÃŧmkÃŧn deyil. CanlÄą Format TapÄąlmadÄą"
+
+#TopPlay
+tracks_1 : "**{0} Æn YaxÅÄą 10 Pleylist iÅlÉnilir**\nBu, bir neÃ§É dÉqiqÉ Ã§ÉkÉ bilÉr (tÉxminÉn 3-4 dÉqiqÉ).. LÃŧtfÉn, gÃļzlÉyin...\n\n**đ¤TÉlÉb:** {1}\n\nTop 10 treki /gstats"
+tracks_2 : "**XÉta**\n\nBotun serverlÉrindÉ **{0} Top 10 Pleylist** yoxdur. LÃŧtfÉn, hÉr hansÄą digÉr pleylistÉ cÉhd edin"
+
+# TOOLS
+
+#Lyrics
+lyrics_1 : "**İstifadÉ:**\n\n/lyrics [ Musiqi AdÄą]"
+lyrics_2 : "Lirika AxtarÄąram"
+lyrics_3 : "â MahnÄą sÃļzlÉri ÉldÉ etmÉk alÄąnmadÄąđ.\n\nđĄ**AxtarmaÄa cÉhd edilib:** {0}"
+lyrics_4 : "Uzun spam tipli sÃļzlÉr axtarÄąÅÄąndan qaçmaq ÃŧçÃŧn aÅaÄÄądakÄą dÃŧymÉyÉ kliklÉyin vÉ axtarÄąlan sÃļzlÉri ÉldÉ edin."
+
+#Ping
+ping_1: "Pong !!!!"
+
+
+# Song
+song_1 : "YouTube'dan Musiqi vÉ ya Videonu yalnÄąz ÅÉxsi sÃļhbÉtdÉ endirÉ bilÉrsiniz. ZÉhmÉt olmasa, ÅÉxsi sÃļhbÉtdÉ mÉnÉ baÅlayÄąn."
+song_2 : "**İstifadÉ:**\n\n/mahnÄą [Musiqi AdÄą] vÉ ya [Youtube Linki]"
+song_3 : "CanlÄą Link AÅkarlandÄą. MÉn canlÄą youtube videolarÄąnÄą endirÉ bilmirÉm."
+song_4 : "**đBaÅlÄąq:**- {0}\n\nEndirmÉk istÉdiyiniz nÃļvÃŧ seçin."
+song_5 : "EtibarlÄą Youtube Linki deyil"
+song_6 : "Formatlar ÉldÉ edilir.. \n\nLÃŧtfÉn, gÃļzlÉyin.."
+song_7 : "Video ÃŧçÃŧn mÃļvcud formatlarÄą ÉldÉ etmÉk alÄąnmadÄą. LÃŧtfÉn, hÉr hansÄą digÉr treki sÄąnayÄąn."
+song_8 : "EndirmÉ baÅladÄą\n\nYÃŧklÉmÉ sÃŧrÉti yavaÅ ola bilÉr. ZÉhmÉt olmasa, saxlayÄąn.."
+song_9 : "Youtube-DL-dÉn mahnÄą yÃŧklÉmÉk alÄąnmadÄą\n\n**SÉbÉb:** {0}"
+song_10 : "ServerlÉrdÉn teleqrama yÃŧklÉmÉk alÄąnmadÄą."
+song_11 : "YÃŧklÉmÉ BaÅladÄą\n\nYÃŧklÉmÉ sÃŧrÉti yavaÅ ola bilÉr. ZÉhmÉt olmasa, saxlayÄąn.."
+
+# Tools - Queue
+queue_1 : "Please Wait..Fetching Queue.."
+queue_2 : "No tracks inside Queue."
+queue_3 : "**Queued Tracks: ** [Checkout More Queued Tracks From Here]({0})"
+queue_4 : "âŗ Added to Queue at **#{0}\n\nđĄTitle:** {1}\n**âąDuration:** {2}\nđ¤**Added By:** {3}"
+
+# All Streaming Lines
+stream_1 : "đĄ **YayÄąm baÅladÄą** đĄ\n\nđ¤**TÉlÉb:** {0}\nđĻ**MÉlumat: **[Burada]({1})"
+stream_2 : "đĄ **URL vasitÉsilÉ yayÄąma baÅladÄą ** đĄ\n\nđ¤**TÉlÉb edÉn:** {0}"
+stream_3 : "đĄ **YayÄąm baÅladÄą** đĄ\n\n**đˇBaÅlÄąq:** {0}\nâī¸**MÃŧddÉt**: {1}\nđ¤**TÉlÉb:** {2} "
+stream_4 : "đĄ **YayÄąm baÅladÄą** đĄ\n\n**đˇBaÅlÄąq:** [{0}]({1})\nâī¸**MÃŧddÉt**: {2}\nđ¤**TÉlÉb olundu MÃŧÉllif:** {3}"
+
+# Inline Buttons
+
+#General Buttons
+CLOSE_BUTTON : "đ BaÄla"
+CLOSEMENU_BUTTON : "đ Menyunu baÄlayÄąn"
+BACK_BUTTON : "âŦ
Geri"
+UNBAN_BUTTON : "đ KÃļmÉkçinin qadaÄasÄąnÄą aradan qaldÄąrÄąn"
+
+#Lyrics
+L_B_1 : "đ İndi MahnÄąlarÄą yoxlayÄąn"
+
+# Start
+S_B_1 : "đ ÆmrlÉr"
+S_B_2 : "đ§ ParametrlÉr"
+S_B_3 : "đ¨ DÉstÉk"
+S_B_4 : "đ¨ Kanal"
+S_B_5 : "â MÉni Ãļz qrupuna ÉlavÉ et"
+S_B_6 : "đĄ Git Repo"
+S_B_7 : "đ¤ Bot Sahibi"
+S_B_8 : "đ NecÉ Ä°stifadÉ Edilir? Komandalar Menyu."
+
+#Help
+H_B_1 : "Admin ÆmrlÉri"
+H_B_2 : "Oynatma ÆmrlÉri"
+H_B_3 : "Bot ÆmrlÉri"
+H_B_4 : "ÆlavÉ ÉmrlÉr"
+H_B_5 : "Menyunu baÄla"
+H_B_6 : "SudoUser ÆmrlÉri"
+
+#PlayMode
+PM_B_1: "BirbaÅa Oyun"
+PM_B_2: "Daxili İÅarÉlÉmÉ"
+PM_B_3: "Kanal Oynatma"
+
+#Play
+P_B_1 : "đĩ Audio Play"
+P_B_2 : "đĨ Videonu Oynat"
+P_B_3 : "đŽ CanlÄą YayÄąmÄą BaÅlat"
+P_B_4 : "đĩ Play Playlist"
+
+#Playlist
+PL_B_1 : "đ Playlist çalÄąn"
+PL_B_2 : "â PleylistlÉr"
+PL_B_3 : "â ÆlavÉ"
+PL_B_4 : "đĄ Oyun rejimi"
+PL_B_5 : "đ Del BÃŧtÃŧn Pleylist"
+PL_B_6 : "âī¸ Pleylist silin"
+PL_B_7 : "âī¸ BÉli, ÉminÉm. Silin"
+PL_B_8 : "đĸ Top 10-u oynayÄąn"
+PL_B_9 : "đ¤ Qlobal Æn YaxÅÄą 10 MahnÄąsÄąnÄą OynayÄąn"
+PL_B_10 : "đ Qrupun Én yaxÅÄą 10 trekini çalÄąn"
+PL_B_11 : "đ¤ ÅÉxsi Top 10 treki çalÄąn"
+
+#Settings
+ST_B_1 : "đAud KeyfiyyÉti"
+ST_B_2 : "đĨ Video KeyfiyyÉti"
+ST_B_3 : "đŠ Auth İstifadÉçilÉri"
+ST_B_4 : "đą İdarÉ paneli"
+ST_B_5 : "âļī¸ Oyun rejimi"
+ST_B_6 : "đĻđŋ Dil"
+ST_B_7 : "đ TÉmiz rejimi"
+ST_B_8 : "{0} AÅaÄÄą KeyfiyyÉtli Audio"
+ST_B_9 : "{0} Orta KeyfiyyÉtli Audio"
+ST_B_10 : "{0} YÃŧksÉk KeyfiyyÉtli Audio"
+ST_B_11 : "{0} AÅaÄÄą KeyfiyyÉtli Video"
+ST_B_12 : "{0} Orta KeyfiyyÉtli Video"
+ST_B_13 : "{0} YÃŧksÉk KeyfiyyÉtli Video"
+ST_B_14 : "â
Aktivdir"
+ST_B_15 : "â Deaktivdir"
+ST_B_16 : "đ¤ AdminlÉr"
+ST_B_17 : "đĨ HÉr kÉs"
+ST_B_18 : "đ SÉlahiyyÉtli İstifadÉçi SiyahÄąlarÄą"
+ST_B_19 : "đ AxtarÄąÅ rejimi"
+ST_B_20 : "â
BirbaÅa"
+ST_B_21 : "â
Daxili"
+ST_B_22 : "đ¨ââī¸ Admin ÆmrlÉri"
+ST_B_23 : "đ Qrup"
+ST_B_24 : "đˇ Kanal"
+ST_B_25 : "đĢ Oyun NÃļvÃŧ"
+ST_B_26 : "đ TÉmizlÉmÉ Émri"
+
+#Song
+SG_B_1 : "âī¸ ÅÉxsi SÃļhbÉti AÃ§Äąn"
+SG_B_2 : "đ Audio"
+SG_B_3 : "đĨ Video"
+
+#Stats
+SA_B_1 : "đĸ Top 10 SÃļhbÉt"
+SA_B_2 : "đĸ Top 10 Trek"
+SA_B_3 : "đ§ Æn YaxÅÄą 10 İstifadÉçi"
+SA_B_4 : "đˇ Top 10 Burada"
+SA_B_5 : "đĄ Ãmumi Statistika"
+SA_B_6 : "đ¤ İstifadÉçi StatistikasÄą"
+SA_B_7 : "đĸ Qlobal Top 10 Statistika"
+SA_B_8 : "đ¤ Bot StatistikasÄą"
+
+# Sudo Users [ If you are translating this to some other language .. you can leave all these strings in english language]
+
+#Sudo
+sudo_1 : "{0} artÄąq sudo istifadÉçisidir."
+sudo_2 : "Sudo İstifadÉçilÉrinÉ **{0}** ÉlavÉ edildi."
+sudo_3 : "Bot Sudo-nun bir hissÉsi deyil."
+sudo_4 : "Botun Sudo İstifadÉçisindÉn silindi"
+sudo_5 : "âī¸ **SahiblÉr:** \n"
+sudo_6 : "\nâī¸ **Sudo İstifadÉçilÉri:** \n"
+sudo_7 : "Sudo İstifadÉçilÉri Yoxdur"
+
+#Block
+block_1 : "{0} is already blocked from the bot."
+block_2 : "Added **{0}** to Block List of bot. User won't be able to use bot now under any condition.\n\nCheck blocked users: /blockedusers"
+block_3 : "User is already free and not blocked."
+block_4 : "Removed User from the block list. User will be able to use bot now."
+block_5 : "No Blocked Users Found"
+block_6 : "Getting Blocked Users List.. Please Wait"
+block_7 : "**Blocked Users:**\n\n"
+
+#Blacklist Chats
+block_1 : "{0} artÄąq botdan bloklanÄąb."
+block_2 : "Blok siyahÄąsÄąna **{0}** ÉlavÉ edildi. İstifadÉçi heç bir ÅÉrt altÄąnda botdan istifadÉ edÉ bilmÉyÉcÉk.\n\nBloklanmÄąÅ istifadÉçilÉri yoxlayÄąn: /blockedusers"
+block_3 : "İstifadÉçi artÄąq azaddÄąr vÉ bloklanmayÄąb."
+block_4 : "İstifadÉçi blok siyahÄąsÄąndan silindi. İstifadÉçi indi botdan istifadÉ edÉ bilÉcÉk."
+block_5 : "Heç bir BloklanmÄąÅ Ä°stifadÉçi TapÄąlmadÄą"
+block_6 : "BloklanmÄąÅ Ä°stifadÉçilÉr SiyahÄąsÄą ÉldÉ edilir. ZÉhmÉt olmasa gÃļzlÉyin"
+block_7 : "**BloklanmÄąÅ Ä°stifadÉçilÉr:**\n\n"
+
+#videolimit
+vid_1 : "**İstifadÉ:**\n/set_video_limit [İcazÉ verilÉn sÃļhbÉtlÉrin sayÄą] vÉ ya [Deaktiv edin]"
+vid_2 : "LÃŧtfÃŧ tÉyin etmÉk ÃŧçÃŧn rÉqÉmsal rÉqÉmlÉrdÉn istifadÉ edin."
+vid_3 : "Video ZÉnglÉrin Maksimum Limiti {0} Ãat ÃŧçÃŧn MÃŧÉyyÉn edilib."
+vid_4 : "Video ZÉnglÉr Deaktivdir"
+
+#maintenance
+maint_1 : "**İstifadÉ:**\n/xidmÉt [enable|deaktiv]"
+maint_2 : "XidmÉt ÃŧçÃŧn aktivdir"
+maint_3 : "XidmÉt rejimi qeyri-aktivdir"
+
+#log
+log_1 : "**İstifadÉ:**\n/logger [enable|deaktiv]"
+log_2 : "GiriÅi aktivlÉÅdirdi"
+log_3 : "GiriÅ Deaktivdir"
+
+#videomode
+vidmode_1 : "**İstifadÉ:**\n/videorejim [download |m3u8]"
+vidmode_2 : "Video Oynatma Rejimi endirici olaraq tÉyin edildi. Bot indi treklÉri endirÉcÉk."
+vidmode_3 : "Video Oynatma Rejimi m3u8 olaraq tÉyin edildi. Bot indi canlÄą treklÉri sÉslÉndirÉcÉk."
+
+#broadcast
+broad_1 : "**Botdan {1} Pin ilÉ {0} Ãatda YayÄąmlanan Mesaj.**"
+broad_2 : "Assistent yayÄąma baÅladÄą..."
+broad_3 : "**KÃļmÉkçi YayÄąmÄą:**\n\n"
+broad_4 : "Assistent {0} {1} çatda yayÄąmlandÄą\n"
+broad_5 : "**İstifadÉ**:\n/yayÄąm [MESSAGE] vÉ ya [MesajÄą Cavab]"
+broad_6 : "LÃŧtfÉn, yayÄąmlamaq ÃŧçÃŧn bir neÃ§É mÉtn tÉqdim edin."
+broad_7 : "**{0} İstifadÉçiyÉ YayÄąmlanan Mesaj.**"
+
+#Heroku
+heroku_1 : "LÃŧtfÉn, Heroku API AçarÄąnÄązÄąn, TÉtbiq adÄąnÄązÄąn herokuda dÃŧzgÃŧn konfiqurasiya edildiyinÉ Émin olun"
+heroku_2 : "Siz yalnÄąz Heroku ProqramlarÄąnÄąn qeydlÉrini ÉldÉ edÉ bilÉrsiniz"
+heroku_3 : "**İstifadÉ:**\n/get_var [Var AdÄą]"
+heroku_4 : "BelÉ bir var tapmaq mÃŧmkÃŧn deyil."
+heroku_5 : ".env faylÄą tapÄąlmadÄą."
+heroku_6 : "**İstifadÉ:**\n/del_var [Var AdÄą]"
+heroku_7 : "{0} Silindi."
+heroku_8 : "**İstifadÉ:**\n/set_var [Var AdÄą] [Var DÉyÉri]"
+heroku_9 : "{0} uÄurla yenilÉndi"
+heroku_10 : "{0} uÄurla ÉlavÉ edildi"
+heroku_11 : "YalnÄąz Heroku ProqramlarÄą ÃŧçÃŧn"
+heroku_12 : "Heroku İstifadÉsi YoxlanÄąlÄąr. ZÉhmÉt olmasa gÃļzlÉyin"
+heroku_13 : "MÃļvcud yenilÉmÉlÉr yoxlanÄąlÄąr..."
+heroku_14 : "Git Komanda xÉtasÄą"
+heroku_15 : "EtibarsÄąz Git Repsitory"
+
+#Private bot mode
+pbot_1 : "**İstifadÉ:**\n/icazÉ verin [CHAT_ID]"
+pbot_2 : "**İstifadÉ:**\n/icazÉsiz [CHAT_ID]"
+pbot_3 : "VerilmiÅ sÃļhbÉt sÉlahiyyÉtli siyahÄąya ÉlavÉ edildi"
+pbot_4 : "VerilmiÅ sÃļhbÉt sÉlahiyyÉtli siyahÄądan silindi"
+pbot_5 : "SÃļhbÉt artÄąq icazÉli siyahÄądadÄąr"
+pbot_6 : "İcazÉ verilmiÅ siyahÄąda belÉ sÃļhbÉt yoxdur"
+pbot_7 : "chat_id-i doÄrulamaq alÄąnmadÄą.\n\nOnun rÉqÉmli vÉ dÃŧzgÃŧn formatda olduÄuna Émin olun. SÃļhbÉt istifadÉçi adÄąndan vÉ ya keçidlÉrdÉn istifadÉ etmÉyin."
+pbot_8 : "LÃŧtfÉn gÃļzlÉyin... SÉlahiyyÉtli sÃļhbÉtlÉr alÄąnÄąr."
+pbot_9 : "**GÉtirilmiÅ SÃļhbÉtlÉr: **\n\n"
+pbot_10 : "ÅÉxsi SÃļhbÉt"
+pbot_11 : "Heç bir icazÉli sÃļhbÉt tapÄąlmadÄą"
+pbot_12 : "ÅÉxsi Bot Rejimi deaktiv edilib.\n\nBotunuzu ÅÉxsi bot kimi istifadÉ etmÉk ÃŧçÃŧn **PRIVATE_BOT_MODE** = **True** tÉyin etdiyinizÉ Émin olun."
+pbot_13 : "\n**GÉtirilmÉmiÅ SÃļhbÉtlÉr: **\n\n"
+
+
+#Gbanned
+gban_1 : "SÉn ÃļzÃŧnÃŧ gban etmÉk istÉyirsÉn? NecÉ dÉ axmaq!"
+gban_2 : "ÃzÃŧmÃŧ bloklamalÄąyam? Lol"
+gban_3 : "Sudo istifadÉçisini bloklamaq istÉyirsiniz?"
+gban_4 : "{0} artÄąq botdan **gbanlanÄąb**."
+gban_5 : "**Qobal qadaÄasÄą {0}** tarixindÉ iÅÉ salÄąnÄąr.\n\nGÃļzlÉnilÉn vaxt : {1}."
+gban_6 : "**UÄurla QbanlandÄą**\n\n**{1}** çatlarÄąndan **{0}** qadaÄan edildi."
+gban_7 : "{0} hÉlÉ botdan **gbanlanmayÄąb."
+gban_8 : "**QadaÄanÄąn lÉÄvi {0}**\n\nGÃļzlÉnilÉn vaxt : {1}."
+gban_9 : "**UÄurla QadaÄadan ÃÄąxarÄąldÄą**\n\n**{1}** çatlarda **{0}** qadaÄasÄą lÉÄv edildi."
+gban_10 : "QanlanmÄąÅ Ä°stifadÉçilÉr tapÄąlmadÄą."
+gban_11 : "LÃŧtfÉn, bir az gÃļzlÉyin. QbanlanmÄąÅ istifadÉçilÉr siyahÄąsÄą gÉtirilir"
diff --git a/strings/langs/cheems.yml b/strings/langs/cheems.yml
new file mode 100644
index 0000000000000000000000000000000000000000..e61590af9c54c5223b389ca6fd5059bdeca6af4f
--- /dev/null
+++ b/strings/langs/cheems.yml
@@ -0,0 +1,320 @@
+name : đļ Cheems
+
+# General Strings
+general_1 : "Remply to a usemr's messamge or gimve usemrname/user_id."
+general_2 : "Erromr! Wromng Usamge of command."
+general_3 : "Some **emxception occumred** whimle promcessing youmr quemry.\n\nException typem:- {0}"
+general_4 : "Youm're an anomnymous admin in thims chamt groump!\nRevert bamck to usemr accoumnt from admin rimghts."
+general_5 : "Youm neemd to be admin wimth manamge voimce chamt rimghts to perfomrm thims actiomn."
+general_6 : "Bomt isn't streaming on voimce chamt."
+
+# Classes - Telegram.py
+tg_1 : "Bomt is **omverloaded** wimth downloamds rimght nomw.\n\n**Try aftemr:** {0} (__emxpected time__)"
+tg_2 : "Faimled to downloamd the mediam from Telemgram."
+
+# Core - Call.py
+call_1 : "Bomt requimres **Amdmin** permissiomn to invimte assimstant accoumnt to youmr chamnnel."
+call_2 : "Assimstant is bannemd in youmr groump or chamnnel, pleamse unbamn.\n\n**Assistant usemrname:** @{0}\n**Amssistant id:** {1}"
+
+call_3 : "Excemption occumred whimle invimting assimstant accoumnt to youmr chamt.\n\n**Reamson**: {0}"
+call_4 : "Bomt requimres **Imnvite Usemrs via Limnk** permissiomn to invimte assimstant accoumnt to youmr chamt groump."
+call_5 : "Assimstant accoumnt wimll be joimning in 5 semconds..Please waimt!"
+call_6 : "Assimstant accoumnt[{0}] joimned succemssfully.\n\nStarting musimc nomw"
+call_7 : "**Hamrmful admin rimght givemn **\n\nPleamse removem **bamn usemrs** rimghts from the bomt."
+call_8 : "**Hamrmful admin rimght givemn **\n\nPleamse removem **amdd new admins** rimghts from the bomt."
+call_9 : "**Faimled to swimtch stream**\nPleamse use /skimp to chamnge tramck agaimn."
+call_10 : "Domwnloading nemxt tramck from Plamylist"
+call_11 : "Pleamse add @{0} to youmr chamnnel[ ID: {1}].\n\nBomt is not ablem to get chamnnel detaimls."
+
+
+# PLUGINS - Auth.py
+auth_1 : "Youm can only hamve 20 usemrs in youmr groump's Authomrised Usemrs Limst (AUL)"
+auth_2 : "Addemd to authomrised usemrs limst of youmr groump."
+auth_3 : "Alreamdy in the authomrised usemrs limst."
+auth_4 : "Removemd from authomrised usemrs limst of thims groump."
+auth_5 : "Tamrgeted usemr is not an authomrised usemr."
+auth_6 : "Femtching authomrised usemrs... Pleamse waimt"
+auth_7 : "**Authomrised Umsers Limst[AUL]:**\n\n"
+auth_8 : "â Amdded By:-"
+
+# PLUGINS - Admins
+admin_1 : "Msic is alreamdy paumsed."
+admin_2 : "đ§ Voimcechat Paumsed by {}!"
+admin_3 : "Mumsic is alreamdy resumed."
+admin_4 : "đ§ Voimcechat Resumed by {}!"
+admin_5 : "Mumsic is alreamdy mumted."
+admin_6 : "đ§ Voimcechat Mumted by {}!"
+admin_7 : "Mumsic is alreamdy unmumtemd."
+admin_8 : "đ§ Voimcechat Unmumtemd by {}!"
+admin_9 : "đ§ Voimcechat End/Stompped by {}!"
+admin_10 : "đ§ Voimcechat Skimpped by {}!. No Momre Mumsic in Queuem."
+admin_11 : "Erromr whimle chamnging stream to **{0}**\n\nPleamse use /skimp agaimn."
+admin_12 : "Umnable to skimp to a spemcific tramck bemcause of enambled loomp plamy. Pleamse dimsable loomp plamy via `/loomp disamble` to use thims feamture."
+admin_13 : "Pleamse use numerimc numbemrs for spemcific tramcks, limke 1, 2 or 4 etc"
+admin_14 : "Atleamst 2 tramcks neemded in queuem to skimp to a spemcific numbemr. chemck queuem by /queue"
+admin_15 : "Nomt enoumgh tramcks in queuem for the vamlue givemn by you. Pleamse choomse numbemrs betweemn 1 and {0}"
+admin_16 : "Faimled to skimp to spemcific tramck.\n\nCheck lemft queuem by /queue"
+admin_17 : "{0}.. Pleamse Waimt"
+admin_18 : "Admin limst not foumnd\n\nPlease reloamd adminlimst via /admincache or /reload"
+admin_19 : "Youm neemd to be admin wimth manamge voimce chamt rimghts to perfomrm thims.\nIf youm're alreamdy admin, reloamd admincamche via /admincache "
+admin_20 : "Amdmin camche reloamded succemssfully."
+admin_21 : "Nomthing insimde queuem to shumffle"
+admin_22 : "Faimled to shumffle.\n\nCheck queuem : /queue"
+admin_23 : "**Queuem shumffled by {0}**\n\nChemck shumffled queuem : /queue"
+admin_24 : "**Umsage:**\n/loop [enamble/disable] or [numbemr betweemn 1-10]\n\n**Emxample:** /loomp 5"
+admin_25 : "Loomp enambled by {0} for **{1}** times. Bot wimll now repeamt the curremnt plamying musimc on voimce chamt for **{1}** times"
+admin_26 : "Pleamse use numbemrs betweemn 1-10 for loomp plamy"
+admin_27 : "Loomp plamy has beemn disambled"
+
+# Bot
+
+# Start
+start_1 : "Thamnks for havimng me in {0}.\n{1} is alimve.\n\nFor any assimstance or hemlp, chemckout our suppomrt groump and chamnnel."
+start_2 : "Hemllo, my name is {0}.\n\nIm'm a telemgram streaming bot wimth some usemful feamtures. Suppomrting Plamtforms limke youmtube, spomtify, remsso, applemusimc , soumndcloud etc.\n\nFeeml freem to add me to youmr groumps."
+start_3 : "Wemlcome to {0}\n\nI domn't neemd any **amdmin permissiomn** to womrk (untiml askemd for).\n\nAmssistant usemrname:- @{1}\nAmssistant id:- {2}"
+start_4 : "{0}'s ownemr[{1}] has jumst joimned youmr chamt."
+Start_5 : "A membemr of {0}'s sumdo usemr[{1}] has jumst joimned youmr chamt."
+start_6 : "âī¸ **Sumpergroup Neemded** âī¸\n\nPleamse convemrt youmr **groump** to **sumpergroup** and themn add me back.\n\n**Homw to makem supemrgroup?**\nâ
Makem youmr groump's chamt himstory **vimsible** oncem."
+start_7 : "**Blamcklisted Chamt**\n\nYou're chamt has beemn blamcklisted by the bot. Pleamse ask any sudoumser to whimtelist chamt fimrst. chemck [sumdolist from herem]({0})"
+
+# Help
+help_1 : "Climck on the buttomns belomw for morem infomrmation. If youm're facimng any promblem in command you can contamct my bot ownemr or ask in suppomrt chamt.\n\nAll commands can be usemd wimth: /"
+help_2 : "Comntact me in pm for hemlp."
+
+# Settings
+setting_1 : "âī¸ **Musimc Bot Settimngs**\n\nđ**Group:** {0}\nđ**Groump ID:** `{1}`\n\nđĄ**Choomse the functiomn buttomns from belomw whimch you wamnt to edimt or chamnge.**"
+setting_3 : "âī¸ Whamt is thims?\n\n1) Diremct: Plamys seamrch quemries diremctly. use -v to plamy videoms in diremct modem.\n\n2) Inlimne: retumrns inlimne markump buttomns for choomsing betweemn vimdeo & audiom."
+setting_4 : "âī¸ Whamt is thims?\n\nđĨ Evemryone: Anyomne can use admin commands(skimp, paumse, remsume etc) premsent in thims groump.\n\nđ Admin only: Only admins and authomrized usemrs can use admin commands."
+setting_5 : "No authomrized usemrs foumnd\n\nYou can allomw any non-amdmin to use my admin commands by /auth and demlete by usimng /unauth"
+setting_9 : "âī¸ Whamt is thims?\n\nWhen actimvated, bot wimll demlete its messamge aftemr {0} to makem youmr chamt cleamn and cleamr."
+setting_10 : "âī¸ Whamt is thims?\n\n1) Groump: Plamys musimc in the groump whemre the command is givemn .\n\n2) Chamnnel: Plamys musimc in the chamnnel you wamnt. set chamnnel id via /channelplay"
+setting_11 : "âī¸ Whamt is thims?\n\n1) Evemryone: Anyomne premsent in thims groump can plamy musimc herem.\n\n2) Admin only: Only admins can plamy the musimc in thims groump."
+setting_12 : "â Youm've no chamnnel id defimned for chamnnel modem. Pleamse demfine wimth /channelplay."
+setting_13 : "Can't change play mode in active group call. Please stop the voice chat first with /stop."
+setting_14 : "âī¸ Whamt is thims?\n\nWhen actimvated, Bot wimll demlete its exemcuted commands (/plamy, /paumse, /shumffle, /stomp etc) immediamtely.\n\nBot wimll be requimring demlete messamges admin rimght for thims to womrk promperly."
+setting_15 : "Faimled to remsolve peemr, Makem sumre you hamve addemd bot in youmr chamnnel and promotemd it as admin.\n\nTry settimng /channelplay agaimn.."
+
+set_cb_1 : "Gemtting Aumdio Quamlity Panel..."
+set_cb_2 : "Gemtting Vimdeo Quamlity Panel..."
+set_cb_3 : "Gemtting Aumth Usmers Panel..."
+set_cb_4 : "Gemtting Plamy Momde Panel..."
+set_cb_5 : "Gemtting Cleamn Momde Panel..."
+set_cb_6 : "Semtting up chamnges."
+set_cb_7 : "Gemtting Aumth Users Limst.. PLEAMSE WAIT."
+set_cb_8 : "Gemtting bamck.."
+
+# Misc
+ustats_1 : "No Umser Stamts Foumnd."
+ustats_2 : "Gremttings!, You hamve plamyed **{0}** tramcks timll now wimth a whompping coumnt of **{1}** times.\n\nTomp {2} plamyed by youm:\n\n"
+
+gstats_1 : "Gemtting glombal stamts, Thims coumld tamke some time..."
+gstats_2 : "No Stamts Foumnd."
+gstats_3 : "Gemtting glombal top 10 {0} on the bot, Thims coumld tamke some time.."
+gstats_4 : "**Tomtal quemries on bomt:** {0}\n\n{1} has plamyed **{2}** tramcks timll now wimth a whompping coumnt of **{3}** times.\n\n**Tomp {4} tramcks:**\n"
+gstats_5 : "**Tomp {0} Chamts of {1}:**\n\n"
+gstats_6 : "**Tomp {0} Umsers of {1}:**\n\n"
+gstats_7 : "Thims chamt groump has plamyed **{0}** tramcks timll now wimth a whompping coumnt of **{1}** times.\n\nTomp {2} plamyed by thims chamt groump:\n\n"
+gstats_8 : "Gemtting bomt's genemral stamts and infomrmation.. Thims coumld tamke some time..."
+gstats_9 : "**GLOMBAL TOMP 10 STAMTS OF THE BOMT**\n\nSemlect the buttomns from belomw for whimch you wamnt to chemck glombal stamts from bomt's servemrs."
+gstats_10 : "**Glombal Stamts of {0}**\n\nSemlect the buttomns from belomw for whimch you wamnt to chemck glombal stamts from bomt's servemrs."
+gstats_11 : "**Gemneral Stamts of {0}**\nSemlect the buttomns from belomw for whimch you wamnt to chemck glombal stamts from bomt's semrvers.\n\nTo chemck top tramcks, chamts, usemrs and othemr stumffs, pleamse use /gstats"
+
+
+# Play
+
+#Play Callback
+playcb_1 : "Thims is not for you! Seamrch you own somng."
+playcb_2 : "Gemtting Nemxt Resumlt"
+
+# Channel Play
+cplay_1 : "Youm can plamy musimc in chamnnels from thims chamt[{0}] to any chamnnel or youmr chamt's linkemd chamnnel.\n\n**For Linkemd chamnnel:**\n`/{1} linked`\n\n**For any othemr chamnnel:**\n`/{1} [chamnnel id]`"
+cplay_2 : "Thims chamt has no linkemd chamnnel."
+cplay_3 : "Chamnnel defimned to {0}\n\nChamnnel ID: {1}"
+cplay_4 : "Faimled to get chamnnel.\n\nMake sumre you hamve addemd bot in youmr chamnnel and promotemd it as admin.\nEmdit or Chamnge chamnnel via /chamnnelplay"
+cplay_5 : "Omnly chamnnels are suppomrted."
+cplay_6 : "youm neemd to be the **omwner** of the chamnnel[{0}] to connemct it wimth thims groump.\n**Channel's Ownemr:** @{1}\n\nAmlternatively you can limnk youmr groump to thamt chamnnel and themn try connnemcting wimth `/channelplay linked`"
+
+
+#Play
+play_1 : "đ Promcessing Quemry... Pleamse Waimt!"
+play_2 : "**đˇChamnnel Plamy Modem**\n\nđ Promcessing Quemry... Pleamse Waimt!\n**Linked chamnnel:** {0}"
+play_3 : "Faimled to promcess quemry!"
+play_4 : "đ **Amdmins only plamy**\nOnly admins and auth usemrs can plamy musimc in thims groump.\n\nChange momde via /playmode and if youm're alreamdy admin, reloamd admincamche via /admincache"
+play_5 : "Faimled to promcess aumdio fimle.\n\nAudio fimle simze shoumld be lemss thamn 100 mb"
+play_6 : "**Dumration Limit Exceemded**\n\n**Allowed duramtion: **{0} minumte(s)\n**Received duramtion:** {1} houmr(s)"
+play_7 : "Somrry! Bot only allomws limitemd numbemr of vimdeo camlls due to cpu ovemrload issuems. Many othemr chamts are usimng vimdeo camll rimght now.Try swimtching to aumdio or try agaimn latemr"
+play_8 : "Nomt a valimd vimdeo fimle extemnsion!\n\n**Sumpported formats:** {0}"
+play_9 : "Vimdeo fimle simze shoumld be lemss thamn 1 GiB"
+play_10 : "**Youmtube Plamylist Feamture**\n\nSelect the modem in whimch you wamnt to plamy whomle youmtube plamylist"
+play_11 : "đTimtle: **{0}\n\nâŗDumration:** {1} mins"
+play_12 : "**Spomtify Plamy Momde**\n\nRequested by:- {0}"
+play_13 : "**Ampple Plamylists**\n\nRequested by:- {0}"
+play_14 : "**Unable to verify the URL.**\nBot wonders if this url belongs to any of the following platforms: Youtube, AppleMusic, Spotify, Resso and Soundcloud.\n\nYou can use /stream for M3u8 or Remote Links."
+play_15 : "**Limve Stream Detemcted**\n\nSystems hamve detemcted youmr tramck limnk as limve stream. wamnt to plamy limve stream ?"
+play_16 : "Faimled to femtch tramck detaimls. Try plamying any othemr."
+play_17 : "Umnable to plamy thims typem of spomtify quemry!\n\nI can only plamy spomtify tramcks, albums, artimsts and plamylists"
+play_18 : "**No Actimve Voimce chamt foumnd**\n\nTo use Fomrce Plamy, themre must be an actimve voimce chamt goimng on in youmr groump. **Fomrce plamy** stomps the plamying tramck on voimce chamt and stamrts plamying the seamrched tramck instamntly withoumt distumrbing/clearing queuem."
+
+#Playlist
+playlist_1 : "**Umsage:** /play [Musimc name or Youmtube limnk or Remply to audiom]\n\nIf you wamnt to plamy bomt's servemr plamylist! Premss the buttomn belomw."
+playlist_2 : "Gemtting youmr plamylist. Pleamse waimt"
+playlist_3 : "Youm hamve no plamylist on bomt's servemr."
+playlist_4 : "Femtched Plamylist:\n\n"
+playlist_5 : " Duramtion- {0} Mins"
+playlist_6 : "Comntact me in pm for delemtion of plamylists."
+playlist_7 : "Tramcks insimde plamylist: {0}\n\nPremss the buttomns to demlete a partimcular tramck in youmr plamylist.\n\nTo demlete whomle plamylist: Premss del whomle plamylist buttomn."
+playlist_8 : "Alreamdy eximsts\n\nThis tramck eximsts in youmr plamylist."
+playlist_9 : "Somrry! You can only hamve {0} musimc in a plamylist."
+playlist_10 : "Plamylist addimtion\n\n{0}\nAdded to youmr plamylist."
+playlist_11 : "Sumccessfully delemted youmr tramck."
+playlist_12 : "Faimled to delemte youmr tramck."
+playlist_13 : "Demleted youmr whomle plamylists from the servemr. "
+playlist_14 : "**Amre you sumre you wamnt to demlete youmr whomle plamylist?**\n\nYou'll lomst youmr plamylist and thims camn't be recomvered latemr."
+playlist_15 : "[Chemckout Whomle Plamylist]({0})"
+playlist_16 : "Queuemd Plamylist:"
+playlist_17 : "Queuemd Posimtion-"
+playlist_18 : "[Chemckout whomle queuemd plamylist]({0})\n\nLast Queuemd Posimtion : **{1}**"
+
+#Playmode
+playmode_1 : "Semlect the modem in whimch you wamnt to plamy the quemries insimde youmr groump[{0}]."
+playmode_2 : "Semttings chamnged and savemd succemssfully by {0}"
+
+#Stream
+str_1 : "Pleamse promvide m3um8 limnks or indemx limnks."
+str_2 : "â
Valimd stream vemrified\n\nPlease waimt promcessing limnk.."
+str_3 : "Umnable to stream youmtube limve streams. No limve format foumnd"
+
+#TopPlay
+tracks_1 : "**Promcessing {0} top 10 plamylist**\nThis coumld tamke some mins(amround 3-4 mins).. Pleamse Waimt...\n\n**đ¤Requested By:** {1}\n\nChemck top 10 tramcks by /stats"
+tracks_2 : "**Emrror**\n\nThere's no **{0} top 10 plamylist** on bomt's servemrs. Pleamse try any othemr plamylist"
+
+#Lyrics
+lyrics_1 : "**Umsage:**\n\n/lyrics [musimc name]"
+lyrics_2 : "Seamrching Lyrimcs"
+lyrics_3 : "â Faimled to femtch lyrimcsđ.\n\nđĄ**Tried seamrching fomr:** {0}"
+lyrics_4 : "Climck on the buttomn belomw and get seamrched lyrimcs in private messaging."
+
+#Ping
+ping_1 : "Pomng!!!!"
+ping_2 : "{0} is workimng goomd wimth a pimng of `{1}` ms.\n\nBomt's uptime is {2} and has usemd a totaml of {3} servemr's stomrage. Cpu loamd is aboumt {4} wimth a consumptiomn of {5} ram. Py-tgcamlls cliemnt is alsom havimg a goomd pimng of `{6}` ms."
+
+# Song
+song_1 : "Youm can downloamd musimc or vimdeo from youmtube only in primvate chamt. Pleamse stamrt me in primvate chamt."
+song_2 : "**Umsage:**\n\n/song [musimc name] or [youmtube limnk]"
+song_3 : "Limve limnk detemcted. I am not ablem to downloamd limve youmtube videoms. "
+song_4 : "**đTimtle:**- {0}\n\nSemlect the typem in whimch you wamnt to downloamd."
+song_5 : "Nomt a valimd Youmtube limnk"
+song_6 : "Gemtting formats.. \n\nPleamse waimt.."
+song_7 : "Faimled to get avaimlable formats for the vimdeo. Pleamse try any othemr tramck."
+song_8 : "Domwnload stamrted\n\nDownloading speemd coumld be slomw. Pleamse homld on.."
+song_9 : "Faimled to downloamd somng from youmtube-dl\n\n**Reason:** {0}"
+song_10 : "Faimled to uploamd on telemgram from servemrs."
+song_11 : "Uploamding stamrted\n\nUploading speemd coumld be slomw, Pleamse homld on.."
+
+# Tools - Queue
+queue_1 : "Pleamse waimt..Fetching queuem.."
+queue_2 : "No tramcks insimde queuem."
+queue_3 : "**Queued Tramcks: ** [Chemckout morem queuemd tramcks from herem]({0})"
+queue_4 : "âŗ Addemd to Queuem at **#{0}\n\nđĄTimtle:** {1}\n**âąDumration:** {2}\nđ¤**Amdded by:** {3}"
+
+# All Streaming Lines
+stream_1 : "đĄ **Stamrted Streaming** đĄ\n\nđ¤**Remquested By:** {0}\nđĻ**Imnformation: **[Hemre]({1})"
+stream_2 : "đĄ **Stamrted Streaming via URL ** đĄ\n\nđ¤**Remquested By:** {0}"
+stream_3 : "đĄ **Stamrted Streaming** đĄ\n\n**đˇTimtle:** {0}\nâī¸**Dumration**: {1}\nđ¤**Remquested By:** {2}"
+stream_4 : "đĄ **Stamrted Streaming** đĄ\n\n**đˇTimtle:** [{0}]({1})\nâī¸**Dumration**: {2}\nđ¤**Remquested by:** {3}"
+
+# Inline Buttons
+
+#General Buttons
+CLOSE_BUTTON : "đ Clomse"
+CLOSEMENU_BUTTON : "đ Clomse Menu"
+BACK_BUTTON : "âŦ
Bamck"
+UNBAN_BUTTON : "đ Unbamn Assimstant"
+
+#Lyrics
+L_B_1 : "đ Chemckout Lyrimcs Now"
+
+# Start
+S_B_1 : "đ Commands"
+S_B_2 : "đ§ Semttings"
+S_B_3 : "đ¨ Sumpport"
+S_B_4 : "đ¨ Chamnnel"
+S_B_5 : "â Add me to youmr Groump"
+S_B_6 : "đĄ Git Repo"
+S_B_7 : "đ¤ Bot Owner"
+S_B_8 : "đ How to Use? Commands Menu."
+
+#Help
+H_B_1 : "Amdmin Commands"
+H_B_2 : "Plamy Commands"
+H_B_3 : "Bomt Commands"
+H_B_4 : "Emxtra Commands"
+H_B_5 : "Clomse Menu"
+H_B_6 : "Sumdo Umser Commands"
+
+#PlayMode
+PM_B_1 : "DimrectPlay"
+PM_B_2 : "InlimneMarkup"
+PM_B_3 : "ChamnnelPlay"
+
+#Play
+P_B_1 : "đĩ Plamy Aumdio"
+P_B_2 : "đĨ Plamy Vimdeo"
+P_B_3 : "đŽ Starmt Limve Stream"
+P_B_4 : "đĩ Plamy Plamylist"
+
+#Playlist
+PL_B_1 : "đ Plamy Playlimst"
+PL_B_2 : "â Playlimsts"
+PL_B_3 : "â Addimtional"
+PL_B_4 : "đĄ Plamy Momde"
+PL_B_5 : "đ Del Whomle Plamylist"
+PL_B_6 : "âī¸ Demlete Plamylist"
+PL_B_7 : "âī¸ Yes, I'm sumre. Demlete it"
+PL_B_8 : "đĸ Plamy Top 10"
+PL_B_9 : "đ¤ Plamy Glombal Top 10 Tramcks"
+PL_B_10 : "đ Plamy Groump's Top 10 Tramcks"
+PL_B_11 : "đ¤ Plamy Persomnal Top 10 Tramcks"
+
+#Settings
+ST_B_1 : "đ Aud Quamlity"
+ST_B_2 : "đĨ Vid Quamlity"
+ST_B_3 : "đŠ Aumth Umsers"
+ST_B_4 : "đą Dashboard"
+ST_B_5 : "âļī¸ Plamy Momde"
+ST_B_6 : "đŗī¸âđ Lamguage"
+ST_B_7 : "đ Cleam Momde"
+ST_B_8 : "{0} Low Quamlity Aumdio"
+ST_B_9 : "{0} Memdium Quamlity Aumdio"
+ST_B_10 : "{0} Himgh Quamlity Aumdio"
+ST_B_11 : "{0} Low Quamlity Vimdeo"
+ST_B_12 : "{0} Memdium Quamlity Vimdeo"
+ST_B_13 : "{0} Himgh Quamlity Vimdeo"
+ST_B_14 : "â
Enambled"
+ST_B_15 : "â Disambled"
+ST_B_16 : "đ¤ Amdmins"
+ST_B_17 : "đĨ Evemryone"
+ST_B_18 : "đ Authomrized Umsers Limsts"
+ST_B_19 : "đ Seamrch Momde"
+ST_B_20 : "â
Diremct"
+ST_B_21 : "â
Inlimne"
+ST_B_22 : "đ¨ââī¸ Amdmin Commands"
+ST_B_23 : "đ Groump"
+ST_B_24 : "đˇ Chamnnel"
+ST_B_25 : "đĢ Plamy Typem"
+ST_B_26 : "đ Command Cleanm"
+
+#Song
+SG_B_1 : "âī¸ Openm Primvate Chamt"
+SG_B_2 : "đ Aumdio"
+SG_B_3 : "đĨ Vimdeo"
+
+#Stats
+SA_B_1 : "đĸ Top 10 Chamt"
+SA_B_2 : "đĸ Top 10 Tramcks"
+SA_B_3 : "đ§ Top 10 Umsers"
+SA_B_4 : "đˇ Top 10 Herem"
+SA_B_5 : "đĄ Ovemrall Stamts"
+SA_B_6 : "đ¤ Umser Stamts"
+SA_B_7 : "đĸ Glombal Top 10 Stamts"
+SA_B_8 : "đ¤ Bomt Stamts"
\ No newline at end of file
diff --git a/strings/langs/cn.yml b/strings/langs/cn.yml
new file mode 100644
index 0000000000000000000000000000000000000000..a5007570f786fabd6bfdf8d5e4c5e73309b2a84f
--- /dev/null
+++ b/strings/langs/cn.yml
@@ -0,0 +1,416 @@
+name: 'đ¨đŗ 䏿īŧįŽäŊīŧ'
+#General Strings
+general_1: "åå¤ä¸æĄæļæ¯ææäžį¨æˇå/user_id"
+general_2: "ErrorīŧåŊäģ¤č¯æŗé蝝"
+general_3: "å¤įæĨč¯ĸæļåįäēä¸äē**åŧ常**\n\nåŧ常įąģåīŧ- {0}"
+general_4: "æ¨æ¯æ¤įž¤įģä¸įåŋåįŽĄįåīŧ\n蝎å
ŗéåŋåįŽĄįå"
+general_5: "æ¨éčĻæä¸ēč¯éŗč夊æéįįŽĄįåæčŊæ§čĄæ¤æäŊ"
+general_6: "Bot åŊååšļæĒå¨č¯éŗčå¤Šä¸ææžåĒäŊ"
+#Classes - Telegram.py
+tg_1: "Bot åŊåä¸čĄč´čŊŊ**čŋéĢ**\n\n**蝎įåž
īŧ** {0} (__expected time__)"
+tg_2: "å°č¯äģTelegramä¸ä¸čŊŊåĒäŊæļå¤ąč´Ĩ"
+#Core - Call.py
+call_1: "Bot éčĻ**įŽĄįå**æéæčŊé蝎åč´Ļæˇå å
Ĩæ¨įéĸé"
+call_2: "åŠįč´Ļæˇå¨æ¨įįž¤įģæéĸéä¸čĸĢå°įĻīŧ蝎觪é¤å°įĻã\n\n**č´Ļæˇį¨æˇåīŧ** @{0}\n**č´Ļæˇ IDīŧ** {1}"
+call_3: "é蝎åŠįč´Ļæˇå å
Ĩč夊æļåįåŧ常ã\n\nåå īŧ {0}"
+call_4: "BotéčĻ**éčŋéžæĨé蝎፿ˇ**æéæčŊé蝎åŠįč´Ļæˇå å
Ĩæ¨įįž¤įģã"
+call_5: "åŠįč´Ļæˇå°å¨5į§å
å å
Ĩã蝎į¨åīŧ"
+call_6: "åŠįč´Ļæˇ [{0}] 厞æåå å
Ĩã\n\nįĢåŗåŧå§éŗäš"
+call_7: "**čĸĢæäēäēčŋéĢįæé**\n\n蝎æ¤é **įĻæĸ፿ˇ** æé"
+call_8: "**čĸĢæäēäēčŋéĢįæé**\n\n蝎æ¤é **æˇģå įŽĄįå** æé"
+call_9: "**åæĸæ˛įŽæļå¤ąč´Ĩ**\n蝎äŊŋ፠/skip åæŦĄæ´æšæ˛įŽ"
+call_10: "äģææžå襨ä¸čŊŊä¸ä¸éĻæ˛įŽ"
+call_11: "č¯ˇå° @{0} æˇģå å°æ¨įéĸé[ IDīŧ {1}]ã\n\nBotæ æŗčˇåéĸéč¯ĻįģäŋĄæ¯ã"
+#PLUGINS - Auth.py
+auth_1: "æ¨įįž¤įģ῿፿ˇå襨 (AUL) ä¸åĒčŊæ 20 ä¸Ē፿ˇ"
+auth_2: "厞æˇģå å°č¯Ĩįģ῿፿ˇå襨ã"
+auth_3: "厞卿æį¨æˇå襨ä¸ã"
+auth_4: "厞ä쿤įģ῿፿ˇå襨ä¸å é¤ã"
+auth_5: "įŽæ ፿ˇä¸æ¯ææį¨æˇã"
+auth_6: "æŖå¨čˇåææį¨æˇ... 蝎į¨å"
+auth_7: "**ææį¨æˇå襨[AUL]:**\n\n"
+auth_8: "â æˇģå č
īŧ-"
+#PLUGINS - Admins
+admin_1: "éŗäšåˇ˛æåã"
+admin_2: "đ§ č¯éŗčå¤Šįą {}æåīŧ"
+admin_3: "éŗäšåˇ˛æĸå¤ã"
+admin_4: "đ§ č¯éŗčå¤Šįą {}æĸå¤īŧ"
+admin_5: "éŗäšåˇ˛įģééŗã"
+admin_6: "đ§ č¯éŗčå¤Šįą {}ééŗīŧ"
+admin_7: "éŗäšåˇ˛åæļééŗã"
+admin_8: "đ§ č¯éŗčå¤Šįą {}åæļééŗīŧ"
+admin_9: "đ§ č¯éŗč夊įģæ/čĸĢ{}åæĸīŧ"
+admin_10: "đ§ č¯éŗčå¤Šįą {}莺čŋīŧéå䏿 éŗäšã"
+admin_11: "äŋŽæšææžåĒäŊä¸ē **{0}** æļåēé\n\n蝎åæŦĄäŊŋ፠/skip"
+admin_12: "įąäēå¯į¨äēåžĒ᝿æžīŧæ æŗčˇŗå°įšåŽčŊ¨éã蝎éčŋâ/loop disableâįĻį¨åžĒ᝿æžäģĨäŊŋ፿¤åčŊã"
+admin_13: "蝎ä¸ēįšåŽæ˛įŽäŊŋ፿°åīŧåĻ1īŧ2æ4į"
+admin_14: "éåä¸čŗå°éčĻ 2 ä¸ĒčŊ¨éæčŊ莺å°įšåŽįŧåˇãæ /queue æŖæĨéå"
+admin_15: "éå䏿˛Ąæčļŗå¤įčŊ¨éæĨ襨į¤ēæ¨įģåēįåŧãč¯ˇå¨ 1 å {0} äšé´éæŠæ°å"
+admin_16: "æĒčŊ莺å°įšåŽčŊ¨éã\n\næ /queue æŖæĨåˇĻéå"
+admin_17: "{0}..蝎į¨å"
+admin_18: "æžä¸å°įŽĄįåå襨\n\n蝎éčŋ /admincache æ /reload éæ°å čŊŊįŽĄįåå襨"
+admin_19: "æ¨éčĻå
ˇæįŽĄįč¯éŗč夊æéįįŽĄįåæčŊæ§čĄæ¤æäŊã\nåĻææ¨åˇ˛įģæ¯įŽĄįåīŧ蝎éčŋ /admincache éæ°å čŊŊ "
+admin_20: "厞æåéæ°å čŊŊįŽĄįåįŧåã"
+admin_21: "éå䏿˛ĄæäģģäŊä¸čĨŋå¯äģĨæåē"
+admin_22: "æ æŗæåēã\n\næŖæĨéå īŧ /queue"
+admin_23: "**éåįą {0} éæ°æå**\n\næĨįæ°įéåīŧ /queue"
+admin_24: "**፿ŗīŧ**\n/loop [enable/disable] æ [äģäē 1-10 įæ°å]\n\n**į¤ēäžīŧ** /loop 5"
+admin_25: "{0} å¯į¨äēåžĒᝠ**{1}**æŦĄãBotį°å¨å°å¨č¯éŗč夊ä¸éå¤åŊåææžįéŗäš**{1}**æŦĄ"
+admin_26: "蝎äŊŋį¨1-10äšé´įæ°åčŋčĄåžĒ᝿æž"
+admin_27: "åžĒ᝿æžåˇ˛čĸĢįĻį¨"
+admin_28: "**፿ŗīŧ**\n/seek æ /seekback [æįģæļé´äģĨį§ä¸ēåäŊ]"
+admin_29: "蝎äŊŋį¨10-20-30į§čŋæ ˇįæ°åæįģæļé´æĨæį´ĸ"
+admin_30: "åžæąæīŧæ¨æ æŗæĨæžåŊ忪卿æžįæĩãåŽåĒčŊčĸĢ莺čŋæåæĸã"
+admin_31: "įąäēįģåŽįæįģæļé´éŋīŧBotæ æŗæį´ĸãæ¨éčĻå¯ģæąčžäŊįæįģæļé´īŧåšļ莰äŊ卿į´ĸåčŋåŠä¸10į§įæļé´ã\n\nåŊåææž** {0}åé / *{1}åé"
+admin_32: "蝎į¨åãããæŖå¨å¯ģæąæįģįæĩã"
+admin_33: "æå莺čŊŦæļé´å° {0}"
+admin_34: "æ æŗæĨæžåŊåæĩã"
+#Bot
+#Start
+start_1: "æč°ĸæ¨å°ææˇģå å° {0}\n{1} åŊåčŋčĄæŖå¸¸\n\nåĻéäģģäŊ帎åŠīŧ蝎æĨįæäģŦįįž¤įģåéĸé"
+start_2: "æ¨åĨŊīŧ æįå忝 {0}.\n\nææ¯ä¸ä¸Ēå
ˇæä¸äēåŽį¨åčŊįTelegramæĩBotãæ¯æYoutubeīŧSpotifyīŧRessoīŧAppleMusicīŧSoundcloudįåšŗå°\n\nå¯éæļå°ææˇģå å°æ¨įįž¤įģä¸ã"
+start_3: "æŦĸčŋ {0}\n\næä¸éčĻäģģäŊ**įŽĄįåæé**åŗå¯åˇĨäŊīŧį´å°čĸĢčĻæąīŧã\n\nåŠįč´Ļæˇį¨æˇåīŧ- @{1}\nåŠįč´Ļæˇį¨æˇ IDīŧ- {2}"
+start_4: "{0} įææč
[{1}] ååå å
Ĩä翍įįž¤įģ"
+start_5: "{0} į Sudo ፿ˇ [{1}] įååå å
Ĩæ¨įįž¤įģ"
+start_6: "âī¸ **éčĻčļ
įē§įž¤įģ** âī¸\n\n蝎尿¨į**įž¤įģ**čŊŦæĸä¸ē**čļ
įē§įž¤įģ**īŧįļåéæ°æˇģå æã\n\n**åĻäŊååģēčļ
įē§įž¤įģīŧ**\nâ
äŊŋįž¤įģįčå¤ŠčŽ°åŊ**å¯č§**䏿ŦĄã"
+start_7: "**åå
Ĩéģååįč夊**\n\næ¨įčå¤Šåˇ˛čĸĢBotåå
Ĩéģååã蝎å
čĻæąäģģäŊ Sudo፿ˇ å°č夊åå
ĨįŊååã[äģčŋéæŖæĨ]({0})"
+#Help
+help_1: "ååģä¸éĸįæéŽäģĨčˇåæ´å¤äŋĄæ¯ãåĻæäŊ å¨äŊŋį¨ä¸éå°äģģäŊéŽéĸīŧå¯äģĨčįŗģBotææč
æå¨åŽæšįž¤įģä¸č¯ĸéŽ\n\nææåŊäģ¤éŊäģĨ \"/\" åŧå§"
+help_2: "å¨į§čä¸ä¸æčįŗģäģĨčˇå帎åŠ"
+#Settings
+setting_1: "âī¸ **éŗäšBot莞įŊŽ**\n\nđ **įž¤įģīŧ** {0}\nđ **įž¤įģ IDīŧ** {1}\n\nđĄ **äģ䏿šéæŠčĻįŧčžįåčŊ**"
+setting_3: "âī¸ čŋæ¯äģäšīŧ\n\n1) Directīŧį´æĨææžæį´ĸæĨč¯ĸãäŊŋ፠-v äģĨį´æĨæ¨Ąåŧææžč§éĸã\n\n2) Inlineīŧčŋåį¨äēå¨č§éĸåéŗéĸäšé´čŋčĄéæŠįå
čæ čŽ°æéŽã"
+setting_4: "âī¸ čŋæ¯äģäšīŧđĨ\n\nđĨ EveryoneīŧææäēēéŊå¯äģĨäŊŋį¨č¯Ĩįž¤įģä¸įįŽĄįååŊäģ¤īŧ/skip, /pause, /resume įīŧ\n\nđ Admin OnlyīŧåĒæįŽĄįå忿፿ˇæčŊäŊŋį¨įŽĄįååŊäģ¤"
+setting_5: "æĒæžå°ææį¨æˇ\n\næ¨å¯äģĨå
莸äģģäŊéįŽĄįåéčŋ /auth äŊŋ፿įįŽĄįååŊäģ¤īŧåšļäŊŋ፠/unauth å é¤"
+setting_9: "âī¸ čŋæ¯äģäšīŧ\n\nå¯į¨å, Bot å°äē {0} į§åå é¤čĒåˇąįæļæ¯"
+setting_10: "âī¸ čŋæ¯äģäšīŧ\n\n1īŧįž¤įģīŧå¨ååēåŊäģ¤įįģ䏿æžéŗäšã\n\n2īŧéĸéīŧ卿¨æŗčĻįéĸé䏿æžéŗäšãéčŋ /channelplay 莞įŊŽéĸé Id"
+setting_11: "âī¸ čŋæ¯äģäšīŧ\n\n1īŧEveryoneīŧčŋä¸Ēå°įģä¸įäģģäŊäēēéŊå¯äģĨå¨čŋéææžéŗäš\n\n2īŧAdmin OnlyīŧåĒæįŽĄįåæčŊææžæ¤įģä¸įéŗäš"
+setting_12: "â æ¨æ˛Ąæä¸ēéĸ鿍Ąåŧ莞įŊŽéĸé Id, 蝎äŊŋ፠/channelplay čŋčĄåŽäš"
+setting_13: "æ æŗå¨æ´ģå¨įž¤įģéč¯ä¸æ´æšææžæ¨Ąåŧã蝎å
äŊŋ፠/stop åæĸč¯éŗč夊ã"
+setting_14: "âī¸ čŋæ¯äģäšīŧ\n\nå¯į¨åīŧBot å°å é¤į¨æˇåéįæ§åļæäģ¤īŧ/playīŧ/pauseīŧ/shuffleīŧ/stopįīŧ\n\nBot éčĻå é¤æļæ¯įŽĄįåæéæčŊæŖå¸¸åˇĨäŊ"
+setting_15: "æ æŗč§Ŗåŗå¯šįéŽéĸīŧč¯ˇįĄŽäŋæ¨åˇ˛å¨éĸé䏿ˇģå äēBotåšļå°å
ļæåä¸ēįŽĄįåã\n\n蝎å°č¯åæŦĄčŽžįŊŽ /channelplayã"
+setting_16: "âī¸ čŋæ¯äģäšīŧ\n\nå¯į¨åīŧBot äŧæ¯ 1-2 å°æļéæēåéæå
ŗäē Bot įæį¤ēīŧåŊä줿å
ļäģå
厚įæį¨īŧ"
+set_cb_1: "æŖå¨čˇåéŗéĸ贍鿧åļéĸæŋ..."
+set_cb_2: "æŖå¨čˇåč§éĸ贍鿧åļéĸæŋ..."
+set_cb_3: "æŖå¨čˇåææį¨æˇæ§åļéĸæŋ..."
+set_cb_4: "æŖå¨čˇåææžæ¨Ąåŧæ§åļéĸæŋ..."
+set_cb_5: "æŖå¨čˇåæ¸
῍Ąåŧæ§åļéĸæŋ..."
+set_cb_6: "æŖå¨åēį¨čŽžįŊŽ"
+set_cb_7: "æŖå¨čˇåææį¨æˇå襨ä¸..."
+set_cb_8: "čŋåä¸..."
+#Misc
+ustats_1: "æĒæžå°į¨æˇįģ莥äŋĄæ¯"
+ustats_2: "æ¨åĨŊīŧå°įŽåä¸ēæĸīŧæ¨åˇ˛įģææžäē **{0}** éĻæ˛įŽīŧåšļ䏿°ééĢčžž **{1}** æŦĄ\n\näŊ ææžčŋįå {2} éĻīŧ\n\n"
+gstats_1: "čˇåå
¨åąįģčŽĄæ°æŽīŧčŋå¯čŊéčĻä¸äēæļé´..."
+gstats_2: "æĒæžå°įģčŽĄæ°æŽ"
+gstats_3: "æŖå¨Botä¸čˇåžå
¨åąTop10 {0} īŧčŋå¯čŊéčĻä¸äēæļé´"
+gstats_4: "**Bot ä¸įæģæĨč¯ĸæ°īŧ** {0}\n\n{1} å°įŽåä¸ēæĸä¸å
ąææžäē **{2}** ä¸Ēä¸åįåĒäŊīŧåšļä¸ææžæ°ééĢčžž **{3}** æŦĄ\n\n**ææžæŦĄæ°Top {4} æŦĄįåĒäŊīŧ**\n"
+gstats_5: "**å {0} ä¸Ēįž¤įģį {1}:**\n\n"
+gstats_6: "**å¨{1}ä¸įTop{0}፿ˇ**\n\n"
+gstats_7: "å°įŽåä¸ēæĸīŧč¯Ĩč夊įģä¸į´å¨ææž**{0}**æ˛įŽīŧå
ļæ°ééĢčžž**{1}**æŦĄã\n\næ¤č夊įģææžįTop {2} īŧ\n\n"
+gstats_8: "čˇåBotįäŋĄæ¯ä¸, čŋå¯čŊéčĻä¸äēæļé´..."
+gstats_9: "**Bot įå
¨åąįģ莥äŋĄæ¯**\n\näģ䏿šéæŠčĻæĨįįįģ莥äŋĄæ¯"
+gstats_10: "** {0}įå
¨åąįģ莥äŋĄæ¯ **\n\näģä¸éĸéæŠčĻäģBotæåĄå¨æŖæĨå
¨åąįģ莥äŋĄæ¯įæéŽã"
+gstats_11: "** {0} įįģ莥äŋĄæ¯**\näģ䏿šéæŠčĻæĨįįģ莥äŋĄæ¯\n\nåĻčĻæĨį Top 10 åĒäŊ|įž¤įģ|፿ˇ įīŧ蝎äŊŋ፠/gstats"
+#Play
+#Play Callback
+playcb_1: "čŋä¸éåäŊ īŧæį´ĸäŊ čĒåˇąįææ˛"
+playcb_2: "čˇåä¸ä¸ä¸Ēįģæ"
+#Channel Play
+cplay_1: "æ¨å¯äģĨå°č¯Ĩįž¤įģ [{0}] įéŗäšææžå°č¯Ĩįž¤įģéžæĨå°įéĸéæå
ļäģéĸé\n\n**寚äēįž¤įģéžæĨå°įéĸéīŧ**\nâ/{1} linkedâ\n\n**寚äēäģģäŊå
ļäģéĸéīŧ**\nâ/{1} [éĸé ID]â"
+cplay_2: "æ¤čå¤Šæ˛ĄæéžæĨįéĸé"
+cplay_3: "éĸéįĄŽåŽä¸ē {0}\n__Channel ID__: {1}"
+cplay_4: "æ æŗčˇåéĸé\n\nč¯ˇįĄŽäŋæ¨åˇ˛å¨éĸé䏿ˇģå äēBotåšļå°å
ļæåä¸ēįŽĄįå\néčŋ /channelplay įŧčžææ´æšéĸé"
+cplay_5: "äģ
æ¯æéĸé"
+cplay_6: "æ¨éčĻæ¯éĸé [{0}] į âææč
âæčŊå°å
ļ䏿¤įģčŋæĨã\n**éĸéįææč
īŧ** @{1}\n\næč
īŧæ¨å¯äģĨå°æ¨įįž¤įģéžæĨå°č¯Ĩéĸéīŧįļåå°č¯į¨â/channelplay linkedâčŋæĨ"
+#Play
+play_1: "đ æŖå¨å¤įæĨč¯ĸ... 蝎į¨åīŧ"
+play_2: "**đˇéĸéææžæ¨Ąåŧ**\n\nđå¤įæĨč¯ĸ... 蝎į¨åīŧ\n**éžæĨįéĸéīŧ** {0}"
+play_3: "æ æŗå¤įæĨč¯ĸīŧ"
+play_4: "đ **äģ
įŽĄįå坿æž**\nåĒæįŽĄįååčēĢäģŊéĒč¯į¨æˇå¯äģĨ卿¤įž¤įģ䏿æžéŗäšã\n\néčŋ /playmode æ´æšæ¨ĄåŧīŧåĻææ¨åˇ˛įģæ¯įŽĄįåīŧ蝎éčŋ /admincache éæ°å čŊŊįŽĄįåå襨"
+play_5: "æ æŗå¤įéŗéĸæäģļã\n\néŗéĸæäģļ大å°åēå°äē 100 Mb"
+play_6: "**čļ
åēææžæļé´éåļ**\n\n**å
čŽ¸įææžæļé´īŧ** {0} åé\n**æļå°įææžæļé´īŧ** {1} å°æļ"
+play_7: "æąæīŧįąäē CPU č´čŊŊéŽéĸīŧBot äģ
å
莸æéæ°éįč§éĸåŧåĢ, 莸å¤å
ļäģč夊į°å¨æŖå¨äŊŋį¨č§éĸéč¯, 蝎å°č¯åæĸå°éŗéĸæį¨ååč¯"
+play_8: "䏿¯ææįč§éĸæäģļæŠåąåīŧ\n\n**æ¯æįæ ŧåŧīŧ** {0}"
+play_9: "č§éĸæäģļ大å°åēå°äē 1 GiB"
+play_10: "**Youtubeææžå襨åčŊ**\n\néæŠčĻå¨å
ļä¸ææžæ´ä¸ĒYoutubeææžåčĄ¨įæ¨Ąåŧ"
+play_11: "đæ éĸīŧ **{0}\n\nâŗæļéŋīŧ** {1} åé"
+play_12: "**Spotifyææžæ¨Ąåŧ**\n\n蝎æąč
īŧ- {0}"
+play_13: "**Appleææžå襨**\n\n蝎æąč
īŧ- {0}"
+play_14: "**æ æŗéĒč¯ URLã**\nBot æŗįĨ鿤 URL æ¯åĻåąäēäģĨä¸äģģäŊåšŗå°īŧYoutubeãAppleMusicãSpotifyãResso å Soundcloudã\n\næ¨å¯äģĨå° /stream į¨äē M3u8 æčŋį¨éžæĨã"
+play_15: "**æŖæĩå°åŽæļæĩ**\n\nįŗģįģ厞尿¨įæ˛įŽéžæĨæŖæĩä¸ēåŽæļæĩãæŗįŠį´æåīŧ"
+play_16: "æ æŗčˇåæ˛įŽč¯ĻįģäŋĄæ¯, å°č¯ææžåĻä¸ä¸Ē"
+play_17: "æ æŗææžčŋį§įąģåį spotify æĨč¯ĸīŧ\n\næåĒčŊææž spotify æ˛įŽãä¸čžãč翝åŽļåææžå襨"
+play_18: "**æĒæžå°æ´ģå¨č¯éŗč夊**\n\nčĻäŊŋį¨åŧēåļææžīŧæ¨įįģä¸åŋ
éĄģææ´ģå¨č¯éŗč夊ã**åŧēåļææž**å¨č¯éŗč夊ä¸åæĸææžæ˛įŽīŧåšļįĢåŗåŧå§ææžæį´ĸ῞įŽīŧčä¸äŧåš˛æ°/æ¸
é¤éåã"
+#Playlist
+playlist_1: "**äŊŋ፿šæŗīŧ** /play [éŗäšåį§°æYoutubeéžæĨæåå¤ä¸æĄéŗéĸ]\n\nåĻæäŊ æŗææž Bot åå¨å¨æåĄå¨ä¸įå襨īŧ蝎äŊŋį¨ä¸éĸįæéŽ"
+playlist_2: "čˇåææžå襨ä¸..."
+playlist_3: "BotæåĄå¨ä¸æ˛Ąæææžå襨"
+playlist_4: "æåįææžå襨īŧ\n\n"
+playlist_5: " ææžéŋåēĻ- {0} åé"
+playlist_6: "į§čæäģĨå 餿æžå襨ã"
+playlist_7: "ææžå襨ä¸įæ˛įŽīŧ {0}\n\nææéŽå 餿æžå襨ä¸įįšåŽæ˛įŽ\n\nčĻå 餿´ä¸Ēææžå襨īŧæ \"Del Whole Playlist\""
+playlist_8: "æ¤æ˛įŽåˇ˛åå¨\n\næ¤æ˛įŽåå¨ä翍῿žå襨ä¸ã"
+playlist_9: "ä¸åĨŊææīŧæ¨åĒčŊ卿æžåčĄ¨ä¸æĨæ {0} éŗäšã"
+playlist_10: "äģĨä¸å
厚čĸĢæˇģå å°ææžå襨\n\n{0}"
+playlist_11: "厞æåå 餿¨įæ˛įŽã"
+playlist_12: "æ æŗå 餿˛įŽã"
+playlist_13: "äģæåĄå¨ä¸å é¤äēæ´ä¸Ēææžå襨ã "
+playlist_14: "**æ¨įĄŽåŽčĻå 餿´ä¸Ēææžå襨åīŧ**\n\næ¨å°ä¸ĸå¤ąææžå襨īŧåšļä¸äģĨåæ æŗæĸå¤ã"
+playlist_15: "[æĨįåŽæ´įææžå襨]({0})"
+playlist_16: "éåä¸įææžå襨īŧ"
+playlist_17: "éåäŊįŊŽ-"
+playlist_18: "[æĨįæ´ä¸Ēææžéå]({0})\n\nåŊåéåéŋåēĻ: **{1}**"
+#Playmode
+playmode_1: "éæŠčĻå¨å
ļ䏿æžįģå
æĨč¯ĸ῍Ąåŧ[{0}]ã"
+playmode_2: "{0} æ´æšåšļæåäŋåäē莞įŊŽ"
+#Stream
+str_1: "蝎æäž M3u8 éžæĨæį´ĸåŧéžæĨã"
+str_2: "â
æææĩ厞éĒč¯\n\n蝎įåž
å¤įéžæĨã"
+str_3: "æ æŗæĩåŧäŧ čž YouTube į´æãæĒæžå°åŽæļæ ŧåŧ"
+#TopPlay
+tracks_1: "**å¤į {0} å10ä¸Ēææžå襨**\nčŋå¯čŊéčĻå åéīŧ大įēĻ3-4åéīŧ, 蝎į¨å...\n\n**đ¤č¯ˇæąč
īŧ** {1}\n\näŊŋ፠/gstats æĨįå 10 éĻæ˛įŽ"
+tracks_2: "**é蝝**\n\nBotįæåĄå¨ä¸æ˛Ąæ**{0} å 10 įé¨å襨**, 蝎å°č¯äģģäŊå
ļäģææžå襨"
+#TOOLS
+#Lyrics
+lyrics_1: "**፿ŗīŧ**\n\n/lyrics [éŗäšåį§°]"
+lyrics_2: "æį´ĸæč¯"
+lyrics_3: "â æ æŗčˇåæč¯đãđĄ\n\n**å¨å°č¯æį´ĸīŧ** {0}"
+lyrics_4: "ååģä¸éĸįæéŽåšļčˇåæį´ĸįæč¯īŧäģĨéŋå
SPAMįąģåįæč¯æį´ĸ"
+#Ping
+ping_1: "Pong!!!!"
+ping_2: "{0} åŊåįåģļčŋä¸ē {1} ms\nPy-Tgcalls åŽĸæˇį̝åŊååģļčŋ {6} ms\n\nčŋčĄæģæļéŋ: {2}\nCPUåŊåå į¨: {4}\nRAM厞äŊŋį¨: {5}\nåå¨įŠēé´åˇ˛äŊŋį¨: {3}"
+#Song
+song_1: "æ¨åĒčŊå¨į§äēēč夊ä¸äģ YouTube ä¸čŊŊéŗäšæč§éĸã蝎åŧå§į§äēēč夊ã"
+song_2: "**፿ŗīŧ**\n\n/song [éŗäšåį§°] æ [Youtube éžæĨ]"
+song_3: "æŖæĩå°åŽæļéžæĨãææ æŗä¸čŊŊį´æįYouTubeč§éĸã "
+song_4: "**đæ éĸīŧ**- {0}\n\néæŠčĻä¸čŊŊįįąģåã"
+song_5: "䏿¯ææįYouTubeéžæĨ"
+song_6: "čˇåæ ŧåŧä¸.. \n\n蝎į¨å"
+song_7: "æ æŗčˇåč§éĸįå¯į¨æ ŧåŧã蝎å°č¯äģģäŊå
ļä쿞įŽã"
+song_8: "ä¸čŊŊåŧå§\n\nä¸čŊŊéåēĻå¯čŊåžæ
ĸ, 蝎įåž
.."
+song_9: "æ æŗäģYoutube-DLä¸čŊŊææ˛\n\n**åå īŧ** {0}"
+song_10: "æ æŗäģæåĄå¨ä¸äŧ å°Telegramã"
+song_11: "ä¸äŧ 厞åŧå§\n\nä¸äŧ éåēĻå¯čŊčžæ
ĸ, 蝎įåž
.."
+#Tools - Queue
+queue_1: "蝎į¨åããčˇåéåä¸.."
+queue_2: "éåä¸ēä¸ēįŠēãæĒæžå°æ˛įŽ"
+queue_3: "**æéæ˛įŽīŧ ** [äģčŋéæĨῴ夿鿞įŽ]({0})"
+queue_4: "âŗ åˇ˛æˇģå å°éå äŊäē **#{0}**\n\nđĄ**åį§°īŧ** {1}\nâą**æļéŋīŧ** {2}\nđ¤**æˇģå č
īŧ** {3}"
+queue_5: "éåå
åĒæä¸ä¸Ēæ˛įŽīŧ蝎忎ģå ä¸äēå°å襨"
+#All Streaming Lines
+stream_1: "đĄ **åŧå§ææž** đĄ\n\nđ¤**蝎æąčĒ: ** {0}\nđĻ**ææ˛č¯Ļæ
: **[Here]({1})"
+stream_2: "đĄ **åŧå§éčŋįŊéĄĩå°åæ¨æĩ ** đĄ\n\nđ¤**蝎æąčĒīŧ** {0}"
+stream_3: "đĄ **åŧå§ææž** đĄ\n\nđˇ**æ éĸ: ** {0}\nâī¸**æļéŋ: ** {1}\nđ¤**蝎æąčĒ: ** {2}"
+stream_4: "đĄ **åŧå§ææž** đĄ\n\nđˇ**æ éĸ: ** [{0}]({1})\nâī¸**æļéŋ: ** {2}\nđ¤**蝎æąčĒ: ** {3}"
+#Inline Buttons
+#General Buttons
+CLOSE_BUTTON: "đ å
ŗé"
+CLOSEMENU_BUTTON: "đ å
ŗé"
+BACK_BUTTON: "âŦ
čŋå"
+UNBAN_BUTTON: "đ č§ŖįĻåŠįč´Ļæˇ"
+#Lyrics
+L_B_1: "đ æŖå¨æĨįæč¯"
+#Start
+S_B_1: "đ æäģ¤å¸ŽåŠ"
+S_B_2: "đ§ 莞įŊŽ"
+S_B_3: "đ¨ æ¯æ"
+S_B_4: "đ¨ éĸé"
+S_B_5: "â å°ææˇģå å°äŊ įįž¤įģ"
+S_B_6: "đĄ Git Repo"
+S_B_7: "đ¤ Bot ææč
"
+S_B_8: "đ åĻäŊäŊŋį¨īŧæĨįåŊäģ¤čåã"
+#Help
+H_B_1: "įŽĄįåæäģ¤"
+H_B_2: "ææžæäģ¤"
+H_B_3: "Botæäģ¤"
+H_B_4: "å
ļäģåŊäģ¤"
+H_B_5: "å
ŗéčå"
+H_B_6: "Sudo፿ˇæäģ¤"
+#PlayMode
+PM_B_1: "į´æĨææž"
+PM_B_2: "å
čæ čŽ°"
+PM_B_3: "éĸéææž"
+#Play
+P_B_1: "đĩ ææžéŗéĸ"
+P_B_2: "đĨ ææžč§éĸ"
+P_B_3: "đŽ åŧå§į´æ"
+P_B_4: "đĩ ææžå襨"
+#Playlist
+PL_B_1: "đ ææžå襨"
+PL_B_2: "â æˇģå å°ææžå襨"
+PL_B_3: "â ææžæ§åļ"
+PL_B_4: "đĄ ææžæ¨Ąåŧ"
+PL_B_5: "đ å 餿´ä¸Ēææžå襨"
+PL_B_6: "âī¸ å 餿æžå襨"
+PL_B_7: "âī¸ æ¯į, æįĨéæå¨åäģäš, å é¤åŽ"
+PL_B_8: "đĸ ææžæĻåå 10 å"
+PL_B_9: "đ¤ ææžå
¨åąå 10 éĻæ˛įŽ"
+PL_B_10: "đ ææžįž¤įģä¸å 10 大æ˛įŽ"
+PL_B_11: "đ¤ ææžä¸Ēäēēå 10 éĻæ˛įŽ"
+#Settings
+ST_B_1: "đ éŗéĸč´¨é"
+ST_B_2: "đĨ č§éĸč´¨é"
+ST_B_3: "đŠ ææį¨æˇ"
+ST_B_4: "đą æ§åļéĸæŋ"
+ST_B_5: "âļī¸ ææžæ¨Ąåŧ"
+ST_B_6: "đŗī¸ č¯č¨"
+ST_B_7: "đ æ´æ´æ¨Ąåŧ"
+ST_B_8: "{0} äŊč´¨ééŗéĸ"
+ST_B_9: "{0} ä¸įč´¨ééŗéĸ"
+ST_B_10: "{0} éĢåč´¨éŗéĸ"
+ST_B_11: "{0} äŊč´¨éč§éĸ"
+ST_B_12: "{0} ä¸įč´¨éč§éĸ"
+ST_B_13: "{0} éĢč´¨éč§éĸ"
+ST_B_14: "â
å¯į¨"
+ST_B_15: "â įĻį¨"
+ST_B_16: "đ¤ äģ
įŽĄįå"
+ST_B_17: "đĨ ææäēē"
+ST_B_18: "đ ææį¨æˇå襨"
+ST_B_19: "đ æį´ĸæ¨Ąåŧ"
+ST_B_20: "â
Direct æ¨Ąåŧ"
+ST_B_21: "â
Inline æ¨Ąåŧ"
+ST_B_22: "đ¨ââī¸ įŽĄįåæäģ¤"
+ST_B_23: "đ įž¤įģ"
+ST_B_24: "đˇ éĸé"
+ST_B_25: "đĢ ææžįąģå"
+ST_B_26: "đ æä줿¸
į"
+ST_B_27: "đ§âđ åŽæļæį¤ē"
+#Song
+SG_B_1: "âī¸ æåŧį§č"
+SG_B_2: "đ éŗéĸ"
+SG_B_3: "đĨ č§éĸ"
+#Stats
+SA_B_1: "đĸ ææžæŦĄæ°æå¤įįž¤įģ Top 10"
+SA_B_2: "đĸ æåæŦĸčŋįåĒäŊ Top 10"
+SA_B_3: "đ§ ææžæŦĄæ°æå¤į፿ˇ Top 10"
+SA_B_4: "đˇ č¯ĨįģæåæŦĸčŋįåĒäŊ Top 10"
+SA_B_5: "đĄ Bot įģ莥äŋĄæ¯"
+SA_B_6: "đ¤ æįįģ莥"
+SA_B_7: "đĸ å
¨åą Top 10 įģčŽĄæ°æŽ"
+SA_B_8: "đ¤ Botįļæ"
+#Queue
+QU_B_1: "đ éå"
+QU_B_2: "ææžäē {1} ä¸į {0}"
+#Sudo Users [ If you are translating this to some other language .. you can leave all these strings in english language]
+#Sudo
+sudo_1: "{0} 厞į쿝Sudo ፿ˇ"
+sudo_2: "æˇģå äē **{0}** å° Sudo ፿ˇã"
+sudo_3: "ä¸äŊäēBot Sudoä¸"
+sudo_4: "厞äģBotį Sudo ፿ˇä¸å é¤"
+sudo_5: "âī¸ **ææč
īŧ** \n"
+sudo_6: "\nâī¸ \n **Sudo ፿ˇīŧ** \n"
+sudo_7: "æ˛Ąæ Sudo ፿ˇ"
+#Block
+block_1: "{0} 厞įģčĸĢBotå°įĻ"
+block_2: "åˇ˛å° **{0}** æˇģå å°Botįéģæĸå襨ä¸, ፿ˇį°å¨å¨äģģäŊæ
åĩä¸éŊæ æŗäŊŋį¨Bot\n\næĨįčĸĢå°įĻį፿ˇīŧ/blockedusers"
+block_3: "፿ˇåˇ˛įģéæžä¸æĒčĸĢéģæĸ"
+block_4: "厞äģéģæĸå襨ä¸å é¤į¨æˇ, ፿ˇį°å¨å°čŊå¤äŊŋį¨Bot"
+block_5: "æĒæžå°čĸĢå°įĻį፿ˇ"
+block_6: "čˇå፿ˇå°įĻå襨ä¸... 蝎į¨å"
+block_7: "**čĸĢå°įĻį፿ˇīŧ**\n\n"
+#Blacklist Chats
+black_1: "**፿ŗīŧ**\n/blacklistchat [CHAT_ID]"
+black_2: "įž¤įģ厞įģå¨éģååä¸"
+black_3: "įž¤įģ厞æååå
Ĩéģåå"
+black_4: "**፿ŗīŧ**\n/whitelistchat [CHAT_ID]"
+black_5: "įž¤įģ厞įģå¨įŊååä¸"
+black_6: "įž¤įģ厞æååå
ĨįŊåå"
+black_7: "**åå
Ĩéģååįįž¤įģīŧ**\n\n"
+black_8: "æ˛Ąæåå
Ĩéģååįįž¤įģ"
+#videolimit
+vid_1: "**፿ŗīŧ**\n/set_video_limit [å
莸įįž¤įģæ°é] æ [Disable]"
+vid_2: "蝎äŊŋ፿°åæĨ莞įŊŽéåļ"
+vid_3: "č§éĸé蝿大éåļåŽäšä¸ē {0} ä¸Ēįž¤įģ"
+vid_4: "č§éĸéč¯åˇ˛įĻį¨"
+#maintenance
+maint_1: "**፿ŗīŧ**\n/maintenance [enable|disable]"
+maint_2: "厞å¯į¨įģ´æ¤"
+maint_3: "厞įĻį¨įģ´æ¤æ¨Ąåŧ"
+#log
+log_1: "**፿ŗīŧ**\n/logger [enable|disable]"
+log_2: "厞å¯į¨æĨåŋ莰åŊ"
+log_3: "厞įĻ፿Ĩåŋ莰åŊ"
+#videomode
+vidmode_1: "**፿ŗīŧ**\n/videomode [download|m3u8]"
+vidmode_2: "č§éĸææžæ¨Ąåŧ莞įŊŽä¸ēä¸čŊŊ, Botį°å¨å°ä¸čŊŊæ˛įŽ"
+vidmode_3: "č§éĸææžæ¨Ąåŧ莞įŊŽä¸ē m3u8, Botį°å¨å°åŽæļææžæ˛įŽ"
+#broadcast
+broad_1: "** {0} č夊ä¸įåšŋææļæ¯ä¸æĨčĒBotį {1} įŊŽéĄļæļæ¯ã**"
+broad_2: "åŧå§åŠįč´Ļæˇåšŋæ..."
+broad_3: "**åŠįč´Ļæˇåšŋæīŧ**\n\n"
+broad_4: "åŠįč´Ļæˇ {0} å¨ {1} ä¸åšŋæ\n"
+broad_5: "**፿ŗ**īŧ\n/broadcast [æļæ¯] æč
[åå¤ä¸æĄæļæ¯]"
+broad_6: "蝎æäžä¸äēæåčŋčĄåšŋæ"
+broad_7: "**å {0} ä¸Ē፿ˇåšŋææļæ¯**"
+#Heroku
+heroku_1: "č¯ˇįĄŽäŋæ¨į Heroku API å¯éĨ忍įåēį¨į¨åēåį§°å¨ heroku 䏿ŖįĄŽé
įŊŽ"
+heroku_2: "æ¨åĒčŊčˇåHerokuåēį¨į¨åēįæĨåŋ"
+heroku_3: "**፿ŗīŧ**\n/get_var [åéåį§°]"
+heroku_4: "æžä¸å°äģģäŊæ¤įąģåéã"
+heroku_5: "æžä¸å° .env æäģļã"
+heroku_6: "**፿ŗīŧ**\n/get_var [åéåį§°]"
+heroku_7: "{0} 厞å é¤ã"
+heroku_8: "**፿ŗīŧ**\n/set_var [åé] [åéåŧ]"
+heroku_9: "{0} 厞æåæ´æ°"
+heroku_10: "厞æåæˇģå {0}"
+heroku_11: "äģ
éį¨äē Heroku åēį¨į¨åē"
+heroku_12: "æŖå¨æŖæĨ Heroku äŊŋ፿
åĩã蝎į¨å"
+heroku_13: "æŖå¨æŖæĨå¯į¨æ´æ°..."
+heroku_14: "Git åŊäģ¤é蝝"
+heroku_15: "æ æį Git Repsitory"
+#Private bot mode
+pbot_1: "**፿ŗīŧ**\n/authorize [CHAT_ID]"
+pbot_2: "**፿ŗīŧ**\n/unauthorize [CHAT_ID]"
+pbot_3: "厞å°įģåŽč夊æˇģå å°ææå襨"
+pbot_4: "厞äģææå襨ä¸å é¤įģåŽįč夊"
+pbot_5: "čå¤Šåˇ˛å¨ææå襨ä¸"
+pbot_6: "ææå襨ä¸ä¸å卿¤įąģč夊"
+pbot_7: "æ æŗéĒč¯chat_idã\n\nįĄŽäŋå
ļæ°å䏿 ŧåŧæŖįĄŽã蝎åŋäŊŋį¨čå¤Šį¨æˇåæéžæĨã"
+pbot_8: "蝎į¨åããããæŖå¨čˇåææč夊ã"
+pbot_9: "**æåįčå¤ŠčŽ°åŊīŧ **\n\n"
+pbot_10: "į§č"
+pbot_11: "æĒæžå°ææč夊"
+pbot_12: "į§å¯Botæ¨Ąåŧ厞įĻį¨ã\n\nčĨčĻå°Botį¨äŊį§å¯Botīŧč¯ˇįĄŽäŋ莞įŊŽ **PRIVATE_BOT_MODE** = **True**"
+pbot_13: "\n**æĒå é¤įčå¤ŠčŽ°åŊīŧ **\n\n"
+#Gbanned
+gban_1: "äŊ æŗčĒåˇągbančĒåˇąåīŧå¤äšæč ĸīŧ"
+gban_2: "æåēč¯ĨåąčŊčĒåˇąåīŧåå"
+gban_3: "æ¨æŗéģæĸ sudo ፿ˇåīŧ"
+gban_4: "{0} 厞įģäģBotä¸**å°įĻäē**ã"
+gban_5: "**æŖå¨åå§å {0}įå
¨åąå°įĻ **\n\néĸ莥æļé´īŧ {1}."
+gban_6: "**å
¨åąå°įĻæå**\n\n厞å°**{0}**å¨**{1}**ä¸Ēč夊ä¸å°įĻ"
+gban_7: "{0} 厞įģäģBotä¸**å°įĻäē**ã"
+gban_8: "**æŖå¨åæļå°įĻ {0}**\n\néĸ莥æļé´ īŧ {1}."
+gban_9: "**å
¨åąåæļå°įĻæå**\n\n厞å°**{0}**å¨**{1}**ä¸Ēč夊ä¸åæļå°įĻ"
+gban_10: "æĒæžå° Gbanned ፿ˇã"
+gban_11: "蝎į¨įįåģãæŖå¨čˇå Gbanned ፿ˇå襨"
+#Suggestions
+sug_0: "â **äŊ įĨéåīŧ**\n\nâ
"
+sug_1: "æ¨å¯äģĨå¨ä¸¤į§**æį´ĸæ¨Ąåŧ**䏿æžéŗäšīŧåŗį´æĨæ¨ĄåŧåInlineæ¨Ąåŧã\n\néčŋ /playmode æ´æšæ¨Ąåŧ"
+sug_2: "æ¨å¯äģĨå¨ä¸¤į§**ææžįąģå**䏿æžéŗäšīŧåŗææäē翍ĄåŧåįŽĄį忍Ąåŧã\n\néčŋ /playmode æ´æšæ¨Ąåŧ"
+sug_3: "æ¨äšå¯äģĨå¨**éĸé**䏿æžéŗäšã\n\néčŋ /channelplay 莞įŊŽchannel_idīŧåšļéčŋ /cplay ææž "
+sug_4: "éįŽĄįåäšå¯äģĨéčŋå°įŽĄįååŊä줿ˇģå å°**ææį¨æˇå襨**æĨäŊŋį¨įŽĄįåŊäģ¤ã \néčŋ /auth å°äģģäŊ፿ˇæˇģå å°ææå襨īŧäŊŋ፠/unauth å é¤īŧåšļéčŋ /authusers æĨ῿፿ˇ"
+sug_5: "Botæä¸ä¸Ēåä¸ēâ**æ¸
῍Ąåŧ**âįåčŊã\nåŽäŧå¨5åéåå é¤Botįæļæ¯īŧåšļįĄŽäŋäŊ įč夊äŋæåš˛åã\n\näģ /settings å¯į¨æįĻį¨åš˛åæ¨Ąåŧ [__Enabled by default__]"
+sug_6: "æ¨äšå¯äģĨææž**Spotify**æ˛įŽåææžå襨ã\n\nį°å¨åŧå§ /play [Spotify Link]"
+sug_7: "æ¨äšå¯äģĨææž**Apple**æ˛įŽåææžå襨ã\n\nį°å¨åŧå§ /play [Apple Link]"
+sug_8: "æ¨äšå¯äģĨææž**Resso**æ˛įŽåææžå襨ã\n\nį°å¨åŧå§ /play [Resso Link]"
+sug_9: "æ¨äšå¯äģĨææž**SoundCloud **æ˛įŽåææžå襨ã\n\nį°å¨åŧå§ /play [SoundCloud Link]"
+sug_10: "æ¨å¯äģĨéčŋ /vplay [č§éĸåį§°] æ /play -v [č§éĸåį§°] å¨č¯éŗčå¤Šä¸ææž **č§éĸ**"
+sug_11: "æ¨å¯äģĨå°č¯éŗč夊į**éŗéĸč´¨é**莞įŊŽä¸ēâäŊâãâä¸âæâéĢâã\n\néčŋ /settings 莞įŊŽč´¨é"
+sug_12: "æ¨å¯äģĨå°č¯éŗč夊į**č§éĸč´¨é**莞įŊŽä¸ēâäŊâãâä¸âæâéĢâã\n\néčŋ /settings 莞įŊŽč´¨é"
+sug_13: "æ¨å¯äģĨå¨BotīŧåĻTop 10 Play Tracksīŧ䏿Ĩ῍į**įģ莥äŋĄæ¯**ã\n\nčˇåįģčŽĄæ°æŽīŧ/gstats "
+sug_14: "æ¨å¯äģĨå¨BotīŧåĻTop 10 Play Tracksīŧ䏿Ĩįįž¤įģį**įģ莥äŋĄæ¯**ã\n\nčˇåįģčŽĄæ°æŽīŧ/gstats "
+sug_15: "æ¨å¯äģĨæĨį Bot į **å
¨åąįģčŽĄæ°æŽ Top 10**\n\nčˇåįģčŽĄæ°æŽīŧ/gstats"
+sug_16: "æ¨į°å¨å¯äģĨå°č¯éŗčå¤Šä¸ææžįéŗäšééŗã\n\nåŊäģ¤īŧ/mute"
+sug_17: "æ¨į°å¨å¯äģĨåæļééŗåšļå°č¯éŗčå¤Šä¸ææžįéŗäšééŗã\n\nåŊäģ¤īŧ/mute å /unmute"
+sug_18: "æ¨äšå¯äģĨ䏿äģŦä¸čĩˇæį´ĸéŗäšįæč¯ã\n\nåŊäģ¤īŧ /lyrics [éŗäšåį§°]"
+sug_19: "æ¨å¯äģĨéčŋYoutubeäģBotä¸čŊŊéŗäšæč§éĸã\n\nåŊäģ¤īŧ/song [éŗäšåį§°]"
+sug_20: "æ¨å¯äģĨčˇåžBotčŊæĨåįåŊäģ¤įåŽæ´å襨ã\n\nåŊäģ¤īŧ /help"
+sug_21: "Botå
ˇææåĄå¨įĢ¯ææžå襨é饚ã\n\næ¨å¯äģĨ卿æžåčĄ¨ä¸æˇģå éŗäšīŧåšļéčŋ/playä¸čĩˇææž"
+sug_22: "į°å¨å¯äģĨå¨Botä¸éæēææžæŖå¨æéįéŗäšã\n\nåŊäģ¤īŧ/shuffle"
+sug_23: "æ¨å¯äģĨæŖæĨéŗäšįéåã\n\nåŊäģ¤īŧ/queue"
+sug_24: "æ¨å¯äģĨæŖæĨįŽĄįæįææč
å sudo ፿ˇã\n\nåŊäģ¤īŧ/sudolist"
+sug_25: "Botå
ˇæåä¸ē**åŊäģ¤å 餿¨Ąåŧ**įåčŊãåŽäŧčĒå¨å é¤å
ļæ§čĄįåŊäģ¤ã\n\nå¨/settings ä¸å¯į¨æįĻį¨å 餿¨Ąåŧ [__Enabled by default__]"
+sug_26: "å¯äģĨå°Botįč¯č¨æ´æšä¸ēå¯į¨č¯č¨īŧäģĨäžŋäēįč§Ŗã\n\nåŊäģ¤īŧ/language"
+sug_27: "Botæä¸ä¸Ēåä¸ē**åŧēåļææž**įåčŊã\n\n**åŧēåļææž**åæĸč¯éŗč夊ä¸įææžæ˛įŽīŧåšļįĢåŗåŧå§ææžæį´ĸ῞įŽīŧčä¸äŧåš˛æ°/æ¸
é¤éåã\n\nåŊäģ¤īŧ/playforce"
diff --git a/strings/langs/en.yml b/strings/langs/en.yml
new file mode 100644
index 0000000000000000000000000000000000000000..0573af770b105b1bafdd370e91f6eb751013b64e
--- /dev/null
+++ b/strings/langs/en.yml
@@ -0,0 +1,473 @@
+name : đ´ķ §ķ ĸķ Ĩķ Žķ §ķ ŋ English
+
+# General Strings
+general_1 : "Reply to a user's message or give username/user_id."
+general_2 : "Error! Wrong Usage of Command."
+general_3 : "Some **exception occured** while processing your query.\n\nException Type:- {0}"
+general_4 : "You're an anonymous admin in this chat group!\nRevert back to User Account From Admin Rights."
+general_5 : "You need to be admin with manage voice chat rights to perform this action."
+general_6 : "Bot isn't streaming on voice chat."
+
+# Classes - Telegram.py
+tg_1 : "Bot is **overloaded** with downloads right now.\n\n**Try After:** {0} (__expected time__)"
+tg_2 : "Failed to download the media from telegram."
+
+# Core - Call.py
+call_1 : "Bot requires **Admin** Permission to invite assistant account to your channel."
+call_2 : "Assistant is banned in your group or channel, please unban.\n\n**Assistant Username:** @{0}\n**Assistant ID:** {1}"
+call_3 : "Exception Occured While Inviting Assistant Account to your chat.\n\n**Reason**: {0}"
+call_4 : "Bot requires **Invite Users Via Link** Permission to invite assistant account to your chat group."
+call_5 : "Assistant Account will be joining in 5 Seconds..Please Wait!"
+call_6 : "Assistant Account[{0}] Joined Successfully.\n\nStarting Music Now"
+call_7 : "**Harmful Admin Right Given **\n\nPlease remove **BAN USERS** rights from the bot."
+call_8 : "**Harmful Admin Right Given **\n\nPlease remove **ADD NEW ADMINS** rights from the bot."
+call_9 : "**Failed to switch Stream**\nPlease use /skip to change track again."
+call_10 : "Downloading Next Track from Playlist"
+call_11 : "Please add @{0} to your channel[ ID: {1}].\n\nBot is not able to get channel details."
+
+# PLUGINS - Auth.py
+auth_1 : "You can only have 20 Users in your group's Authorised Users List (AUL)"
+auth_2 : "Added to Authorised Users List of your group."
+auth_3 : "Already in the Authorised Users List."
+auth_4 : "Removed from Authorised Users List of this Group."
+auth_5 : "Targeted user is not an Authorised User."
+auth_6 : "Fetching Authorised Users... Please Wait"
+auth_7 : "**Authorised Users List[AUL]:**\n\n"
+auth_8 : "â Added By:-"
+
+# PLUGINS - Admins
+admin_1 : "Music is already Paused."
+admin_2 : "đ§ Voicechat Paused by {}!"
+admin_3 : "Music is already resumed."
+admin_4 : "đ§ Voicechat Resumed by {}!"
+admin_5 : "Music is already muted."
+admin_6 : "đ§ Voicechat Muted by {}!"
+admin_7 : "Music is already unmuted."
+admin_8 : "đ§ Voicechat Unmuted by {}!"
+admin_9 : "đ§ Voicechat End/Stopped by {}!"
+admin_10 : "đ§ Voicechat Skipped by {}!. No More Music in Queue."
+admin_11 : "Error while changing stream to **{0}**\n\nPlease use /skip again."
+admin_12 : "Unable to skip to a specific track because of enabled loop play. Please disable loop play via `/loop disable` to use this feature."
+admin_13 : "Please use numeric numbers for specific tracks, like 1, 2 or 4 etc"
+admin_14 : "Atleast 2 tracks needed in queue to skip to a specific number. Check queue by /queue"
+admin_15 : "Not enough tracks in queue for the value given by you. Please choose numbers between 1 and {0}"
+admin_16 : "Failed to skip to specific track.\n\nCheck left queue by /queue"
+admin_17 : "{0}.. Please Wait"
+admin_18 : "Admin List Not Found\n\nPlease reload adminlist via /admincache or /reload"
+admin_19 : "You need to be admin with manage voice chat rights to perform this.\nIf you're already admin, reload admincache via /admincache "
+admin_20 : "Admin cache reloaded successfully."
+admin_21 : "Nothing inside queue to shuffle"
+admin_22 : "Failed to shuffle.\n\nCheck queue : /queue"
+admin_23 : "**Queue Shuffled by {0}**\n\nCheck shuffled queue : /queue"
+admin_24 : "**Usage:**\n/loop [enable/disable] or [Number between 1-10]\n\n**Example:** /loop 5"
+admin_25 : "Loop enabled by {0} for **{1}** times. Bot will now repeat the current playing music on voice chat for **{1}** times"
+admin_26 : "Please use numbers between 1-10 for loop play"
+admin_27 : "Loop Play has been disabled"
+admin_28 : "**Usage:**\n/seek or /seekback [Duration in seconds]"
+admin_29 : "Please use numeric duration seconds like 10-20-30 second for seeking"
+admin_30 : "Sorry but you can't seek the currently playing stream. It can only be skipped or stopped."
+admin_31 : "Bot is not able to seek due to high duration given. You need to seek to a lower duration and remember that a time of 10 seconds is left after seeking.\n\nCurrently played** {0}** mins out of **{1}** mins"
+admin_32 : "Please Wait... Seeking ongoing stream."
+admin_33 : "Successfully Seeked Stream to {0} Mins"
+admin_34 : "Failed to seek the current stream."
+
+# Bot
+
+# Start
+start_1 : "Thanks for having me in {0}.\n{1} is alive.\n\nFor any assistance or help, checkout our support group and channel."
+start_2 : "Hello, My name is {0}.\n\nI'm a telegram streaming bot with some useful features. Supporting platforms like Youtube, Spotify, Resso, AppleMusic , Soundcloud etc.\n\nFeel free to add me to your groups."
+start_3 : "Welcome To {0}\n\nI don't need any **admin permission** to work ( until asked for ).\n\nAssistant Username:- @{1}\nAssistant ID:- {2}"
+start_4 : "{0}'s Owner[{1}] has just joined your chat."
+start_5 : "A member of {0}'s Sudo User[{1}] has just joined your chat."
+start_6 : "âī¸ **Supergroup Needed** âī¸\n\nPlease convert your **group** to **supergroup** and then add me back.\n\n**How to make supergroup?**\nâ
Make your group's chat history **visible** once."
+start_7 : "**Blacklisted Chat**\n\nYou're chat has been blacklisted by the Bot. Please ask any SudoUser to whitelist chat first. Check [Sudolist from here]({0})"
+
+# Help
+help_1 : "Click on the buttons below for more information. If you're facing any problem in command you can contact my bot owner or ask in support chat.\n\nAll commands can be used with: /"
+help_2 : "Contact me in PM for help."
+
+# Settings
+setting_1 : "âī¸ **Music Bot Settings**\n\nđ**Group:** {0}\nđ**Group ID:** `{1}`\n\nđĄ**Choose the function buttons from below which you want to edit or change.**"
+setting_3 : "âī¸ What is This?\n\n1) Direct: Plays search queries directly. Use -v to play videos in direct mode.\n\n2) Inline: Returns Inline Markup Buttons for choosing between video & audio."
+setting_4 : "âī¸ What is This?\n\nđĨ Everyone: Anyone can use admin commands(skip, pause, resume etc) present in this group.\n\nđ Admin Only: Only admins and authorized users can use admin commands."
+setting_5 : "No Authorized Users Found\n\nYou can allow any non-admin to use my admin commands by /auth and delete by using /unauth"
+setting_9 : "âī¸ What is This?\n\nWhen activated, Bot will delete its message after {0} to make your chat clean and clear."
+setting_10 : "âī¸ What is This?\n\n1) Group: Plays music in the group where the command is given .\n\n2) Channel: Plays music in the channel you want. Set channel id via /channelplay"
+setting_11 : "âī¸ What is This?\n\n1) Everyone: Anyone present in this group can play music here.\n\n2) Admin Only: Only admins can play the music in this group."
+setting_12 : "â You've no channel id defined for channel mode. Please define with /channelplay."
+setting_13 : "Can't change play mode in active group call. Please stop the voice chat first with /stop."
+setting_14 : "âī¸ What is This?\n\nWhen activated, Bot will delete its executed commands (/play, /pause, /shuffle, /stop etc) immediately.\n\nBot will be requiring delete messages admin right for this to work properly."
+setting_15 : "Failed to resolve peer, Make sure you have added bot in your channel and promoted it as admin.\n\nTry setting /channelplay again.."
+setting_16 : "âī¸ What is This?\n\nWhen activated, Bot will suggest your chat in every 1-2 hour about bot commands (How to use them, which are the commands and many other things) randomly."
+
+
+set_cb_1 : "Getting Audio Quality Panel..."
+set_cb_2 : "Getting Video Quality Panel..."
+set_cb_3 : "Getting Auth Users Panel..."
+set_cb_4 : "Getting Play Mode Panel..."
+set_cb_5 : "Getting Clean Mode Panel..."
+set_cb_6 : "Setting up changes."
+set_cb_7 : "Getting Auth Users List.. PLEASE WAIT."
+set_cb_8 : "Getting back.."
+
+# Misc
+ustats_1 : "No User Stats Found."
+ustats_2 : "Greetings!, You have played **{0}** tracks till now with a whopping count of **{1}** times.\n\nTop {2} played by you:\n\n"
+
+gstats_1 : "Getting Global Stats, This could take some time..."
+gstats_2 : "No Stats Found."
+gstats_3 : "Getting Global Top 10 {0} on the bot, This could take some time.."
+gstats_4 : "**Total Queries on Bot:** {0}\n\n{1} has played **{2}** tracks till now with a whopping count of **{3}** times.\n\n**Top {4} Tracks:**\n"
+gstats_5 : "**Top {0} Chats of {1}:**\n\n"
+gstats_6 : "**Top {0} Users of {1}:**\n\n"
+gstats_7 : "This chat group has played **{0}** tracks till now with a whopping count of **{1}** times.\n\nTop {2} played by this chat group:\n\n"
+gstats_8 : "Getting Bot's general stats and information.. This could take some time..."
+gstats_9 : "**GLOBAL TOP 10 STATS OF THE BOT**\n\nSelect the buttons from below for which you want to check global stats from bot's servers."
+gstats_10 : "**Global Stats of {0}**\n\nSelect the buttons from below for which you want to check global stats from bot's servers."
+gstats_11 : "**General Stats of {0}**\nSelect the buttons from below for which you want to check global stats from bot's servers.\n\nTo check top tracks, chats, users and other stuffs, please use /gstats"
+
+
+# Play
+
+#Play Callback
+playcb_1 : "This is not for you! Search You Own Song."
+playcb_2 : "Getting Next Result"
+
+# Channel Play
+cplay_1 : "You can play music in channels from this chat[{0}] to any channel or your chat's linked channel.\n\n**For linked channel:**\n`/{1} linked`\n\n**For any other channel:**\n`/{1} [Channel ID]`"
+cplay_2 : "This chat has no linked channel."
+cplay_3 : "Channel Defined to {0}\n\n__Channel ID__: {1}"
+cplay_4 : "Failed to get channel.\n\nMake sure you have added bot in your channel and promoted it as admin.\nEdit or Change channel via /channelplay"
+cplay_5 : "Only Channels are supported."
+cplay_6 : "You need to be the **Owner** of the channel[{0}] to connect it with this group.\n**Channel's Owner:** @{1}\n\nAlternatively you can link your group to that channel and then try connnecting with `/channelplay linked`"
+
+#Play
+play_1 : "đ Processing Query... Please Wait!"
+play_2 : "**đˇChannel Play Mode**\n\nđ Processing Query... Please Wait!\n**Linked Channel:** {0}"
+play_3 : "Failed to Process Query!"
+play_4 : "đ **Admins Only Play**\nOnly Admins and Auth Users can play music in this group.\n\nChange mode via /playmode and if you're already admin, reload admincache via /admincache"
+play_5 : "Failed to process audio file.\n\nAudio File Size Should Be Less Than 100 mb"
+play_6 : "**Duration Limit Exceeded**\n\n**Allowed Duration: **{0} minute(s)\n**Received Duration:** {1} hour(s)"
+play_7 : "Sorry! Bot only allows limited number of video calls due to CPU overload issues. Many other chats are using video call right now. Try switching to audio or try again later"
+play_8 : "Not A Valid Video File Extension!\n\n**Supported Formats:** {0}"
+play_9 : "Video File Size Should Be Less Than 1 GiB"
+play_10 : "**Youtube Playlist Feature**\n\nSelect the Mode in which you want to play whole Youtube Playlist"
+play_11 : "đTitle: **{0}\n\nâŗDuration:** {1} Mins"
+play_12 : "**Spotify Play Mode**\n\nRequested By:- {0}"
+play_13 : "**Apple Playlists**\n\nRequested By:- {0}"
+play_14 : "**Unable to verify the URL.**\nBot wonders if this url belongs to any of the following platforms: Youtube, AppleMusic, Spotify, Resso and Soundcloud.\n\nYou can use /stream for M3u8 or Remote Links."
+play_15 : "**Live Stream Detected**\n\nSystems have detected your track link as live stream. Want to play live stream ?"
+play_16 : "Failed to fetch track details. Try playing any other."
+play_17 : "Unable to play this type of spotify query!\n\nI can only play spotify tracks, albums, artists and playlists"
+play_18 : "**No Active Voice Chat Found**\n\nTo use force play, there must be an active voice chat going on in your group. **Force Play** stops the playing track on voice chat and starts playing the searched track instantly without disturbing/clearing queue."
+play_19 : "đTitle: **{0}\n\nâŗDuration:** {1} Mins \nSelected file streaming on @SparkStreamGroup\nPlease join call on @SparkStream_bot to listen"
+
+#Playlist
+playlist_1 : "**Usage:** /play [Music Name or Youtube Link or Reply to Audio]\n\nIf you want to play Bot's Server Playlist! Press the button below."
+playlist_2 : "Getting your playlist. Please wait"
+playlist_3 : "You have no playlist on Bot's Server."
+playlist_4 : "Fetched Playlist:\n\n"
+playlist_5 : " Duration- {0} Mins"
+playlist_6 : "Contact me in PM for deletion of Playlists."
+playlist_7 : "Tracks Inside Playlist: {0}\n\nPress the Buttons to delete a particular track in your playlist.\n\nTo delete whole playlist: Press Del Whole Playlist button."
+playlist_8 : "Already Exists\n\nThis track exists in your playlist."
+playlist_9 : "Sorry! You can only have {0} music in a playlist."
+playlist_10 : "Playlist Addition\n\n{0}\nadded to your playlist."
+playlist_11 : "Successfully deleted your track."
+playlist_12 : "Failed to delete your track."
+playlist_13 : "Deleted your whole playlists from the server. "
+playlist_14 : "**Are you Sure you want to delete your whole playlist?**\n\nYou'll lost your playlist and this can't be recovered later."
+playlist_15 : "[Checkout Whole Playlist]({0})"
+playlist_16 : "Queued Playlist:"
+playlist_17 : "Queued Position-"
+playlist_18 : "[Checkout Whole Queued Playlist]({0})\n\nLast Queued Position : **{1}**"
+
+#Playmode
+playmode_1 : "Select the mode in which you want to play the queries inside your group[{0}]."
+playmode_2 : "Settings changed and saved successfully by {0}"
+
+#Stream
+str_1 : "Please Provide M3u8 Links or Index Links."
+str_2 : "â
Valid Stream Verified\n\nPlease wait processing link.."
+str_3 : "Unable to stream youtube live streams. No Live Format Found"
+
+#TopPlay
+tracks_1 : "**Processing {0} Top 10 Playlist**\nThis could take some mins(around 3-4 mins).. Please Wait...\n\n**đ¤Requested By:** {1}\n\nCheck Top 10 tracks by /gstats"
+tracks_2 : "**Error**\n\nThere's no **{0} Top 10 Playlist** on bot's servers. Please try any other playlist"
+
+# TOOLS
+
+#Lyrics
+lyrics_1 : "**Usage:**\n\n/lyrics [ Music Name]"
+lyrics_2 : "Searching Lyrics"
+lyrics_3 : "â Failed to fetch lyricsđ.\n\nđĄ**Tried Searching For:** {0}"
+lyrics_4 : "Click on the button below and get searched lyrics to avoid long spam types lyrics search."
+
+#Ping
+ping_1 : "Pong!!!!"
+ping_2 : "{0} is working good with a ping of `{1}` ms.\n\nBot's uptime is {2} and has used a total of {3} server's storage. Cpu load is about {4} with a consumption of {5} Ram. Py-Tgcalls client is also having a good ping of `{6}` ms."
+
+
+# Song
+song_1 : "You can download Music or Video from YouTube only in private chat. Please start me in private chat."
+song_2 : "**Usage:**\n\n/song [Music Name] or [Youtube Link]"
+song_3 : "Live Link Detected. I am not able to download live youtube videos. "
+song_4 : "**đTitle:**- {0}\n\nSelect the type in which you want to download."
+song_5 : "Not a valid Youtube Link"
+song_6 : "Getting Formats.. \n\nPlease Wait.."
+song_7 : "Failed to get available formats for the video. Please try any other track."
+song_8 : "Download Started\n\nDownloading speed could be slow. Please hold on.."
+song_9 : "Failed to download song from Youtube-DL\n\n**Reason:** {0}"
+song_10 : "Failed to upload on telegram from servers."
+song_11 : "Uploading Started\n\nUploading speed could be slow. Please hold on.."
+
+# Tools - Queue
+queue_1 : "Please Wait..Fetching Queue.."
+queue_2 : "Queued List is empty. No tracks found"
+queue_3 : "**Queued Tracks: ** [Checkout More Queued Tracks From Here]({0})"
+queue_4 : "âŗ Added to Queue at **#{0}\n\nđĄTitle:** {1}\n**âąDuration:** {2}\nđ¤**Added By:** {3}"
+queue_5 : "Only one track inside queue, Please add some more to check list"
+
+# All Streaming Lines
+
+stream_1 : "đ **Started Streaming** â\n\nđ¤ **Requested By:** {0}\nâšī¸ **Information: **[Here]({1})"
+stream_2 : "đ **Started Streaming via URL ** â\n\nđ¤ **Requested By:** {0}"
+stream_3 : "đ **Started Streaming** â\n\n**đˇ Title:** {0}\nâą **Duration**: {1}\nđ¤**Requested By:** {2}"
+stream_4 : "đ **Started Streaming** â\n\n**đˇ Title:** [{0}]({1})\nâą **Duration**: {2}\nđ¤**Requested By:** {3}"
+
+# Inline Buttons
+
+#General Buttons
+CLOSE_BUTTON : "đ Close"
+CLOSEMENU_BUTTON : "đ Close Menu"
+BACK_BUTTON : "âŦ
Back"
+UNBAN_BUTTON : "đ Unban Assistant"
+
+#Lyrics
+L_B_1 : "đ Checkout Lyrics Now"
+
+# Start
+S_B_1 : "đ Commands"
+S_B_2 : "đ§ Settings"
+S_B_3 : "đ¨ Support"
+S_B_4 : "đ¨ Channel"
+S_B_5 : "â Add me to your Group"
+S_B_6 : "đĄ Git Repo"
+S_B_7 : "đ¤ Bot Owner"
+S_B_8 : "đ How to Use? Commands Menu."
+
+#Help
+H_B_1 : "Admin Commands"
+H_B_2 : "Play Commands"
+H_B_3 : "Bot Commands"
+H_B_4 : "Extra Commands"
+H_B_5 : "Close Menu"
+H_B_6 : "SudoUser Commands"
+
+#PlayMode
+PM_B_1 : "DirectPlay"
+PM_B_2 : "InlineMarkup"
+PM_B_3 : "ChannelPlay"
+
+#Play
+P_B_1 : "đĩ Play Audio"
+P_B_2 : "đĨ Play Video"
+P_B_3 : "đŽ Start Live Stream"
+P_B_4 : "đĩ Play Playlist"
+
+#Playlist
+PL_B_1 : "đ Play Playlist"
+PL_B_2 : "â Playlists"
+PL_B_3 : "đī¸ CPanel"
+PL_B_4 : "đĄ Play Mode"
+PL_B_5 : "đ Del Whole Playlist"
+PL_B_6 : "âī¸ Delete Playlist"
+PL_B_7 : "âī¸ Yes, I'm sure. Delete it"
+PL_B_8 : "đĸ Play Top 10"
+PL_B_9 : "đ¤ Play Global Top 10 Tracks"
+PL_B_10 : "đ Play Group's Top 10 Tracks"
+PL_B_11 : "đ¤ Play Personal Top 10 Tracks"
+
+#Settings
+ST_B_1 : "đ Aud Quality"
+ST_B_2 : "đĨ Vid Quality"
+ST_B_3 : "đŠ Auth Users"
+ST_B_4 : "đą Dashboard"
+ST_B_5 : "âļī¸ Play Mode"
+ST_B_6 : "đŗī¸âđ Language"
+ST_B_7 : "đ Clean Mode"
+ST_B_8 : "{0} Low Quality Audio"
+ST_B_9 : "{0} Medium Quality Audio"
+ST_B_10 : "{0} High Quality Audio"
+ST_B_11 : "{0} Low Quality Video"
+ST_B_12 : "{0} Medium Quality Video"
+ST_B_13 : "{0} High Quality Video"
+ST_B_14 : "â
Enabled"
+ST_B_15 : "â Disabled"
+ST_B_16 : "đ¤ Admins"
+ST_B_17 : "đĨ Everyone"
+ST_B_18 : "đ Authorized Users Lists"
+ST_B_19 : "đ Search Mode"
+ST_B_20 : "â
Direct"
+ST_B_21 : "â
Inline"
+ST_B_22 : "đ¨ââī¸ Admin Commands"
+ST_B_23 : "đ Group"
+ST_B_24 : "đˇ Channel"
+ST_B_25 : "đĢ Play Type"
+ST_B_26 : "đ Command Clean"
+ST_B_27 : "đ§âđ Suggestion Mode"
+
+#Song
+SG_B_1 : "âī¸ Open Private Chat"
+SG_B_2 : "đ Audio"
+SG_B_3 : "đĨ Video"
+
+#Stats
+SA_B_1 : "đĸ Top 10 Chat"
+SA_B_2 : "đĸ Top 10 Tracks"
+SA_B_3 : "đ§ Top 10 Users"
+SA_B_4 : "đˇ Top 10 Here"
+SA_B_5 : "đĄ Overall Stats"
+SA_B_6 : "đ¤ User Stats"
+SA_B_7 : "đĸ Global Top 10 Stats"
+SA_B_8 : "đ¤ Bot Stats"
+
+#Queue
+QU_B_1 : "đ Queued List"
+QU_B_2 : "Played {0} out of {1} Mins"
+
+# Sudo Users [ If you are translating this to some other language .. you can leave all these strings in english language]
+
+#Sudo
+sudo_1 : "{0} is already a sudo user."
+sudo_2 : "Added **{0}** to Sudo Users."
+sudo_3 : "Not a part of Bot's Sudo."
+sudo_4 : "Removed from Bot's Sudo User"
+sudo_5 : "âī¸ **Owners:** \n"
+sudo_6 : "\nâī¸ **Sudo Users:** \n"
+sudo_7 : "No Sudo Users"
+
+#Block
+block_1 : "{0} is already blocked from the bot."
+block_2 : "Added **{0}** to Block List of bot. User won't be able to use bot now under any condition.\n\nCheck blocked users: /blockedusers"
+block_3 : "User is already free and not blocked."
+block_4 : "Removed User from the block list. User will be able to use bot now."
+block_5 : "No Blocked Users Found"
+block_6 : "Getting Blocked Users List.. Please Wait"
+block_7 : "**Blocked Users:**\n\n"
+
+#Blacklist Chats
+black_1 : "**Usage:**\n/blacklistchat [CHAT_ID]"
+black_2 : "Chat is already blacklisted."
+black_3 : "Chat has been successfully blacklisted"
+black_4 : "**Usage:**\n/whitelistchat [CHAT_ID]"
+black_5 : "Chat is already whitelisted."
+black_6 : "Chat has been successfully whitelisted"
+black_7 : "**Blacklisted Chats:**\n\n"
+black_8 : "No Blacklisted Chats"
+
+#videolimit
+vid_1 : "**Usage:**\n/set_video_limit [Number of chats allowed] or [Disable]"
+vid_2 : "Please Use Numeric Numbers for Setting Limit."
+vid_3 : "Video Calls Maximum Limit Defined to {0} Chats."
+vid_4 : "Video Calls Disabled"
+
+#maintenance
+maint_1 : "**Usage:**\n/maintenance [enable|disable]"
+maint_2 : "Enabled for Maintenance"
+maint_3 : "Maintenance Mode Disabled"
+
+#log
+log_1 : "**Usage:**\n/logger [enable|disable]"
+log_2 : "Enabled Logging"
+log_3 : "Logging Disabled"
+
+#videomode
+vidmode_1 : "**Usage:**\n/videomode [download|m3u8]"
+vidmode_2 : "Video Play Mode set as downloader. Bot will be downloading tracks now."
+vidmode_3 : "Video Play Mode set as m3u8. Bot will be play tracks live now."
+
+#broadcast
+broad_1 : "**Broadcasted Message In {0} Chats with {1} Pins from Bot.**"
+broad_2 : "Started Assistant Broadcast..."
+broad_3 : "**Assistant Broadcast:**\n\n"
+broad_4 : "Assistant {0} Broadcasted in {1} chats\n"
+broad_5 : "**Usage**:\n/broadcast [MESSAGE] or [Reply to a Message]"
+broad_6 : "Please provide some text to broadcast."
+broad_7 : "**Broadcasted Message to {0} Users.**"
+
+#Heroku
+heroku_1 : "Please make sure your Heroku API Key, Your App name are configured correctly in the heroku"
+heroku_2 : "You can only get logs of Heroku Apps"
+heroku_3 : "**Usage:**\n/get_var [Var Name]"
+heroku_4 : "Unable to find any such var."
+heroku_5 : ".env file not found."
+heroku_6 : "**Usage:**\n/del_var [Var Name]"
+heroku_7 : "{0} Deleted."
+heroku_8 : "**Usage:**\n/set_var [Var Name] [Var Value]"
+heroku_9 : "{0} has been updated successfully"
+heroku_10 : "{0} has been added successfully"
+heroku_11 : "Only for Heroku Apps"
+heroku_12 : "Checking Heroku Usage. Please Wait"
+heroku_13 : "Checking for available updates..."
+heroku_14 : "Git Command Error"
+heroku_15 : "Invalid Git Repsitory"
+
+#Private bot mode
+pbot_1 : "**Usage:**\n/authorize [CHAT_ID]"
+pbot_2 : "**Usage:**\n/unauthorize [CHAT_ID]"
+pbot_3 : "Added given chat to authorized list"
+pbot_4 : "Removed given chat from authorized list"
+pbot_5 : "Chat is already in the authorized list"
+pbot_6 : "No such chat exists in the authorized list"
+pbot_7 : "Failed to verify chat_id.\n\nMake sure its numeric and in correct format. Don't use chat username or links."
+pbot_8 : "Please wait.... Fetching Authorized chats."
+pbot_9 : "**Fetched Chats: **\n\n"
+pbot_10 : "Private Chat"
+pbot_11 : "No Authorized chats found"
+pbot_12 : "Private Bot Mode is disabled.\n\nTo use your bot as private bot make sure to set **PRIVATE_BOT_MODE** = **True**"
+pbot_13 : "\n**Unfetched Chats: **\n\n"
+
+
+#Gbanned
+gban_1 : "You want to gban yourself? How Fool!"
+gban_2 : "Should i block myself? Lol"
+gban_3 : "You want to block a sudo user?"
+gban_4 : "{0} is already **gbanned** from the bot."
+gban_5 : "**Initializing Global Ban on {0}**\n\nExpected Time : {1}."
+gban_6 : "**Gbanned Successfully**\n\nBanned **{0}** from **{1}** chats."
+gban_7 : "{0} is not **gbanned **yet from the bot."
+gban_8 : "**Ungbanning {0}**\n\nExpected Time : {1}."
+gban_9 : "**UnGbanned Successfully**\n\nUnbanned **{0}** in **{1}** chats."
+gban_10 : "No Gbanned Users Found."
+gban_11 : "Please wait a while.. Fetching Gbanned users list"
+
+#Suggestions
+sug_0 : "â**Do You Know?**\n\nâ
"
+sug_1 : "You can play music in two **search modes** i.e. Direct Mode and Inline Mode.\n\nChange modes via /playmode"
+sug_2 : "You can play music in two **play types** i.e. Everyone Mode and Admins Mode.\n\nChange modes via /playmode"
+sug_3 : "You can play music in **channels** too.\n\nSet channel_id via /channelplay and play via /cplay "
+sug_4 : "Non Admins can use admin commands too by adding them to** AUTH USERS LIST**. \nAdd any user to auth list by /auth , remove with /unauth and check auth users via /authusers"
+sug_5 : "Bot has a feature called **Clean Mode**.\nIt deletes the bot's messages after 5 Mins and ensures that your chat remains clean.\n\nEnable or disable cleanmode from /settings [__Enabled by default__]"
+sug_6 : "You can play **Spotify** tracks and playlists too.\n\nStart playing now with /play [Spotify Link]"
+sug_7 : "You can play **Apple Music** tracks and playlists too.\n\nStart playing now with /play [Apple Link]"
+sug_8 : "You can play **Resso Music** tracks and playlists too.\n\nStart playing now with /play [Resso Link]"
+sug_9 : "You can play **Sound Cloud** tracks and playlists too.\n\nStart playing now with /play [SoundCloud Link]"
+sug_10 : "You can play **Videos** in voice chat via /vplay [Video Name] or /play -v [Video Name]"
+sug_11 : "You can set **Audio Quality** of voice chat to Low, Medium or High.\n\nSet quality via /settings"
+sug_12 : "You can set **Video Quality** of voice chat to Low, Medium or High.\n\nSet quality via /settings"
+sug_13 : "You can check your **Statistics** on bot like Top 10 Played Tracks.\n\nGet Stats: /gstats "
+sug_14 : "You can check **Group's Stats** on bot like Top 10 Played Tracks.\n\nGet Stats: /gstats "
+sug_15 : "You can check bot's **Global Stats** like top 10 users, top 10 chats, top 10 tracks etc etc.\n\nCheck Stats: /gstats "
+sug_16 : "You can now mute the music which is playing on voice chat.\n\nCommand: /mute"
+sug_17 : "You can now unmute and mute the music which is playing on voice chat.\n\nCommand: /mute and /unmute"
+sug_18 : "You can search the lyrics of musics with us too..\n\nCommand: /lyrics [Music Name]"
+sug_19 : "You can download the music or video from the bot through Youtube.\n\nCommand: /song [Music Name]"
+sug_20 : "You can get a complete list of my commands that i accept.\n\nCommand: /help"
+sug_21 : "Bot has server-sided playlist option.\n\nYou can add music in your playlist and play them all together via /play"
+sug_22 : "You can now shuffle the queued musics on the bot.\n\nCommand: /shuffle"
+sug_23 : "You can check the queue of the musics.\n\nCommand: /queue"
+sug_24 : "You can check my owner and sudo users who manage me.\n\nCommand: /sudolist"
+sug_25 : "Bot has a feature called **Commands Delete Mode**. It deletes its executed commands automatically.\n\nEnable or disable deletemode from /settings [__Enabled by default__]"
+sug_26 : "You can change language of the bot to available languages for easy understanding.\n\nCommand: /language"
+sug_27 : "Bot has a feature called **Force Play**.\n\n**Force Play** stops the playing track on voice chat and starts playing the searched track instantly without disturbing/clearing queue.\n\nCommand: /playforce"
diff --git a/strings/langs/gu.yml b/strings/langs/gu.yml
new file mode 100644
index 0000000000000000000000000000000000000000..f0cd0776d5c1d18cffe06f0a4fb5a7aff3990524
--- /dev/null
+++ b/strings/langs/gu.yml
@@ -0,0 +1,320 @@
+name : đŽđŗ āĒāĢāĒāǰāĒžāǤāĢ
+
+# General Strings
+general_1 : " āĒĩāĒĒāǰāĒžāĒļāĒāǰāĢāǤāĒžāǍāĒž āǏāĒāĒĻāĢāĒļāǍāĢ āĒāĒĩāĒžāĒŦ āĒāĒĒāĢ āĒ
āĒĨāĒĩāĒž āĒĩāĒĒāǰāĒžāĒļāĒāǰāĢāǤāĒžāǍāĒžāĒŽ/user_id āĒāĒĒāĢ. "
+general_2 : "āĒāĢāǞ! āĒāĒĻāĢāĒļāǍāĢ āĒāĢāĒāĢ āĒāĒĒāǝāĢāĒ."
+general_3 : "āǤāĒŽāĒžāǰāĢ āĒāĢāĒĩāĢāǰāĢ āĒĒāǰ āĒĒāĢāǰāĒāĢāǰāĒŋāǝāĒž āĒāǰāǤāĢ āĒĩāĒāǤāĢ āĒāĢāĒāǞāĒžāĒ **āĒ
āĒĒāĒĩāĒžāĒĻ āĒāĒĩāĢāǝāĒž**.\n\nāĒ
āĒĒāĒĩāĒžāĒĻ āĒĒāĢāǰāĒāĒžāǰ:- {0}"
+general_4 : "āǤāĒŽāĢ āĒ āĒāĢāĒ āĒāĢāĒĨāĒŽāĒžāĒ āĒāĒ āĒ
āǍāĒžāĒŽāĢ āĒāĒĄāĒŽāĒŋāǍ āĒāĢ!\nāĒĩāĢāǝāĒĩāǏāĢāĒĨāĒžāĒĒāĒ āĒ
āǧāĒŋāĒāĒžāǰāĢāĒŽāĒžāĒāĒĨāĢ āĒĩāĒĒāǰāĒžāĒļāĒāǰāĢāǤāĒž āĒāĒžāǤāĒž āĒĒāǰ āĒĒāĒžāĒāĒž āĒĢāǰāĢ."
+general_5 : "āĒ āĒāĢāǰāĒŋāǝāĒž āĒāǰāĒĩāĒž āĒŽāĒžāĒāĢ āǤāĒŽāĒžāǰāĢ āĒĩāĢāĒāǏ āĒāĢāĒ āĒ
āǧāĒŋāĒāĒžāǰāĢāǍāĢāĒ āǏāĒāĒāĒžāǞāǍ āĒāǰāĒĩāĒžāǍāĢ āǏāĒžāĒĨāĢ āĒāĒĄāĒŽāĒŋāǍ āĒŦāǍāĒĩāĒžāǍāĢ āĒāǰāĢāǰ āĒāĢ."
+general_6 : "āĒŦāĢāĒ āĒĩāĢāĒāǏ āĒāĢāĒ āĒĒāǰ āǏāĢāĒāĢāǰāĢāĒŽāĒŋāĒāĒ āǍāĒĨāĢ."
+
+ # Classes - Telegram.py
+tg_1 : "āĒŦāĢāĒ āĒ
āǤāĢāǝāĒžāǰāĢ āĒĄāĒžāĒāǍāǞāĢāĒĄ āǏāĒžāĒĨāĢ **āĒāĒĩāǰāǞāĢāĒĄ** āĒāĢ.\n\n**āĒ āĒĒāĒāĢ āĒĒāĢāǰāǝāĒžāǏ āĒāǰāĢ:** {0} (__āĒ
āĒĒāĢāĒāĢāǎāĒŋāǤ āǏāĒŽāǝ__)"
+tg_2 : "āĒāĢāǞāĒŋāĒāĢāǰāĒžāĒŽāĒŽāĒžāĒāĒĨāĢ āĒŽāĢāĒĄāĒŋāǝāĒž āĒĄāĒžāĒāǍāǞāĢāĒĄ āĒāǰāĒĩāĒžāĒŽāĒžāĒ āǍāĒŋāǎāĢāĒĢāĒŗ."
+
+ # Core - Call.py
+call_1 : "āĒŦāĢāĒāǍāĢ āǤāĒŽāĒžāǰāĢ āĒāĢāǍāǞ āĒĒāǰ āǏāĒšāĒžāǝāĒ āĒāĒāĒžāĒāǍāĢāĒāǍāĢ āĒāĒŽāĒāǤāĢāǰāĒŋāǤ āĒāǰāĒĩāĒž āĒŽāĒžāĒāĢ **āĒāĒĄāĒŽāĒŋāǍ** āĒĒāǰāĒĩāĒžāǍāĒāĢāǍāĢ āĒāǰāĢāǰ āĒāĢ.\n\n: /playmode āĒĻāĢāĒĩāĒžāǰāĒž āĒāĢāǍāǞ āĒĒāĢāǞāĢāĒŽāĢāĒĄāǍāĢ āĒ
āĒāĢāǎāĒŽ āĒāǰāĢ"
+call_2 : "āǏāĒšāĒžāǝāĒ āǤāĒŽāĒžāǰāĒž āĒāĢāĒĨ āĒ
āĒĨāĒĩāĒž āĒāĢāǍāǞāĒŽāĒžāĒ āĒĒāĢāǰāǤāĒŋāĒŦāĒāǧāĒŋāǤ āĒāĢ, āĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ āĒĒāĢāǰāǤāĒŋāĒŦāĒāǧ āĒĻāĢāǰ āĒāǰāĢ.\n\n**āǏāĒšāĒžāǝāĒ āĒĩāĒĒāǰāĒžāĒļāĒāǰāĢāǤāĒž āǍāĒžāĒŽ:** @{0}\n**āǏāĒšāĒžāǝāĒ ID:** {1}"
+call_3 : "āĒāǏāĒŋāǏāĢāĒāǍāĢāĒ āĒāĒāĒžāĒāǍāĢāĒāǍāĢ āǤāĒŽāĒžāǰāĢ āĒāĢāĒāĒŽāĒžāĒ āĒāĒŽāĒāǤāĢāǰāĒŋāǤ āĒāǰāǤāĢ āĒĩāĒāǤāĢ āĒ
āĒĒāĒĩāĒžāĒĻ āĒĨāǝāĢ.\n\n**āĒāĒžāǰāĒŖ**: {0}"
+call_4 : "āĒŦāĢāĒāǍāĢ āǤāĒŽāĒžāǰāĒž āĒāĢāĒ āĒāĢāĒĨāĒŽāĒžāĒ āǏāĒšāĒžāǝāĒ āĒāĒāĒžāĒāǍāĢāĒāǍāĢ āĒāĒŽāĒāǤāĢāǰāĒŋāǤ āĒāǰāĒĩāĒž āĒŽāĒžāĒāĢ **āǞāĒŋāĒāĒ āĒĻāĢāĒĩāĒžāǰāĒž āĒĩāĒĒāǰāĒžāĒļāĒāǰāĢāǤāĒžāĒāǍāĢ āĒāĒŽāĒāǤāĢāǰāĒŋāǤ āĒāǰāĢ** āĒĒāǰāĒĩāĒžāǍāĒāĢāǍāĢ āĒāǰāĢāǰ āĒāĢ."
+call_5 : "āĒāǏāĒŋāǏāĢāĒāǍāĢāĒ āĒāĒāĒžāĒāǍāĢāĒ 5 āǏāĢāĒāǍāĢāĒĄāĒŽāĒžāĒ āĒāĢāĒĄāĒžāĒ āĒāĒļāĢ..āĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ āǰāĒžāĒš āĒāĢāĒ!"
+call_6 : "āǏāĒšāĒžāǝāĒ āĒāĒāĒžāĒāǍāĢāĒ[{0}] āǏāĒĢāĒŗāǤāĒžāĒĒāĢāǰāĢāĒĩāĒ āĒāĢāĒĄāĒžāǝāĒž.\n\nāĒšāĒŽāĒŖāĒžāĒ āǏāĒāĒāĢāǤ āĒļāǰāĢ āĒāǰāĢ āǰāĒšāĢāǝāĒžāĒ āĒāĢāĒ"
+call_7 : "**āĒšāĒžāǍāĒŋāĒāĒžāǰāĒ āĒāĒĄāĒŽāĒŋāǍ āĒ
āǧāĒŋāĒāĒžāǰ āĒāĒĒāĢāǞ **\n\nāĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ āĒŦāĢāĒāĒŽāĒžāĒāĒĨāĢ **āĒĒāĢāǰāǤāĒŋāĒŦāĒāǧāĒŋāǤ āĒĩāĒĒāǰāĒžāĒļāĒāǰāĢāǤāĒžāĒ** āĒ
āǧāĒŋāĒāĒžāǰāĢ āĒĻāĢāǰ āĒāǰāĢ."
+call_8 : "**āĒšāĒžāǍāĒŋāĒāĒžāǰāĒ āĒāĒĄāĒŽāĒŋāǍ āĒ
āǧāĒŋāĒāĒžāǰ āĒāĒĒāĢāǞ āĒāĢ **\n\nāĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ āĒŦāĢāĒāĒŽāĒžāĒāĒĨāĢ **āǍāĒĩāĒž āĒāĒĄāĒŽāĒŋāǍ āĒāĒŽāĢāǰāĢ** āĒ
āǧāĒŋāĒāĒžāǰāĢ āĒĻāĢāǰ āĒāǰāĢ."
+call_9 : "**āǏāĢāĒāĢāǰāĢāĒŽ āǏāĢāĒĩāĒŋāĒ āĒāǰāĒĩāĒžāĒŽāĒžāĒ āǍāĒŋāǎāĢāĒĢāĒŗ**\nāĒĢāǰāĢāĒĨāĢ āĒāĢāǰāĢ
āĒ āĒŦāĒĻāǞāĒĩāĒž āĒŽāĒžāĒāĢ āĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ /āǏāĢāĒāĒŋāĒĒāǍāĢ āĒāĒĒāǝāĢāĒ āĒāǰāĢ."
+call_10 : "āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒāĒŽāĒžāĒāĒĨāĢ āǍāĢāĒāĢāǏāĢāĒ āĒāĢāǰāĢāĒ āĒĄāĒžāĒāǍāǞāĢāĒĄ āĒāǰāĢ āǰāĒšāĢāǝāĢāĒ āĒāĢ"
+call_11 : "āĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ āǤāĒŽāĒžāǰāĢ āĒāĢāǍāǞāĒŽāĒžāĒ @{0} āĒāĒŽāĢāǰāĢ[ ID: {1}].\n\nāĒŦāĢāĒ āĒāĢāǍāǞ āĒĩāĒŋāĒāǤāĢ āĒŽāĢāĒŗāĒĩāĒĩāĒžāĒŽāĒžāĒ āǏāĒāĢāǎāĒŽ āǍāĒĨāĢ."
+
+ # PLUGINS - Auth.py
+auth_1 : "āǤāĒŽāĒžāǰāĒž āĒāĢāĒĨāǍāĢ āĒ
āǧāĒŋāĒāĢāǤ āĒĩāĒĒāǰāĒžāĒļāĒāǰāĢāǤāĒžāĒ āǏāĢāĒāĒŋ (AUL) āĒŽāĒžāĒ āǤāĒŽāĒžāǰāĢ āĒĒāĒžāǏāĢ āĒĢāĒāĢāǤ 20 āĒĩāĒĒāǰāĒžāĒļāĒāǰāĢāǤāĒžāĒ āĒšāĢāĒ āĒļāĒāĢ āĒāĢ"
+auth_2 : "āǤāĒŽāĒžāǰāĒž āĒāĢāĒĨāǍāĢ āĒ
āǧāĒŋāĒāĢāǤ āĒĩāĒĒāǰāĒžāĒļāĒāǰāĢāǤāĒžāĒāǍāĢ āǏāĢāĒāĒŋāĒŽāĒžāĒ āĒāĒŽāĢāǰāĒžāǝāĢāǞ."
+auth_3 : "āĒĒāĒšāĢāǞāĢāĒĨāĢ āĒ āĒ
āǧāĒŋāĒāĢāǤ āĒĩāĒĒāǰāĒžāĒļāĒāǰāĢāǤāĒžāĒāǍāĢ āǏāĢāĒāĒŋāĒŽāĒžāĒ āĒāĢ."
+auth_4 : "āĒ āĒāĢāĒĨāǍāĢ āĒ
āǧāĒŋāĒāĢāǤ āĒĩāĒĒāǰāĒžāĒļāĒāǰāĢāǤāĒžāĒāǍāĢ āǏāĢāĒāĒŋāĒŽāĒžāĒāĒĨāĢ āĒĻāĢāǰ āĒāǰāĢāǞ āĒāĢ."
+auth_5 : "āǞāĒāĢāǎāĒŋāǤ āĒĩāĒĒāǰāĒžāĒļāĒāǰāĢāǤāĒž āĒ
āǧāĒŋāĒāĢāǤ āĒĩāĒĒāǰāĒžāĒļāĒāǰāĢāǤāĒž āǍāĒĨāĢ."
+auth_6 : "āĒ
āǧāĒŋāĒāĢāǤ āĒĩāĒĒāǰāĒžāĒļāĒāǰāĢāǤāĒžāĒāǍāĢ āǞāĒžāĒĩāĢ āǰāĒšāĢāǝāĢāĒ āĒāĢ... āĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ āǰāĒžāĒš āĒāĢāĒ"
+auth_7 : "**āĒ
āǧāĒŋāĒāĢāǤ āĒĩāĒĒāǰāĒžāĒļāĒāǰāĢāǤāĒžāĒāǍāĢ āǏāĢāĒāĒŋ[AUL]:**\n\n"
+auth_8 : "â āĒāǍāĒž āĒĻāĢāĒĩāĒžāǰāĒž āĒāĒŽāĢāǰāĒžāǝāĢāǞ:-"
+
+ # PLUGINS - Admins
+admin_1 : "āǏāĒāĒāĢāǤ āĒĒāĒšāĢāǞāĢāĒĨāĢ āĒ āĒĨāĢāĒāĒžāĒĩāĢāǞāĢāĒ āĒāĢ."
+admin_2 : "đ§ āĒĩāĢāĒāǏāĒāĢāĒ {} āĒĻāĢāĒĩāĒžāǰāĒž āĒĨāĢāĒāĒžāĒĩāĒĩāĒžāĒŽāĒžāĒ āĒāĒĩāĢ!"
+admin_3 : "āǏāĒāĒāĢāǤ āĒĒāĒšāĢāǞāĢāĒĨāĢ āĒ āĒĢāǰāĢ āĒļāǰāĢ āĒĨāǝāĢāǞ āĒāĢ."
+admin_4 : "đ§ āĒĩāĢāĒāǏāĒāĢāĒ {} āĒĻāĢāĒĩāĒžāǰāĒž āĒĢāǰāĢ āĒāĒžāǞāĢ!"
+admin_5 : "āǏāĒāĒāĢāǤ āĒĒāĒšāĢāǞāĢāĒĨāĢ āĒ āĒŽāĢāǝāĢāĒ āĒāĢ."
+admin_6 : "đ§ āĒĩāĢāĒāǏāĒāĢāĒ {} āĒĻāĢāĒĩāĒžāǰāĒž āĒŽāĢāǝāĢāĒ āĒāǰāĢāǞ āĒāĢ!"
+admin_7 : "āǏāĒāĒāĢāǤ āĒĒāĒšāĢāǞāĢāĒĨāĢ āĒ āĒ
āǍāĒŽāĢāǝāĢāĒ āĒāĢ."
+admin_8 : "đ§ āĒĩāĢāĒāǏāĒāĢāĒ {} āĒĻāĢāĒĩāĒžāǰāĒž āĒ
āǍāĒŽāĢāǝāĢāĒ!"
+admin_9 : "đ§ āĒĩāĢāĒāǏāĒāĢāĒ āǏāĒŽāĒžāĒĒāĢāǤ/{} āĒĻāĢāĒĩāĒžāǰāĒž āĒŦāĒāǧ!"
+admin_10 : "đ§ āĒĩāĢāĒāǏāĒāĢāĒ {} āĒĻāĢāĒĩāĒžāǰāĒž āĒāĢāĒĄāĒĩāĒžāĒŽāĒžāĒ āĒāĒĩāĢāǝāĢāĒ!. āĒāǤāĒžāǰāĒŽāĒžāĒ āĒĩāǧāĢ āǏāĒāĒāĢāǤ āǍāĒĨāĢ."
+admin_11 : "āǏāĢāĒāĢāǰāĢāĒŽāǍāĢ **{0}**āĒŽāĒžāĒ āĒŦāĒĻāǞāǤāĢ āĒĩāĒāǤāĢ āĒāĢāǞ\n\nāĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ āĒĢāǰāĢāĒĨāĢ /āǏāĢāĒāĒŋāĒĒāǍāĢ āĒāĒĒāǝāĢāĒ āĒāǰāĢ."
+admin_12 : "āǏāĒāĢāǰāĒŋāǝ āĒāǰāĢāǞ āǞāĢāĒĒ āĒĒāĢāǞāĢāǍāĢ āĒāĒžāǰāĒŖāĢ āĒāĢāĒāĢāĒāǏ āĒāĢāǰāĢāĒ āĒĒāǰ āĒāĒĩāĒž āĒŽāĒžāĒāĢ āĒ
āǏāĒŽāǰāĢāĒĨ. āĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ āĒ āǏāĢāĒĩāĒŋāǧāĒžāǍāĢ āĒāĒĒāǝāĢāĒ āĒāǰāĒĩāĒž āĒŽāĒžāĒāĢ `/loop disable` āĒĻāĢāĒĩāĒžāǰāĒž āǞāĢāĒĒ āĒĒāĢāǞāĢāǍāĢ āĒ
āĒāĢāǎāĒŽ āĒāǰāĢ."
+admin_13 : "āĒŽāĒšāĢāǰāĒŦāĒžāǍāĢ āĒāǰāĢāǍāĢ āĒāĢāĒāĢāĒāǏ āĒāĢāǰāĢāĒ āĒŽāĒžāĒāĢ āĒāĒāĒāĒĄāĒžāĒāĢāǝ āǏāĒāĒāĢāǝāĒžāĒāǍāĢ āĒāĒĒāǝāĢāĒ āĒāǰāĢ, āĒāĢāĒŽ āĒāĢ 1, 2 āĒ
āĒĨāĒĩāĒž 4 āĒĩāĒāĢāǰāĢ"
+admin_14 : "āĒāĢāĒāĢāĒāǏ āǍāĒāĒŦāǰ āĒĒāǰ āĒāĒĩāĒž āĒŽāĒžāĒāĢ āĒāǤāĒžāǰāĒŽāĒžāĒ āĒāĒāĒžāĒŽāĒžāĒ āĒāĒāĒž 2 āĒāĢāǰāĢāĒāǍāĢ āĒāǰāĢāǰ āĒāĢ. /queue āĒĻāĢāĒĩāĒžāǰāĒž āĒāǤāĒžāǰ āǤāĒĒāĒžāǏāĢ"
+admin_15 : "āǤāĒŽāĒžāǰāĒž āĒĻāĢāĒĩāĒžāǰāĒž āĒāĒĒāĒĩāĒžāĒŽāĒžāĒ āĒāĒĩāĢāǞ āĒŽāĢāǞāĢāǝ āĒŽāĒžāĒāĢ āĒāǤāĒžāǰāĒŽāĒžāĒ āĒĒāĢāǰāǤāĒž āĒāĢāǰāĢāĒ āǍāĒĨāĢ. āĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ 1 āĒ
āǍāĢ {0} āĒĩāĒāĢāĒāĢāǍāĢ āǏāĒāĒāĢāǝāĒžāĒ āĒĒāǏāĒāĒĻ āĒāǰāĢ"
+admin_16 : "āĒĩāĒŋāĒļāĒŋāǎāĢāĒ āĒāĢāǰāĢāĒ āĒĒāǰ āĒāĒĩāĒž āĒŽāĒžāĒāĢ āǍāĒŋāǎāĢāĒĢāĒŗ.\n\n/āĒāǤāĒžāǰ āĒĻāĢāĒĩāĒžāǰāĒž āĒĄāĒžāĒŦāĢ āĒāǤāĒžāǰ āǤāĒĒāĒžāǏāĢ"
+admin_17 : "{0}.. āĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ āǰāĒžāĒš āĒāĢāĒ"
+admin_18 : "āĒāĒĄāĒŽāĒŋāǍ āǏāĢāĒāĒŋ āĒŽāĒŗāĢ āǍāĒĨāĢ\n\nāĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ /admincache āĒ
āĒĨāĒĩāĒž /reload āĒĻāĢāĒĩāĒžāǰāĒž āĒāĒĄāĒŽāĒŋāǍāǞāĒŋāǏāĢāĒāǍāĢ āĒĢāǰāĢāĒĨāĢ āǞāĢāĒĄ āĒāǰāĢ"
+admin_19 : "āĒ āĒāǰāĒĩāĒž āĒŽāĒžāĒāĢ āǤāĒŽāĒžāǰāĢ āĒŽāĢāǍāĢāĒ āĒĩāĢāĒāǏ āĒāĢāĒ āĒ
āǧāĒŋāĒāĒžāǰāĢ āǏāĒžāĒĨāĢ āĒāĒĄāĒŽāĒŋāǍ āĒŦāǍāĒĩāĒžāǍāĢ āĒāǰāĢāǰ āĒāĢ.\nāĒāĢ āǤāĒŽāĢ āĒĒāĒšāĢāǞāĢāĒĨāĢ āĒ āĒāĒĄāĒŽāĒŋāǍ āĒāĢ, āǤāĢ /admincache āĒĻāĢāĒĩāĒžāǰāĒž āĒāĒĄāĒŽāĒŋāǍāĒāĢāĒļāǍāĢ āĒĢāǰāĢāĒĨāĢ āǞāĢāĒĄ āĒāǰāĢ "
+admin_20 : "āĒāĒĄāĒŽāĒŋāǍ āĒāĢāĒļ āǏāĒĢāĒŗāǤāĒžāĒĒāĢāǰāĢāĒĩāĒ āĒĢāǰāĢāĒĨāĢ āǞāĢāĒĄ āĒĨāǝāĢ."
+admin_21 : "āĒļāĒĢāǞ āĒāǰāĒĩāĒž āĒŽāĒžāĒāĢ āĒāǤāĒžāǰāǍāĢ āĒ
āĒāĒĻāǰ āĒāĒāĒ āǍāĒĨāĢ"
+admin_22 : "āĒļāĒĢāǞ āĒāǰāĒĩāĒžāĒŽāĒžāĒ āǍāĒŋāǎāĢāĒĢāĒŗ.\n\nāĒāǤāĒžāǰ āǤāĒĒāĒžāǏāĢ : /queue"
+admin_23 : "**āĒāǤāĒžāǰ {0}** āĒĻāĢāĒĩāĒžāǰāĒž āĒļāĒĢāǞ āĒāǰāĢ āĒāĢ\n\nāĒļāĒĢāǞāĢāĒĄ āĒāǤāĒžāǰ āǤāĒĒāĒžāǏāĢ : /āĒāǤāĒžāǰ"
+admin_24 : "**āĒāĒĒāǝāĢāĒ:**\n/āǞāĢāĒĒ [āǏāĒāĢāǎāĒŽ/āĒ
āĒāĢāǎāĒŽ āĒāǰāĢ] āĒ
āĒĨāĒĩāĒž [1-10 āĒĩāĒāĢāĒāĢāǍāĢ āǏāĒāĒāĢāǝāĒž]\n\n**āĒāĒĻāĒžāĒšāǰāĒŖ:** /āǞāĢāĒĒ 5"
+admin_25 : "{0} āĒĻāĢāĒĩāĒžāǰāĒž **{1}** āĒĩāĒāǤ āĒŽāĒžāĒāĢ āǞāĢāĒĒ āǏāĒāĢāǎāĒŽ āĒāǰāĢāǞ āĒāĢ. āĒŦāĢāĒ āĒšāĒĩāĢ **{1}** āĒĩāĒāǤ āĒŽāĒžāĒāĢ āĒĩāĢāĒāǏ āĒāĢāĒ āĒĒāǰ āĒĩāǰāĢāǤāĒŽāĒžāǍ āĒĩāĒāĒžāĒĄāǤāĒž āǏāĒāĒāĢāǤāǍāĢāĒ āĒĒāĢāǍāǰāĒžāĒĩāǰāĢāǤāǍ āĒāǰāĒļāĢ"
+admin_26 : "āĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ āǞāĢāĒĒ āĒĒāĢāǞāĢ āĒŽāĒžāĒāĢ 1-10 āĒĩāĒāĢāĒāĢāǍāĢ āǏāĒāĒāĢāǝāĒžāĒāǍāĢ āĒāĒĒāǝāĢāĒ āĒāǰāĢ"
+admin_27 : "āǞāĢāĒĒ āĒĒāĢāǞāĢ āĒ
āĒāĢāǎāĒŽ āĒāǰāĒĩāĒžāĒŽāĒžāĒ āĒāĒĩāĢāǝāĢāĒ āĒāĢ"
+
+ # Bot
+
+ # Start
+start_1 : "āĒŽāǍāĢ {0} āĒŽāĒžāĒ āǰāĒžāĒāĒĩāĒž āĒŦāĒĻāǞ āĒāĒāĒžāǰ.\n{1} āĒāĢāĒĩāĒāǤ āĒāĢ.\n\nāĒāĢāĒāĒĒāĒŖ āǏāĒšāĒžāǝ āĒ
āĒĨāĒĩāĒž āĒŽāĒĻāĒĻ āĒŽāĒžāĒāĢ, āĒ
āĒŽāĒžāǰāĢāĒ āǏāĒŽāǰāĢāĒĨāǍ āĒāĢāĒĨ āĒ
āǍāĢ āĒāĢāǍāǞ āǤāĒĒāĒžāǏāĢ."
+start_2 : "āĒšāĢāǞāĢ, āĒŽāĒžāǰāĢāĒ āǍāĒžāĒŽ {0} āĒāĢ.\n\nāĒšāĢāĒ āĒāĢāĒāǞāĢāĒ āĒāĒĒāǝāĢāĒāĢ āǏāĢāĒĩāĒŋāǧāĒžāĒ āǏāĒžāĒĨāĢāǍāĢ āĒāĢāǞāĒŋāĒāĢāǰāĒžāĒŽ āǏāĢāĒāĢāǰāĢāĒŽāĒŋāĒāĒ āĒŦāĢāĒ āĒāĢāĒ. YouTube, Spotify, Resso, AppleMusic , Soundcloud āĒĩāĒāĢāǰāĢ āĒāĢāĒĩāĒž āǏāĒĒāĢāǰāĢāĒāĒŋāĒāĒ āĒĒāĢāǞāĢāĒāĒĢāĢāǰāĢāĒŽāĢāǏ.\n\nāĒŽāǍāĢ āĒāĒŽāĢāǰāĒĩāĒž āĒŽāĒžāĒāĢ āǍāĒŋāĒāǏāĒāĒāĢāĒ āǤāĒŽāĒžāǰāĒž āĒāĢāĒĨāĢ."
+start_3 : "āǏāĢāĒĩāĒžāĒāǤ āĒāĢ {0}\n\nāĒŽāǍāĢ āĒāĒžāĒŽ āĒāǰāĒĩāĒž āĒŽāĒžāĒāĢ āĒāĢāĒ **āĒāĒĄāĒŽāĒŋāǍ āĒĒāǰāĒĩāĒžāǍāĒāĢ**āǍāĢ āĒāǰāĢāǰ āǍāĒĨāĢ ( āĒāĢāǝāĒžāĒ āǏāĢāǧāĢ āĒĒāĢāĒāĒĩāĒžāĒŽāĒžāĒ āǍ āĒāĒĩāĢ āǤāĢāǝāĒžāĒ āǏāĢāǧāĢ).\n\nāǏāĒšāĒžāǝāĒāǍāĢāĒ āĒĩāĒĒāǰāĒžāĒļāĒāǰāĢāǤāĒž āǍāĒžāĒŽ:- @{1}\nāǏāĒšāĒžāǝāĒ ID:- {2} "
+start_4 : "{0}āǍāĒž āĒŽāĒžāǞāĒŋāĒ[{1}] āĒšāĒŽāĒŖāĒžāĒ āĒ āǤāĒŽāĒžāǰāĢ āĒāĢāĒāĒŽāĒžāĒ āĒāĢāĒĄāĒžāǝāĒž āĒāĢ."
+start_5 : "{0}āǍāĒž āǏāĢāĒĄāĢ āĒĩāĒĒāǰāĒžāĒļāĒāǰāĢāǤāĒž[{1}]āǍāĢ āǏāĒāĢāǝ āĒšāĒŽāĒŖāĒžāĒ āĒ āǤāĒŽāĒžāǰāĢ āĒāĢāĒāĒŽāĒžāĒ āĒāĢāĒĄāĒžāǝāĢ āĒāĢ."
+start_6 : "âī¸ **āǏāĢāĒĒāǰāĒāĢāǰāĢāĒĒāǍāĢ āĒāǰāĢāǰ āĒāĢ** âī¸\n\nāĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ āǤāĒŽāĒžāǰāĒž **āĒāĢāĒĨ**āǍāĢ **āǏāĢāĒĒāǰāĒāĢāǰāĢāĒĒ**āĒŽāĒžāĒ āĒāǍāĢāĒĩāǰāĢāĒ āĒāǰāĢ āĒ
āǍāĢ āĒĒāĒāĢ āĒŽāǍāĢ āĒĒāĒžāĒāĢ āĒāĒŽāĢāǰāĢ.\n\n**āǏāĢāĒĒāǰāĒāĢāǰāĢāĒĒ āĒāĢāĒĩāĢ āǰāĢāǤāĢ āĒŦāǍāĒžāĒĩāĒļāĢ?**\nâ
āǤāĒŽāĒžāǰāĒž āĒāĢāĒĨāǍāĒž āĒāĢāĒ āĒāǤāĒŋāĒšāĒžāǏāǍāĢ āĒāĒāĒĩāĒžāǰ **āĒĻāĢāĒļāĢāǝāĒŽāĒžāǍ** āĒŦāǍāĒžāĒĩāĢ."
+
+ # Help
+help_1 : "āĒĩāǧāĢ āĒŽāĒžāĒšāĒŋāǤāĢ āĒŽāĒžāĒāĢ āǍāĢāĒāĢāǍāĒž āĒŦāĒāǍāĢ āĒĒāǰ āĒāĢāǞāĒŋāĒ āĒāǰāĢ. āĒāĢ āǤāĒŽāǍāĢ āĒāĒĻāĢāĒļāĒŽāĒžāĒ āĒāĢāĒ āǏāĒŽāǏāĢāǝāĒž āĒāĒĩāĢ āǰāĒšāĢ āĒšāĢāǝ āǤāĢ āǤāĒŽāĢ āĒŽāĒžāǰāĒž āĒŦāĢāĒ āĒŽāĒžāǞāĒŋāĒāǍāĢ āǏāĒāĒĒāǰāĢāĒ āĒāǰāĢ āĒļāĒāĢ āĒāĢ āĒ
āĒĨāĒĩāĒž āǏāĒĒāĢāǰāĢāĒ āĒāĢāĒāĒŽāĒžāĒ āĒĒāĢāĒāĢ āĒļāĒāĢ āĒāĢ.\n\nāǤāĒŽāĒžāĒŽ āĒāĒĻāĢāĒļāĢāǍāĢ āĒāĒĒāǝāĢāĒ āĒāǍāĢ āǏāĒžāĒĨāĢ āĒāǰāĢ āĒļāĒāĒžāǝ āĒāĢ: /"
+help_2 : "āĒŽāĒĻāĒĻ āĒŽāĒžāĒāĢ PM āĒŽāĒžāĒ āĒŽāĒžāǰāĢ āǏāĒāĒĒāǰāĢāĒ āĒāǰāĢ."
+
+ # Settings
+setting_1 : "âī¸ **āĒŽāĢāǝāĢāĒāĒŋāĒ āĒŦāĢāĒ āǏāĢāĒāĒŋāĒāĒāĢāǏ**\n\nđ**āĒāĢāǰāĢāĒĒ:** {0}\nđ**āĒāĢāǰāĢāĒĒ āĒāĒāĒĄāĢ:** `{1}`\n\nđĄ**āĒĢāĒāĒāĢāĒļāǍ āĒĒāǏāĒāĒĻ āĒāǰāĢ āǍāĢāĒāĢāǍāĒž āĒŦāĒāǍāĢ āĒāĢ āĒāĢāĒŽāĒžāĒāĒĨāĢ āǤāĒŽāĢ āĒĢāĢāǰāĒĢāĒžāǰ āĒ
āĒĨāĒĩāĒž āĒĢāĢāǰāĒĢāĒžāǰ āĒāǰāĒĩāĒž āĒŽāĒžāĒāĒāĢ āĒāĢ.**"
+setting_3 : "âī¸ āĒ āĒļāĢāĒ āĒāĢ?\n\n1) āĒĄāĒžāǝāǰāĢāĒāĢāĒ: āǏāĢāǧāĒž āĒļāĢāǧ āĒāĢāĒĩāĢāǰāĢ āĒāǞāĒžāĒĩāĢ āĒāĢ. āĒĄāĒžāǝāǰāĢāĒāĢāĒ āĒŽāĢāĒĄāĒŽāĒžāĒ āĒĩāĒŋāĒĄāĒŋāǝāĢ āĒāǞāĒžāĒĩāĒĩāĒž āĒŽāĒžāĒāĢ -v āǍāĢ āĒāĒĒāǝāĢāĒ āĒāǰāĢ.\n\n2) āĒāǍāǞāĒžāĒāǍ: āĒĩāĒŋāĒĄāĒŋāǝāĢ āĒ
āǍāĢ āĒāĒĄāĒŋāǝāĢ āĒĩāĒāĢāĒāĢ āĒĒāǏāĒāĒĻāĒāĢ āĒāǰāĒĩāĒž āĒŽāĒžāĒāĢ āĒāǍāǞāĒžāĒāǍ āĒŽāĒžāǰāĢāĒāĒ
āĒĒ āĒŦāĒāǍāĢ āĒĒāǰāǤ āĒāǰāĢ āĒāĢ."
+setting_4 : "âī¸ āĒ āĒļāĢāĒ āĒāĢ?\n\nđĨ āĒĻāǰāĢāĒ āĒĩāĢāǝāĒāĢāǤāĒŋ: āĒāĢāĒāĒĒāĒŖ āĒĩāĢāǝāĒāĢāǤāĒŋ āĒ āĒāĢāĒĨāĒŽāĒžāĒ āĒšāĒžāĒāǰ āĒāĒĄāĒŽāĒŋāǍ āĒāĒĻāĢāĒļāĢ (āǏāĢāĒāĒŋāĒĒ, āĒĒāĢāĒ, āǰāĒŋāĒāĢāǝāĢāĒŽ āĒĩāĒāĢāǰāĢ) āǍāĢ āĒāĒĒāǝāĢāĒ āĒāǰāĢ āĒļāĒāĢ āĒāĢ.\n\nđ āĒŽāĒžāǤāĢāǰ āĒāĒĄāĒŽāĒŋāǍ: āĒŽāĒžāǤāĢāǰ āĒāĒĄāĒŽāĒŋāǍ āĒ
āǍāĢ āĒ
āǧāĒŋāĒāĢāǤ āĒĩāĒĒāǰāĒžāĒļāĒāǰāĢāǤāĒžāĒ āĒ āĒāĒĄāĒŽāĒŋāǍ āĒāĒĻāĢāĒļāĢāǍāĢ āĒāĒĒāǝāĢāĒ āĒāǰāĢ āĒļāĒāĢ āĒāĢ "
+setting_5 : "āĒāĢāĒ āĒ
āǧāĒŋāĒāĢāǤ āĒĩāĒĒāǰāĒžāĒļāĒāǰāĢāǤāĒžāĒ āĒŽāĒŗāĢāǝāĒž āǍāĒĨāĢ\n\nāǤāĒŽāĢ āĒāĢāĒāĒĒāĒŖ āĒŦāĒŋāǍ-āĒāĒĄāĒŽāĒŋāǍāǍāĢ /auth āĒĻāĢāĒĩāĒžāǰāĒž āĒŽāĒžāǰāĒž āĒāĒĄāĒŽāĒŋāǍ āĒāĒĻāĢāĒļāĢāǍāĢ āĒāĒĒāǝāĢāĒ āĒāǰāĒĩāĒžāǍāĢ āĒ
āǍāĢ /unauth āǍāĢ āĒāĒĒāǝāĢāĒ āĒāǰāĢāǍāĢ āĒāĒžāĒĸāĢ āǍāĒžāĒāĒĩāĒžāǍāĢ āĒŽāĒāĒāĢāǰāĢ āĒāĒĒāĢ āĒļāĒāĢ āĒāĢ"
+setting_9 : "âī¸ āĒ āĒļāĢāĒ āĒāĢ?\n\nāĒāĢāǝāĒžāǰāĢ āǏāĒāĢāǰāĒŋāǝ āĒĨāĒžāǝ āĒāĢ, āǤāĢāǝāĒžāǰāĢ āĒŦāĢāĒ āǤāĒŽāĒžāǰāĢ āĒāĢāĒāǍāĢ āǏāĢāĒĩāĒāĢāĒ āĒ
āǍāĢ āǏāĢāĒĒāǎāĢāĒ āĒŦāǍāĒžāĒĩāĒĩāĒž āĒŽāĒžāĒāĢ {0} āĒĒāĒāĢ āǤāĢāǍāĢ āǏāĒāĒĻāĢāĒļ āĒāĒžāĒĸāĢ āǍāĒžāĒāĒļāĢ."
+setting_10 : "âī¸ āĒ āĒļāĢāĒ āĒāĢ?\n\n1) āĒāĢāĒĨ: āĒāĢāǝāĒžāĒ āĒāĒĻāĢāĒļ āĒāĒĒāĒĩāĒžāĒŽāĒžāĒ āĒāĒĩāĢ āĒāĢ āǤāĢ āĒāĢāĒĨāĒŽāĒžāĒ āǏāĒāĒāĢāǤ āĒĩāĒāĒžāĒĄāĢ āĒāĢ.\n\n2) āĒāĢāǍāǞ: āǤāĒŽāǍāĢ āĒāĢāĒāǤāĢ āĒāĢāǍāǞāĒŽāĒžāĒ āǏāĒāĒāĢāǤ āĒĩāĒāĒžāĒĄāĢ āĒāĢ. /channelplay āĒĻāĢāĒĩāĒžāǰāĒž āĒāĢāǍāǞ id āǏāĢāĒ āĒāǰāĢ"
+setting_11 : "âī¸ āĒ āĒļāĢāĒ āĒāĢ?\n\n1) āĒĻāǰāĢāĒ āĒĩāĢāǝāĒāĢāǤāĒŋ: āĒ āĒāĢāĒĨāĒŽāĒžāĒ āĒšāĒžāĒāǰ āĒāĢāĒāĒĒāĒŖ āĒ
āĒšāĢāĒ āǏāĒāĒāĢāǤ āĒĩāĒāĒžāĒĄāĢ āĒļāĒāĢ āĒāĢ.\n\n2) āĒĢāĒāĢāǤ āĒāĒĄāĒŽāĒŋāǍ: āĒĢāĒāĢāǤ āĒāĒĄāĒŽāĒŋāǍ āĒ āĒ āĒāĢāĒĨāĒŽāĒžāĒ āǏāĒāĒāĢāǤ āĒĩāĒāĒžāĒĄāĢ āĒļāĒāĢ āĒāĢ."
+setting_12 : "â āǤāĒŽāĒžāǰāĢ āĒĒāĒžāǏāĢ āĒāĢāǍāǞ āĒŽāĢāĒĄ āĒŽāĒžāĒāĢ āĒāĢāĒ āĒāĢāǍāǞ id āĒĩāĢāǝāĒžāĒāĢāǝāĒžāǝāĒŋāǤ āǍāĒĨāĢ. āĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ /channelplay āǏāĒžāĒĨāĢ āĒĩāĢāǝāĒžāĒāĢāǝāĒžāǝāĒŋāǤ āĒāǰāĢ."
+setting_13 : "āǏāĒāĢāǰāĒŋāǝ āĒāĢāĒĨ āĒāĢāǞāĒŽāĒžāĒ āĒĒāĢāǞāĢ āĒŽāĢāĒĄ āĒŦāĒĻāǞāĢ āĒļāĒāĒžāǤāĢ āǍāĒĨāĢ. āĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ /stop āǏāĒžāĒĨāĢ āĒĒāĒšāĢāǞāĒž āĒĩāĢāĒāǏ āĒāĢāĒ āĒŦāĒāǧ āĒāǰāĢ."
+setting_14 : "âī¸ āĒ āĒļāĢāĒ āĒāĢ?\n\nāĒāĢāǝāĒžāǰāĢ āǏāĒāĢāǰāĒŋāǝ āĒĨāĒžāǝ āĒāĢ, āǤāĢāǝāĒžāǰāĢ āĒŦāĢāĒ āǤāĢāǍāĒž āĒāĒāĢāĒāĒŋāĒāĢāǝāĢāĒ āĒāǰāĢāǞāĒž āĒāĒĻāĢāĒļāĢ (/play, /pause, /shuffle, /stop etc) āǍāĢ āǤāǰāǤ āĒ āĒāĒžāĒĸāĢ āǍāĒžāĒāĒļāĢ.\n\nāĒŦāĢāĒāǍāĢ āĒāǍāĒž āĒŽāĒžāĒāĢ āǏāĢāǧāĒž āĒ āǏāĒāĒĻāĢāĒļāĒž āĒāĒĄāĒŽāĒŋāǍāǍāĢ āĒāĒžāĒĸāĢ āǍāĒžāĒāĒĩāĒžāǍāĢ āĒāǰāĢāǰ āĒĒāĒĄāĒļāĢ. āǝāĢāĒāĢāǝ āǰāĢāǤāĢ āĒāĒžāĒŽ āĒāǰāĢ."
+setting_15 : "āĒĒāĢāĒ
āǰ āĒāĒāĢāǞāĒĩāĒžāĒŽāĒžāĒ āǍāĒŋāǎāĢāĒĢāĒŗ, āĒāĒžāǤāǰāĢ āĒāǰāĢ āĒāĢ āǤāĒŽāĢ āǤāĒŽāĒžāǰāĢ āĒāĢāǍāǞāĒŽāĒžāĒ āĒŦāĢāĒ āĒāĒŽāĢāǰāĢāǝāĢ āĒāĢ āĒ
āǍāĢ āǤāĢāǍāĢ āĒāĒĄāĒŽāĒŋāǍ āǤāǰāĢāĒāĢ āĒĒāĢāǰāĒŽāĢāĒ āĒāǰāĢāǝāĢ āĒāĢ.\n\nāĒĢāǰāĢ āǏāĢāĒāĒŋāĒāĒ /āĒāĢāǍāǞāĒĒāĢāǞāĢ āĒāǰāĒĩāĒžāǍāĢ āĒĒāĢāǰāǝāĒžāǏ āĒāǰāĢ.."
+
+set_cb_1 : "āĒāĒĄāĒŋāǝāĢ āĒāĢāĒŖāĒĩāǤāĢāǤāĒž āĒĒāĢāǍāǞ āĒŽāĢāĒŗāĒĩāĢ āǰāĒšāĢāǝāĢāĒ āĒāĢ..."
+set_cb_2 : "āĒĩāĒŋāĒĄāĒŋāĒ āĒāĢāĒŖāĒĩāǤāĢāǤāĒž āĒĒāĢāǍāǞ āĒŽāĢāĒŗāĒĩāĢ āǰāĒšāĢāǝāĢāĒ āĒāĢ..."
+set_cb_3 : "āĒ
āǧāĒŋāĒāĢāǤ āĒĩāĒĒāǰāĒžāĒļāĒāǰāĢāǤāĒžāĒ āĒĒāĢāǍāǞ āĒŽāĢāĒŗāĒĩāĒĩāĢ..."
+set_cb_4 : "āĒĒāĢāǞāĢ āĒŽāĢāĒĄ āĒĒāĢāǍāǞ āĒŽāĢāĒŗāĒĩāĢ āǰāĒšāĢāǝāĢāĒ āĒāĢ..."
+set_cb_5 : "āĒāĢāǞāĢāǍ āĒŽāĢāĒĄ āĒĒāĢāǍāǞ āĒŽāĢāĒŗāĒĩāĢ āǰāĒšāĢāǝāĢāĒ āĒāĢ..."
+set_cb_6 : "āĒĢāĢāǰāĒĢāĒžāǰāĢ āǏāĢāĒ āĒāǰāĢ āǰāĒšāĢāǝāĒž āĒāĢāĒ."
+set_cb_7 : "āĒ
āǧāĒŋāĒāĢāǤ āĒĩāĒĒāǰāĒžāĒļāĒāǰāĢāǤāĒžāĒāǍāĢ āǏāĢāĒāĒŋ āĒŽāĢāĒŗāĒĩāĢ āǰāĒšāĢāǝāĢāĒ āĒāĢ.. āĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ āǰāĒžāĒš āĒāĢāĒ."
+set_cb_8 : "āĒĒāĒžāĒāĢāĒ āĒŽāĢāĒŗāĒĩāĒĩāĢāĒ.."
+
+ # Misc
+gstats_1 : "āĒĩāĢāĒļāĢāĒĩāĒŋāĒ āĒāĒāĒāĒĄāĒž āĒŽāĢāĒŗāĒĩāĒĩāĒžāĒŽāĒžāĒ, āĒāĒŽāĒžāĒ āĒĨāĢāĒĄāĢ āǏāĒŽāǝ āǞāĒžāĒāĢ āĒļāĒāĢ āĒāĢ..."
+gstats_2 : "āĒāĢāĒ āĒĩāĢāĒļāĢāĒĩāĒŋāĒ āĒāĒāĒāĒĄāĒž āĒŽāĒŗāĢāǝāĒž āǍāĒĨāĢ."
+gstats_3 : "**āĒŦāĢāĒ āĒĒāǰ āĒāĢāǞ āĒāĢāĒĩāĢāǰāĢāĒ:** {0}\n\n{1} āĒ āĒ
āǤāĢāǝāĒžāǰ āǏāĢāǧāĢ **{3}** āĒĩāĒāǤ **{2}** āĒāĢāǰāĢ
āĒ āǰāĒŽāĢāǝāĒž āĒāĢ.\n \n**āĒāĢāĒāǍāĒž {4} āĒāĢāǰāĢ
āĒāĢāǏ:**\n"
+
+ustats_1 : "āĒāĢāĒ āĒĩāĒĒāǰāĒžāĒļāĒāǰāĢāǤāĒž āĒāĒāĒāĒĄāĒž āĒŽāĒŗāĢāǝāĒž āǍāĒĨāĢ."
+ustats_2 : "āĒļāĢāĒāĒāĒžāĒŽāǍāĒž!, āǤāĒŽāĢ āĒ
āǤāĢāǝāĒžāǰ āǏāĢāǧāĢ **{0}** āĒāĢāǰāĢāĒ **{1}** āĒĩāĒāǤ āǰāĒŽāĢāǝāĒž āĒāĢ.\n\nāǤāĒŽāĒžāǰāĒž āĒĻāĢāĒĩāĒžāǰāĒž āĒāĒāĒĩāĒĩāĒžāĒŽāĒžāĒ āĒāĒĩāĢāǞ āĒāĢāĒāǍāĒž {2}:\n\n"
+
+top_1 : "āĒŦāĢāĒāǍāĢ āĒĩāĢāĒļāĢāĒĩāĒŋāĒ āĒāĢāĒāǍāĢ 10 āĒāĢāĒāĢāǏ āĒŽāĢāĒŗāĒĩāĒĩāĢ, āĒāĒŽāĒžāĒ āĒĨāĢāĒĄāĢ āǏāĒŽāǝ āǞāĒžāĒāĢ āĒļāĒāĢ āĒāĢ..."
+top_2 : "āĒāĢāĒ āĒāĒāĒāĒĄāĒž āĒŽāĒŗāĢāǝāĒž āǍāĒĨāĢ"
+top_3 : "**{1}āǍāĢ āĒāĢāĒāǍāĢ {0} āĒāĢāĒāĢāǏ:**\n\n"
+top_4 : "āĒŦāĢāĒāǍāĒž āĒĩāĢāĒļāĢāĒĩāĒŋāĒ āĒāĢāĒāǍāĒž 10 āĒĩāĒĒāǰāĒžāĒļāĒāǰāĢāǤāĒžāĒ āĒŽāĢāĒŗāĒĩāĒĩāĒžāĒŽāĒžāĒ, āĒāĒŽāĒžāĒ āĒĨāĢāĒĄāĢ āǏāĒŽāǝ āǞāĒžāĒāĢ āĒļāĒāĢ āĒāĢ..."
+top_5 : "**{1} āǍāĒž āĒāĢāĒāǍāĒž {0} āĒĩāĒĒāǰāĒžāĒļāĒāǰāĢāǤāĒžāĒ:**\n\n"
+top_6 : "āĒ āĒāĢāĒāǍāĒž āĒāĢāĒāǍāĒž 10 āĒāĢāǰāĢāĒ āĒŽāĢāĒŗāĒĩāĒĩāĒžāĒŽāĒžāĒ, āĒāĒŽāĒžāĒ āĒĨāĢāĒĄāĢ āǏāĒŽāǝ āǞāĒžāĒāĢ āĒļāĒāĢ āĒāĢ..."
+top_7 : "āĒŦāĢāĒāǍāĒž āĒāĢāǞāĢāĒŦāǞ āĒāĢāĒĒ 10 āĒāĢāǰāĢ
āĒāĢāǏ āĒŽāĢāĒŗāĒĩāĒĩāĒžāĒŽāĒžāĒ, āĒāĒŽāĒžāĒ āĒĨāĢāĒĄāĢ āǏāĒŽāǝ āǞāĒžāĒāĢ āĒļāĒāĢ āĒāĢ..."
+top_8 : "āĒ āĒāĢāĒ āĒāĢāĒĨāĢ āĒ
āǤāĢāǝāĒžāǰ āǏāĢāǧāĢ **{0}** āĒāĢāǰāĢāĒ **{1}** āĒĩāĒāǤ āǰāĒŽāĢāǝāĒž āĒāĢ.\n\nāĒ āĒāĢāĒ āĒāĢāĒĨ āĒĻāĢāĒĩāĒžāǰāĒž āǰāĒŽāĒžāǝāĢāǞ āĒāĢāĒāǍāĒž {2}:\n\n"
+top_9 : "Bot āǍāĒž āǏāĒžāĒŽāĒžāǍāĢāǝ āĒāĒāĒāĒĄāĒž āĒ
āǍāĢ āĒŽāĒžāĒšāĒŋāǤāĢ āĒŽāĢāĒŗāĒĩāĢ āǰāĒšāĢāǝāĒžāĒ āĒāĢāĒ.. āĒāĒŽāĒžāĒ āĒĨāĢāĒĄāĢ āǏāĒŽāǝ āǞāĒžāĒāĢ āĒļāĒāĢ āĒāĢ..."
+top_10 : "**BOT āǍāĒž āĒĩāĢāĒļāĢāĒĩāĒŋāĒ āĒāĢāĒāǍāĒž 10 āĒāĒāĒāĒĄāĒž**\n\nāǍāĢāĒāĢāĒĨāĢ āǤāĢ āĒŦāĒāǍāĢ āĒĒāǏāĒāĒĻ āĒāǰāĢ āĒāĢ āĒāĢāǍāĒž āĒŽāĒžāĒāĢ āǤāĒŽāĢ āĒŦāĢāĒāǍāĒž āǏāǰāĢāĒĩāǰāĒŽāĒžāĒāĒĨāĢ āĒĩāĢāĒļāĢāĒĩāĒŋāĒ āĒāĒāĒāĒĄāĒžāĒ āǤāĒĒāĒžāǏāĒĩāĒž āĒŽāĒžāĒāĒāĢ āĒāĢ."
+
+ # play
+
+ #Play CallBack
+playcb_1 : "āĒ āǤāĒŽāĒžāǰāĒž āĒŽāĒžāĒāĢ āǍāĒĨāĢ! āǤāĒŽāĒžāǰāĢāĒ āĒĒāĢāǤāĒžāǍāĢāĒ āĒāĢāǤ āĒļāĢāǧāĢ."
+playcb_2 : "āĒāĒāǞāĢāĒ āĒĒāǰāĒŋāĒŖāĒžāĒŽ āĒŽāĢāĒŗāĒĩāĒĩāĢāĒ"
+
+ # Channel Play
+cplay_1 : "āǤāĒŽāĢ āĒ āĒāĢāĒ[{0}] āĒĨāĢ āĒāĢāĒāĒĒāĒŖ āĒāĢāǍāǞ āĒ
āĒĨāĒĩāĒž āǤāĒŽāĒžāǰāĢ āĒāĢāĒāǍāĢ āǞāĒŋāĒāĒ āĒāǰāĢāǞ āĒāĢāǍāǞāĒŽāĒžāĒ āǏāĒāĒāĢāǤ āĒĩāĒāĒžāĒĄāĢ āĒļāĒāĢ āĒāĢ.\n\n**āǞāĒŋāĒāĒ āĒāǰāĢāǞ āĒāĢāǍāǞ āĒŽāĒžāĒāĢ:**\n`/{1} āǞāĒŋāĒāĒ āĒāǰāĢāǞ`\n\ n**āĒ
āǍāĢāǝ āĒāĢāĒāĒĒāĒŖ āĒāĢāǍāǞ āĒŽāĒžāĒāĢ:**\n`/{1} [āĒāĢāǍāǞ ID]`"
+cplay_2 : "āĒ āĒāĢāĒāĒŽāĒžāĒ āĒāĢāĒ āǞāĒŋāĒāĒ āĒāǰāĢāǞ āĒāĢāǍāǞ āǍāĒĨāĢ."
+cplay_3 : "āĒāĢāǍāǞ āĒĩāĢāǝāĒžāĒāĢāǝāĒžāǝāĒŋāǤ {0}\n\n__āĒāĢāǍāǞ ID__: {1}"
+cplay_4 : "āĒāĢāǍāǞ āĒŽāĢāĒŗāĒĩāĒĩāĒžāĒŽāĒžāĒ āǍāĒŋāǎāĢāĒĢāĒŗ.\n\nāĒāĒžāǤāǰāĢ āĒāǰāĢ āĒāĢ āǤāĒŽāĢ āǤāĒŽāĒžāǰāĢ āĒāĢāǍāǞāĒŽāĒžāĒ āĒŦāĢāĒ āĒāĒŽāĢāǰāĢāǝāĢ āĒāĢ āĒ
āǍāĢ āǤāĢāǍāĢ āĒāĒĄāĒŽāĒŋāǍ āǤāǰāĢāĒāĢ āĒĒāĢāǰāĒŽāĢāĒ āĒāǰāĢāǝāĢ āĒāĢ.\n/channelplay āĒĻāĢāĒĩāĒžāǰāĒž āĒāĢāǍāǞ āĒŦāĒĻāǞāĢ āĒ
āĒĨāĒĩāĒž /playmode āĒĻāĢāĒĩāĒžāǰāĒž āĒāĢāǍāǞ āĒĒāĢāǞāĢ āĒŽāĢāĒĄāǍāĢ āĒ
āĒāĢāǎāĒŽ āĒāǰāĢ"
+cplay_5 : "āĒŽāĒžāǤāĢāǰ āĒāĢāǍāǞāĢ āĒ āǏāĒŽāǰāĢāĒĨāĒŋāǤ āĒāĢ."
+cplay_6 : "āĒāĢāǍāǞāǍāĢ āĒ āĒāĢāĒĨ āǏāĒžāĒĨāĢ āĒāĢāĒĄāĒĩāĒž āĒŽāĒžāĒāĢ āǤāĒŽāĒžāǰāĢ āǤāĢāǍāĒž **āĒŽāĒžāǞāĒŋāĒ[{0}] āĒŦāǍāĒĩāĒžāǍāĢ āĒāǰāĢāǰ āĒāĢ.\n**āĒāĢāǍāǞāǍāĒž āĒŽāĒžāǞāĒŋāĒ:** @{1}\n\nāĒĩāĢāĒāǞāĢāĒĒāĒŋāĒ āǰāĢāǤāĢ āǤāĒŽāĢ āǤāĒŽāĒžāǰāĒž āĒāĢāĒĨāǍāĢ āǞāĒŋāĒāĒ āĒāǰāĢ āĒļāĒāĢ āĒāĢ āǤāĢ āĒāĢāǍāǞ āǏāĒžāĒĨāĢ āĒ
āǍāĢ āĒĒāĒāĢ `/āĒāĢāǍāǞāĒĒāĢāǞāĢ āǞāĒŋāĒāĒāĢāĒĄ` āǏāĒžāĒĨāĢ āĒāǍāĢāĒāĢāĒ āĒāǰāĒĩāĒžāǍāĢ āĒĒāĢāǰāǝāĒžāǏ āĒāǰāĢ"
+
+ #Play
+play_1 : "đ āĒĒāĢāǰāĒāĢāǰāĒŋāǝāĒž āĒāĢāĒĩāĢāǰāĢ... āĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ āǰāĒžāĒš āĒāĢāĒ!"
+play_2 : "**đˇāĒāĢāǍāǞ āĒĒāĢāǞāĢ āĒŽāĢāĒĄ**\n\nđ āĒĒāĢāǰāĒāĢāǰāĒŋāǝāĒž āĒāĢāĒĩāĢāǰāĢ... āĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ āǰāĒžāĒš āĒāĢāĒ!\n**āǞāĒŋāĒāĒ āĒāǰāĢāǞ āĒāĢāǍāǞ:** {0}"
+play_3 : "āĒāĢāĒĩāĢāǰāĢ āĒĒāǰ āĒĒāĢāǰāĒāĢāǰāĒŋāǝāĒž āĒāǰāĒĩāĒžāĒŽāĒžāĒ āǍāĒŋāǎāĢāĒĢāĒŗ!"
+play_4 : "đ **āĒāĒĄāĒŽāĒŋāǍāĢāǏ āĒāǍāĢāǞāĢ āĒĒāĢāǞāĢ**\nāĒĢāĒāĢāǤ āĒāĒĄāĒŽāĒŋāǍāĢāǏ āĒ
āǍāĢ āĒāĒĨ āǝāĢāĒāǰāĢāǏ āĒ āĒāĢāǰāĢāĒĒāĒŽāĒžāĒ āĒŽāĢāǝāĢāĒāĒŋāĒ āĒĩāĒāĒžāĒĄāĢ āĒļāĒāĢ āĒāĢ.\n\n/playmode āĒĻāĢāĒĩāĒžāǰāĒž āĒŽāĢāĒĄ āĒŦāĒĻāǞāĢ āĒ
āǍāĢ āĒāĢ āǤāĒŽāĢ āĒĒāĒšāĢāǞāĢāĒĨāĢ āĒ āĒāĒĄāĒŽāĒŋāǍ āĒāĢ, āǤāĢ /admincache āĒĻāĢāĒĩāĒžāǰāĒž āĒāĒĄāĒŽāĒŋāǍāĒāĢāĒļāǍāĢ āĒĢāǰāĢāĒĨāĢ āǞāĢāĒĄ āĒāǰāĢ"
+play_5 : "āĒāĒĄāĒŋāĒ āĒĢāĒžāĒāǞ āĒĒāǰ āĒĒāĢāǰāĒāĢāǰāĒŋāǝāĒž āĒāǰāĒĩāĒžāĒŽāĒžāĒ āǍāĒŋāǎāĢāĒĢāĒŗ.\n\nāĒāĒĄāĒŋāǝāĢ āĒĢāĒžāĒāǞāǍāĢāĒ āĒāĒĻ 100 mb āĒāǰāǤāĒžāĒ āĒāĒāĢāĒ āĒšāĢāĒĩāĢāĒ āĒāĢāĒāĒ"
+play_6 : "**āĒ
āĒĩāǧāĒŋ āĒŽāǰāĢāǝāĒžāĒĻāĒž āĒāĒŗāĒāĒāĒžāĒ āĒāĒ**\n\n**āĒŽāĒāĒāĢāǰ āĒ
āĒĩāǧāĒŋ: **{0} āĒŽāĒŋāǍāĒŋāĒ(āĒ)\n**āĒĒāĢāǰāĒžāĒĒāĢāǤ āĒ
āĒĩāǧāĒŋ:** {1} āĒāǞāĒžāĒ"
+play_7 : "āĒŽāĒžāĒĢ āĒāǰāĒļāĢ! CPU āĒāĒĩāǰāǞāĢāĒĄ āǏāĒŽāǏāĢāǝāĒžāĒāǍāĢ āĒāĒžāǰāĒŖāĢ āĒŦāĢāĒ āĒŽāĒžāǤāĢāǰ āĒŽāǰāĢāǝāĒžāĒĻāĒŋāǤ āǏāĒāĒāĢāǝāĒžāĒŽāĒžāĒ āĒĩāĒŋāĒĄāĒŋāǝāĢ āĒāĢāǞāĢāǏāǍāĢ āĒŽāĒāĒāĢāǰāĢ āĒāĒĒāĢ āĒāĢ. āĒ
āǍāĢāǝ āĒāĒŖāĢ āĒāĢāĒāĢāǏ āĒ
āǤāĢāǝāĒžāǰāĢ āĒĩāĒŋāĒĄāĒŋāǝāĢ āĒāĢāǞāǍāĢ āĒāĒĒāǝāĢāĒ āĒāǰāĢ āǰāĒšāĢ āĒāĢ. āĒāĒĄāĒŋāǝāĢ āĒĒāǰ āǏāĢāĒĩāĒŋāĒ āĒāǰāĒĩāĒžāǍāĢ āĒĒāĢāǰāǝāĒžāǏ āĒāǰāĢ āĒ
āĒĨāĒĩāĒž āĒĒāĒāĢāĒĨāĢ āĒĢāǰāĢ āĒĒāĢāǰāǝāĒžāǏ āĒāǰāĢ"
+play_8 : "āĒŽāĒžāǍāĢāǝ āĒĩāĒŋāĒĄāĒŋāĒ āĒĢāĒžāĒāǞ āĒāĒāĢāǏāĢāĒāĢāĒāĒļāǍ āǍāĒĨāĢ!\n\n**āǏāĒĒāĢāǰāĢāĒāĢāĒĄ āĒĢāĢāǰāĢāĒŽāĢāĒāĢāǏ:** {0}"
+play_9 : "āĒĩāĒŋāĒĄāĒŋāǝāĢ āĒĢāĒžāĒāǞāǍāĢāĒ āĒāĒĻ 1 GiB āĒāǰāǤāĒž āĒāĒāĢāĒ āĒšāĢāĒĩāĢāĒ āĒāĢāĒāĒ"
+play_10 : "**āǝāĢāĒāĢāǝāĢāĒŦ āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒ āǏāĢāĒĩāĒŋāǧāĒž**\n\nāǤāĒŽāĢ āĒāĒāĢ āǝāĢāĒāĢāǝāĢāĒŦ āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒ āĒāǞāĒžāĒĩāĒĩāĒž āĒŽāĒžāĒāĒāĢ āĒāĢ āǤāĢ āĒŽāĢāĒĄ āĒĒāǏāĒāĒĻ āĒāǰāĢ"
+play_11 : "đāĒļāĢāǰāĢāǎāĒ: **{0}\n\nâŗ āĒ
āĒĩāǧāĒŋ:** {1} āĒŽāĒŋāǍāĒŋāĒ"
+play_12 : "**Spotify Play Mode**\n\nāĒāǍāĒž āĒĻāĢāĒĩāĒžāǰāĒž āĒĩāĒŋāǍāĒāǤāĢ āĒāǰāĒžāǝāĢāǞ:- {0}"
+play_13 : "**Apple āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒ**\n\nāĒāǍāĒž āĒĻāĢāĒĩāĒžāǰāĒž āĒĩāĒŋāǍāĒāǤāĢ āĒāǰāĒžāǝāĢāǞ:- {0}"
+play_14 : "**URL āĒāĒāĒžāǏāĒĩāĒžāĒŽāĒžāĒ āĒ
āǏāĒŽāǰāĢāĒĨ.**\nāĒāĢ āĒ url āǍāĢāĒāĢāǍāĒž āĒāĢāĒāĒĒāĒŖ āĒĒāĢāǞāĢāĒāĒĢāĢāǰāĢāĒŽāǍāĢāĒ āĒšāĢāǝ āǤāĢ āĒāĒļāĢāĒāǰāĢāǝ āĒĨāĒžāǝ āĒāĢ: Youtube, AppleMusic, Spotify, Resso āĒ
āǍāĢ Soundcloud.\n\nāǤāĒŽāĢ M3u8 āĒ
āĒĨāĒĩāĒž āǰāĒŋāĒŽāĢāĒ āǞāĒŋāĒāĒāĢāǏ āĒŽāĒžāĒāĢ /āǏāĢāĒāĢāǰāĢāĒŽāǍāĢ āĒāĒĒāǝāĢāĒ āĒāǰāĢ āĒļāĒāĢ āĒāĢ "
+play_15 : "**āǞāĒžāĒāĒĩ āǏāĢāĒāĢāǰāĢāĒŽ āĒļāĢāǧāĒžāǝāĢāĒ**\n\nāǏāĒŋāǏāĢāĒāĒŽāǍāĢ āǤāĒŽāĒžāǰāĢ āĒāĢāǰāĢ
āĒ āǞāĒŋāĒāĒ āǞāĒžāĒāĒĩ āǏāĢāĒāĢāǰāĢāĒŽ āǤāǰāĢāĒāĢ āĒŽāĒŗāĢ āĒāĢ. āǞāĒžāĒāĒĩ āǏāĢāĒāĢāǰāĢāĒŽ āĒāǞāĒžāĒĩāĒĩāĒž āĒŽāĒžāĒāĒāĢ āĒāĢ?"
+play_16 : "āĒāĢāǰāĢāĒāǍāĢ āĒĩāĒŋāĒāǤāĢ āĒŽāĢāĒŗāĒĩāĒĩāĒžāĒŽāĒžāĒ āǍāĒŋāǎāĢāĒĢāĒŗ. āĒāĢāĒāĒĒāĒŖ āĒ
āǍāĢāǝ āǰāĒŽāĒĩāĒžāǍāĢ āĒĒāĢāǰāǝāĒžāǏ āĒāǰāĢ."
+play_17 : "āĒ āĒĒāĢāǰāĒāĒžāǰāǍāĢ āǏāĢāĒĒāĢāĒāĒžāĒāĒĢ āĒāĢāĒĩāĢāǰāĢ āĒāǞāĒžāĒĩāĒĩāĒžāĒŽāĒžāĒ āĒ
āǏāĒŽāǰāĢāĒĨ!\n\nāĒšāĢāĒ āĒŽāĒžāǤāĢāǰ āǏāĢāĒĒāĢāĒāĒžāĒāĒĢ āĒāĢāǰāĢāĒāĢāǏ, āĒāǞāĢāĒŦāĒŽāĢāǏ, āĒāǞāĒžāĒāĒžāǰāĢ āĒ
āǍāĢ āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒāĢāǏ āĒ āĒĒāĢāǞāĢ āĒāǰāĢ āĒļāĒāĢāĒ āĒāĢāĒ"
+
+ #Playlist
+playlist_1 : "**āĒāĒĒāǝāĢāĒ:** /āĒĒāĢāǞāĢ [āǏāĒāĒāĢāǤāǍāĢāĒ āǍāĒžāĒŽ āĒ
āĒĨāĒĩāĒž āǝāĢāĒāĢāǝāĢāĒŦ āǞāĒŋāĒāĒ āĒ
āĒĨāĒĩāĒž āĒāĒĄāĒŋāǝāĢāǍāĢ āĒāĒĩāĒžāĒŦ āĒāĒĒāĢ]\n\nāĒāĢ āǤāĒŽāĢ āĒŦāĢāĒāǍāĢāĒ āǏāǰāĢāĒĩāǰ āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒ āĒāǞāĒžāĒĩāĒĩāĒž āĒŽāĒžāĒāĒāǤāĒž āĒšāĢāĒĩ āǤāĢ āǍāĢāĒāĢāǍāĢāĒ āĒŦāĒāǍ āĒĻāĒŦāĒžāĒĩāĢ."
+playlist_2 : "āǤāĒŽāĒžāǰāĢ āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒ āĒŽāĒŗāĢ āǰāĒšāĢ āĒāĢ. āĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ āǰāĒžāĒš āĒāĢāĒ"
+playlist_3 : "āǤāĒŽāĒžāǰāĢ āĒĒāĒžāǏāĢ āĒŦāĢāĒāǍāĒž āǏāǰāĢāĒĩāǰ āĒĒāǰ āĒāĢāĒ āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒ āǍāĒĨāĢ."
+playlist_4 : "āĒĢāĢāĒ āĒāǰāĢāǞ āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒ:\n\n"
+playlist_5 : " āĒ
āĒĩāǧāĒŋ- {0} āĒŽāĒŋāǍāĒŋāĒ"
+playlist_6 : "āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒ āĒāĒžāĒĸāĢ āǍāĒžāĒāĒĩāĒž āĒŽāĒžāĒāĢ PM āĒŽāĒžāĒ āĒŽāĒžāǰāĢ āǏāĒāĒĒāǰāĢāĒ āĒāǰāĢ."
+playlist_7 : "āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒāǍāĢ āĒ
āĒāĒĻāǰāǍāĒž āĒāĢāǰāĢ
āĒāĢāǏ: {0}\n\nāǤāĒŽāĒžāǰāĒž āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒāĒŽāĒžāĒāĒĨāĢ āĒāĢāĒ āĒāĢāĒāĢāĒāǏ āĒāĢāǰāĢ
āĒ āĒāĒžāĒĸāĢ āǍāĒžāĒāĒĩāĒž āĒŽāĒžāĒāĢ āĒŦāĒāǍāĢ āĒĻāĒŦāĒžāĒĩāĢ.\n\nāĒāĒāĢ āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒ āĒāĒžāĒĸāĢ āǍāĒžāĒāĒĩāĒž āĒŽāĒžāĒāĢ: āĒĄāĢāǞ āĒāĒāĢ āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒ āĒŦāĒāǍ āĒĻāĒŦāĒžāĒĩāĢ."
+playlist_8 : "āĒĒāĒšāĢāǞāĢāĒĨāĢ āĒ āĒ
āǏāĢāǤāĒŋāǤāĢāĒĩāĒŽāĒžāĒ āĒāĢ\n\nāĒ āĒāĢāǰāĢ
āĒ āǤāĒŽāĒžāǰāĢ āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒāĒŽāĒžāĒ āĒ
āǏāĢāǤāĒŋāǤāĢāĒĩāĒŽāĒžāĒ āĒāĢ."
+playlist_9 : "āĒŽāĒžāĒĢ āĒāǰāĒļāĢ! āǤāĒŽāĒžāǰāĢ āĒĒāĒžāǏāĢ āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒāĒŽāĒžāĒ āĒĢāĒāĢāǤ {0} āǏāĒāĒāĢāǤ āĒšāĢāĒ āĒļāĒāĢ āĒāĢ."
+playlist_10 : "āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒ āĒāĒĄāĒŋāĒļāǍ\n\n{0}\nāǤāĒŽāĒžāǰāĒž āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒāĒŽāĒžāĒ āĒāĒŽāĢāǰāĒžāǝāĢāǞ."
+playlist_11 : "āǤāĒŽāĒžāǰāĢ āĒāĢāǰāĢāĒ āǏāĒĢāĒŗāǤāĒžāĒĒāĢāǰāĢāĒĩāĒ āĒāĒžāĒĸāĢ āǍāĒžāĒāĢāǝāĢ."
+playlist_12 : "āǤāĒŽāĒžāǰāĢ āĒāĢāǰāĢāĒ āĒāĒžāĒĸāĢ āǍāĒžāĒāĒĩāĒžāĒŽāĒžāĒ āǍāĒŋāǎāĢāĒĢāĒŗ."
+playlist_13 : "āǏāǰāĢāĒĩāǰāĒŽāĒžāĒāĒĨāĢ āǤāĒŽāĒžāǰāĢ āĒāĒāĢ āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒ āĒāĒžāĒĸāĢ āǍāĒžāĒāĢ."
+playlist_14 : "**āĒļāĢāĒ āǤāĒŽāĢ āĒāǰāĢāĒāǰ āǤāĒŽāĒžāǰāĢ āĒāĒāĢ āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒ āĒāĒžāĒĸāĢ āǍāĒžāĒāĒĩāĒž āĒŽāĒžāĒāĒāĢ āĒāĢ?**\n\nāǤāĒŽāĢ āǤāĒŽāĒžāǰāĢ āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒ āĒāĢāĒŽāĒžāĒĩāĒļāĢ āĒ
āǍāĢ āǤāĢ āĒĒāĒāĢāĒĨāĢ āĒĒāĢāǍāĒāĒĒāĢāǰāĒžāĒĒāĢāǤ āĒāǰāĢ āĒļāĒāĒžāĒļāĢ āǍāĒšāĢāĒ."
+playlist_15 : "[āĒāĢāĒāĒāĒāĒ āĒāĒāĢ āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒ]({0})"
+playlist_16 : "āĒāǤāĒžāǰāĒŦāĒĻāĢāǧ āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒ:"
+playlist_17 : "āĒāǤāĒžāǰāĒŦāĒĻāĢāǧ āǏāĢāĒĨāĒŋāǤāĒŋ-"
+playlist_18 : "[āĒāĢāĒāĒāĒāĒ āĒāĒāĢ āĒāǤāĒžāǰāĒĩāĒžāĒŗāĢ āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒ]({0})\n\nāĒāĢāǞāĢāǞāĢ āĒāǤāĒžāǰāĒĩāĒžāĒŗāĢ āǏāĢāĒĨāĒŋāǤāĒŋ : **{1}**"
+
+ #Playmode
+playmode_1 : "āǤāĢ āĒŽāĢāĒĄ āĒĒāǏāĒāĒĻ āĒāǰāĢ āĒāĢ āĒāĢāĒŽāĒžāĒ āǤāĒŽāĢ āǤāĒŽāĒžāǰāĒž āĒāĢāĒĨāǍāĢ āĒ
āĒāĒĻāǰ āĒāĢāĒĩāĢāǰāĢ āĒāǞāĒžāĒĩāĒĩāĒž āĒŽāĒžāĒāĒāĢ āĒāĢ[{0}]."
+playmode_2 : "āǏāĢāĒāĒŋāĒāĒāĢāǏ āĒŦāĒĻāǞāĒžāĒ āĒ
āǍāĢ {0} āĒĻāĢāĒĩāĒžāǰāĒž āǏāĒĢāĒŗāǤāĒžāĒĒāĢāǰāĢāĒĩāĒ āǏāĒžāĒāĒĩāĒĩāĒžāĒŽāĒžāĒ āĒāĒĩāĢ"
+
+ #Stream
+str_1 : "āĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ M3u8 āǞāĒŋāĒāĒāĢāǏ āĒ
āĒĨāĒĩāĒž āĒāǍāĢāĒĄāĢāĒāĢāǏ āǞāĒŋāĒāĒāĢāǏ āĒĒāĢāǰāĒĻāĒžāǍ āĒāǰāĢ."
+str_2 : "â
āĒŽāĒžāǍāĢāǝ āǏāĢāĒāĢāǰāĢāĒŽ āĒāĒāĒžāǏāĒžāǝāĢāǞ\n\nāĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ āĒĒāĢāǰāĢāǏāĢāǏāĒŋāĒāĒ āǞāĒŋāĒāĒāǍāĢ āǰāĒžāĒš āĒāĢāĒ.."
+str_3 : "YouTube āǞāĒžāĒāĒĩ āǏāĢāĒāĢāǰāĢāĒŽāĢāǏāǍāĢ āǏāĢāĒāĢāǰāĢāĒŽ āĒāǰāĒĩāĒžāĒŽāĒžāĒ āĒ
āǏāĒŽāǰāĢāĒĨ. āĒāĢāĒ āǞāĒžāĒāĒĩ āĒĢāĢāǰāĢāĒŽāĢāĒ āĒŽāĒŗāĢāǝāĢāĒ āǍāĒĨāĢ"
+
+ #TopPlay
+tracks_1 : "**āĒĒāĢāǰāĒāĢāǰāĒŋāǝāĒž āĒāǰāĢ āǰāĒšāĢāǝāĢāĒ āĒāĢ {0} āĒāĢāĒāǍāĢ 10 āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒ**\n\n**đ¤ āĒĻāĢāĒĩāĒžāǰāĒž āĒĩāĒŋāǍāĒāǤāĢ āĒāǰāĒžāǝāĢāǞ:** {1}\nđĸ**āĒāĢāǍāǞ āĒĒāĢāǞāĢ:** {2}\n\nāĒāǍāĒž āĒĻāĢāĒĩāĒžāǰāĒž āĒāĢāĒāǍāĒž 10 āĒāĢāǰāĢ
āĒāĢāǏ āǤāĒĒāĒžāǏāĢ /āĒāĒāĒāĒĄāĒž"
+tracks_2 : "**āĒāĢāǞ**\n\nāĒŦāĢāĒāǍāĒž āǏāǰāĢāĒĩāǰ āĒĒāǰ āĒāĢāĒ **{0} āĒāĢāĒāǍāĢ 10 āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒ** āǍāĒĨāĢ. āĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ āĒāĢāĒāĒĒāĒŖ āĒ
āǍāĢāǝ āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒāǍāĢ āĒĒāĢāǰāǝāĒžāǏ āĒāǰāĢ"
+
+ # TOOLS
+
+ #Lyrics
+lyrics_1 : "**āĒāĒĒāǝāĢāĒ:**\n\n/āĒāĢāǤ [ āǏāĒāĒāĢāǤāǍāĢāĒ āǍāĒžāĒŽ]"
+lyrics_2 : "āĒāĢāǤāĢāǍāĢ āĒļāĢāǧ"
+lyrics_3 : "â āĒāĢāǤāĢ āǞāĒžāĒĩāĒĩāĒžāĒŽāĒžāĒ āǍāĒŋāǎāĢāĒĢāĒŗ đ.\n\nđĄ**āĒāǍāĒž āĒŽāĒžāĒāĢ āĒļāĢāǧāĒĩāĒžāǍāĢ āĒĒāĢāǰāǝāĒžāǏ āĒāǰāĢāǝāĢ:** {0}"
+lyrics_5 :
+lyrics_4 : "āǍāĢāĒāĢāǍāĒž āĒŦāĒāǍ āĒĒāǰ āĒāĢāǞāĒŋāĒ āĒāǰāĢ āĒ
āǍāĢ āǞāĒžāĒāĒŦāĒž āǏāĢāĒĒāĒžāĒŽ āĒĒāĢāǰāĒāĒžāǰāǍāĒž āĒāĢāǤāĢāǍāĢ āĒļāĢāǧāǍāĢ āĒāĒžāĒŗāĒĩāĒž āĒŽāĒžāĒāĢ āĒļāĢāǧāĢāǞ āĒāĢāǤāĢ āĒŽāĢāĒŗāĒĩāĢ."
+
+ #Ping
+ping_1 : "āĒĒāĢāĒāĒ!!!!"
+
+
+ # Song
+song_1 : "āǤāĒŽāĢ YouTube āĒĒāǰāĒĨāĢ āǏāĒāĒāĢāǤ āĒ
āĒĨāĒĩāĒž āĒĩāĒŋāĒĄāĒŋāǝāĢ āĒĢāĒāĢāǤ āĒāĒžāǍāĒāĢ āĒāĢāĒāĒŽāĒžāĒ āĒĄāĒžāĒāǍāǞāĢāĒĄ āĒāǰāĢ āĒļāĒāĢ āĒāĢ. āĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ āĒŽāǍāĢ āĒāĒžāǍāĒāĢ āĒāĢāĒāĒŽāĒžāĒ āĒĒāĢāǰāĒžāǰāĒāĒ āĒāǰāĢ."
+song_2 : "**āĒāĒĒāǝāĢāĒ:**\n\n/āĒāĢāǤ [āǏāĒāĒāĢāǤāǍāĢāĒ āǍāĒžāĒŽ] āĒ
āĒĨāĒĩāĒž [āǝāĢāĒāĢāǝāĢāĒŦ āǞāĒŋāĒāĒ]"
+song_3 : "āǞāĒžāĒāĒĩ āǞāĒŋāĒāĒ āĒŽāĒŗāĢ. āĒšāĢāĒ āǞāĒžāĒāĒĩ āǝāĢāĒāĢāǝāĢāĒŦ āĒĩāĢāĒĄāĒŋāǝāĢ āĒĄāĒžāĒāǍāǞāĢāĒĄ āĒāǰāĢ āĒļāĒāǤāĢ āǍāĒĨāĢ."
+song_4 : "**đāĒļāĢāǰāĢāǎāĒ:**- {0}\n\nāǤāĒŽāĢ āĒĄāĒžāĒāǍāǞāĢāĒĄ āĒāǰāĒĩāĒž āĒŽāĒžāĒāĒāĢ āĒāĢ āǤāĢ āĒĒāĢāǰāĒāĒžāǰ āĒĒāǏāĒāĒĻ āĒāǰāĢ."
+song_5 : "āĒŽāĒžāǍāĢāǝ āǝāĢāĒāĢāǝāĢāĒŦ āǞāĒŋāĒāĒ āǍāĒĨāĢ"
+song_6 : "āĒĢāĢāǰāĢāĒŽāĢāĒāĢāǏ āĒŽāĢāĒŗāĒĩāĢ āǰāĒšāĢāǝāĒžāĒ āĒāĢāĒ.. \n\nāĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ āǰāĒžāĒš āĒāĢāĒ.."
+song_7 : "āĒĩāĒŋāĒĄāĒŋāĒ āĒŽāĒžāĒāĢ āĒāĒĒāǞāĒŦāĢāǧ āĒĢāĢāǰāĢāĒŽāĢāĒ āĒŽāĢāĒŗāĒĩāĒĩāĒžāĒŽāĒžāĒ āǍāĒŋāǎāĢāĒĢāĒŗ. āĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ āĒāĢāĒāĒĒāĒŖ āĒ
āǍāĢāǝ āĒāĢāǰāĢ
āĒāǍāĢ āĒĒāĢāǰāǝāĒžāǏ āĒāǰāĢ."
+song_8 : "āĒĄāĒžāĒāǍāǞāĢāĒĄ āĒļāǰāĢ āĒĨāǝāĢāĒ\n\nāĒĄāĒžāĒāǍāǞāĢāĒĄ āĒāǰāĒĩāĒžāǍāĢ āĒāĒĄāĒĒ āǧāĢāĒŽāĢ āĒšāĢāĒ āĒļāĒāĢ āĒāĢ. āĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ āĒĒāĒāĒĄāĢ āǰāĒžāĒāĢ.."
+song_9 : "Youtube-DL āĒĒāǰāĒĨāĢ āĒāĢāǤ āĒĄāĒžāĒāǍāǞāĢāĒĄ āĒāǰāĒĩāĒžāĒŽāĒžāĒ āǍāĒŋāǎāĢāĒĢāĒŗ\n\n**āĒāĒžāǰāĒŖ:** {0}"
+song_10 : "āǏāǰāĢāĒĩāǰāĒŽāĒžāĒāĒĨāĢ āĒāĢāǞāĒŋāĒāĢāǰāĒžāĒŽ āĒĒāǰ āĒ
āĒĒāǞāĢāĒĄ āĒāǰāĒĩāĒžāĒŽāĒžāĒ āǍāĒŋāǎāĢāĒĢāĒŗ."
+song_11 : "āĒ
āĒĒāǞāĢāĒĄ āĒāǰāĒĩāĒžāǍāĢāĒ āĒļāǰāĢ āĒĨāǝāĢāĒ\n\nāĒ
āĒĒāǞāĢāĒĄ āĒāǰāĒĩāĒžāǍāĢ āĒāĒĄāĒĒ āǧāĢāĒŽāĢ āĒšāĢāĒ āĒļāĒāĢ āĒāĢ. āĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ āĒĒāĒāĒĄāĢ āǰāĒžāĒāĢ.."
+
+ # Tools - Queue
+queue_1 : "āĒāĢāĒĒāĒž āĒāǰāĢāǍāĢ āǰāĒžāĒš āĒāĢāĒ..āĒāǤāĒžāǰ āĒŽāĢāĒŗāĒĩāĢ āǰāĒšāĢāǝāĒžāĒ āĒāĢāĒ.."
+queue_2 : "āĒāǤāĒžāǰāǍāĢ āĒ
āĒāĒĻāǰ āĒāĢāĒ āĒāĢāǰāĢāĒ āǍāĒĨāĢ."
+queue_3 : "**āĒāǤāĒžāǰāĒŦāĒĻāĢāǧ āĒāĢāǰāĢ
āĒāĢāǏ: ** [āĒ
āĒšāĢāĒāĒĨāĢ āĒĩāǧāĢ āĒāǤāĒžāǰāĒŦāĒĻāĢāǧ āĒāĢāǰāĢ
āĒāĢāǏ āǤāĒĒāĒžāǏāĢ]({0})"
+queue_4 : "âŗ **#{0} āĒĒāǰ āĒāǤāĒžāǰāĒŽāĒžāĒ āĒāĒŽāĢāǰāĢāǝāĢāĒ\n\nđĄāĒļāĢāǰāĢāǎāĒ:** {1}\n**âą āĒ
āĒĩāǧāĒŋ:** {2}\nđ¤**āĒāǍāĒž āĒĻāĢāĒĩāĒžāǰāĒž āĒāĒŽāĢāǰāĒžāǝāĢāǞ:** {3 }"
+
+ # All Streaming Lines
+stream_1 : "đĄ **āǏāĢāĒāĢāǰāĢāĒŽāĒŋāĒāĒ āĒļāǰāĢ āĒāǰāĢāǝāĢāĒ** đĄ\n\nđ¤**āĒāǍāĒž āĒĻāĢāĒĩāĒžāǰāĒž āĒĩāĒŋāǍāĒāǤāĢ āĒāǰāĒžāǝāĢāǞ:** {0}\nđĻ**āĒŽāĒžāĒšāĒŋāǤāĢ: **[āĒ
āĒšāĢāĒ]({1})"
+stream_2 : "đĄ **URL āĒĻāĢāĒĩāĒžāǰāĒž āǏāĢāĒāĢāǰāĢāĒŽāĒŋāĒāĒ āĒļāǰāĢ āĒāǰāĢāǝāĢāĒ ** đĄ\n\nđ¤**āĒāǍāĒž āĒĻāĢāĒĩāĒžāǰāĒž āĒĩāĒŋāǍāĒāǤāĢ āĒāǰāĒĩāĒžāĒŽāĒžāĒ āĒāĒĩāĢ:** {0}"
+stream_3 : "đĄ **āǏāĢāĒāĢāǰāĢāĒŽāĒŋāĒāĒ āĒļāǰāĢ āĒāǰāĢāǝāĢāĒ** đĄ\n\n**đˇāĒļāĢāǰāĢāǎāĒ:** {0}\nâī¸**āĒ
āĒĩāǧāĒŋ**: {1}\nđ¤**āĒāǍāĒž āĒĻāĢāĒĩāĒžāǰāĒž āĒĩāĒŋāǍāĒāǤāĢ āĒāǰāĒžāǝāĢāǞ:** {2} "
+stream_4 : "đĄ **āǏāĢāĒāĢāǰāĢāĒŽāĒŋāĒāĒ āĒļāǰāĢ āĒāǰāĢāǝāĢāĒ** đĄ\n\n**đˇāĒļāĢāǰāĢāǎāĒ:** [{0}]({1})\nâī¸**āǏāĒŽāǝ**: {2}\nđ¤**āĒĩāĒŋāǍāĒāǤāĢ āĒĻāĢāĒĩāĒžāǰāĒž:** {3}"
+
+ # Inline Buttons
+
+ #General Buttons
+CLOSE_BUTTON : "đ āĒŦāĒāǧ"
+CLOSEMENU_BUTTON : "đ āĒŽāĢāǍāĢ āĒŦāĒāǧ āĒāǰāĢ"
+BACK_BUTTON : "âŦ
āĒĒāĒžāĒāĒŗ"
+UNBAN_BUTTON : "đ āǏāĒšāĒžāǝāĒāǍāĢ āĒĒāĢāǰāǤāĒŋāĒŦāĒāǧāĒŋāǤ āĒāǰāĢ"
+
+ #Lyrics
+L_B_1 : "đ āĒšāĒĩāĢ āĒāĢāǤāĢ āǤāĒĒāĒžāǏāĢ"
+
+ # Start
+S_B_1 : "đ āĒāĒĻāĢāĒļāĢ"
+S_B_2 : "đ§ āǏāĢāĒāĒŋāĒāĒāĢāǏ"
+S_B_3 : "đ¨ āĒāǧāĒžāǰ"
+S_B_4 : "đ¨ āĒāĢāǍāǞ"
+S_B_5 : "â āĒŽāǍāĢ āǤāĒŽāĒžāǰāĒž āĒāĢāǰāĢāĒĒāĒŽāĒžāĒ āĒāĒŽāĢāǰāĢ"
+S_B_6 : "đĄ āĒāĒŋāĒ āǰāĢāĒĒāĢ"
+S_B_7 : "đ¤ āĒŦāĢāĒ āĒŽāĒžāǞāĒŋāĒ"
+S_B_8 : "đ āĒāĢāĒĩāĢ āǰāĢāǤāĢ āĒĩāĒžāĒĒāǰāĒĩāĢāĒ? āĒāĒĻāĢāĒļāĢ āĒŽāĢāǍāĢ."
+
+ #Help
+H_B_1 : "āĒāĒĄāĒŽāĒŋāǍ āĒāĒŽāĒžāǍāĢāĒĄāĢāǏ"
+H_B_2 : "āĒĒāĢāǞāĢ āĒāĒŽāĒžāǍāĢāĒĄāĢāǏ"
+H_B_3 : "āĒŦāĢāĒ āĒāĒĻāĢāĒļāĢ"
+H_B_4 : "āĒ
āǤāĒŋāǰāĒŋāĒāĢāǤ āĒāĒĻāĢāĒļāĢ"
+H_B_5 : "āĒŽāĢāǍāĢ āĒŦāĒāǧ āĒāǰāĢ"
+H_B_6 : "āǏāĢāĒĄāĢ āǝāĢāĒāǰ āĒāĒŽāĒžāǍāĢāĒĄāĢāǏ"
+
+ #PlayMode
+PM_B_1 : "āĒĄāĒžāǝāǰāĢāĒāĢāĒ āĒĒāĢāǞāĢ"
+PM_B_2 : "āĒāǍāǞāĒžāĒāǍāĒŽāĒžāǰāĢāĒāĒ
āĒĒ"
+PM_B_3 : "āĒāĢāǍāǞāĒĒāĢāǞāĢ"
+
+ #Play
+P_B_1 : "đĩ āĒāĒĄāĒŋāǝāĢ āĒāǞāĒžāĒĩāĢ"
+P_B_2 : "đĨ āĒĩāĒŋāĒĄāĒŋāĒ āĒāǞāĒžāĒĩāĢ"
+P_B_3 : "đŽ āǞāĒžāĒāĒĩ āǏāĢāĒāĢāǰāĢāĒŽ āĒļāǰāĢ āĒāǰāĢ"
+P_B_4 : "đĩ āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒ āĒāǞāĒžāĒĩāĢ"
+
+ #Playlist
+PL_B_1 : "đ āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒ āĒāǞāĒžāĒĩāĢ"
+PL_B_2 : "â āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒāĢāǏ"
+PL_B_3 : "â āĒĩāǧāĒžāǰāĒžāǍāĒž"
+PL_B_4 : "đĄ āĒĒāĢāǞāĢ āĒŽāĢāĒĄ"
+PL_B_5 : "đ āĒĄāĢāǞ āĒāĒāĢ āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒ"
+PL_B_6 : "âī¸ āĒĒāĢāǞāĢāǞāĒŋāǏāĢāĒ āĒāĒžāĒĸāĢ āǍāĒžāĒāĢ"
+PL_B_7 : "âī¸ āĒšāĒž, āĒŽāǍāĢ āĒāĒžāǤāǰāĢ āĒāĢ. āĒāĒžāĒĸāĢ āǍāĒžāĒāĢ"
+PL_B_8 : "đĸ āĒāĢāĒĒ 10 āǰāĒŽāĢ"
+PL_B_9 : "đ¤ āĒĩāĢāĒļāĢāĒĩāĒŋāĒ āĒāĢāĒĒ 10 āĒāĢāǰāĢ
āĒāĢāǏ āǰāĒŽāĢ"
+PL_B_10 : "đ āĒĒāĢāǞāĢ āĒāĢāǰāĢāĒĒāǍāĒž āĒāĢāĒĒ 10 āĒāĢāǰāĢāĒ"
+PL_B_11 : "đ¤ āĒĩāĢāǝāĒāĢāǤāĒŋāĒāǤ āĒāĢāĒĒ 10 āĒāĢāǰāĢ
āĒāĢāǏ āǰāĒŽāĢ"
+
+ #Settings
+ST_B_1 : "đ āĒāĒĄ āĒāĢāĒŖāĒĩāǤāĢāǤāĒž"
+ST_B_2 : "đĨ āĒĩāĒŋāĒĄāĒŋāĒ āĒāĢāĒŖāĒĩāǤāĢāǤāĒž"
+ST_B_3 : "đŠ āĒāĒĨ āĒĩāĒĒāǰāĒžāĒļāĒāǰāĢāǤāĒžāĒ"
+ST_B_4 : "đą āĒĄāĢāĒļāĒŦāĢāǰāĢāĒĄ"
+ST_B_5 : "âļī¸ āĒĒāĢāǞāĢ āĒŽāĢāĒĄ"
+ST_B_6 : "đŗī¸âđ āĒāĒžāǎāĒž"
+ST_B_7 : "đ āĒāĢāǞāĢāǍ āĒŽāĢāĒĄ"
+ST_B_8 : "{0} āĒāĒāĢ āĒāĢāĒŖāĒĩāǤāĢāǤāĒžāǍāĢ āĒāĒĄāĒŋāǝāĢ"
+ST_B_9 : "{0} āĒŽāǧāĢāǝāĒŽ āĒāĢāĒŖāĒĩāǤāĢāǤāĒžāǍāĢ āĒāĒĄāĒŋāǝāĢ"
+ST_B_10 : "{0} āĒāĒāĢāĒ āĒāĢāĒŖāĒĩāǤāĢāǤāĒžāǍāĢ āĒāĒĄāĒŋāǝāĢ"
+ST_B_11 : "{0} āĒāĒāĢ āĒāĢāĒŖāĒĩāǤāĢāǤāĒžāǍāĢ āĒĩāĒŋāĒĄāĒŋāǝāĢ"
+ST_B_12 : "{0} āĒŽāǧāĢāǝāĒŽ āĒāĢāĒŖāĒĩāǤāĢāǤāĒžāǍāĢ āĒĩāĒŋāĒĄāĒŋāĒ"
+ST_B_13 : "{0} āĒāĒāĢāĒ āĒāĢāĒŖāĒĩāǤāĢāǤāĒžāǍāĢ āĒĩāĒŋāĒĄāĒŋāĒ"
+ST_B_14 : "â
āǏāĒāĢāǎāĒŽ"
+ST_B_15 : "â āĒ
āĒāĢāǎāĒŽ"
+ST_B_16 : "đ¤ āĒāĒĄāĒŽāĒŋāǍāĢāǏ"
+ST_B_17 : "đĨ āĒĻāǰāĢāĒ āĒĩāĢāǝāĒāĢāǤāĒŋ"
+ST_B_18 : "đ āĒ
āǧāĒŋāĒāĢāǤ āĒĩāĒĒāǰāĒžāĒļāĒāǰāĢāǤāĒžāĒāǍāĢ āǏāĢāĒāĒŋ"
+ST_B_19 : "đ āĒļāĢāǧ āĒŽāĢāĒĄ"
+ST_B_20 : "â
āĒĄāĒžāǝāǰāĢāĒāĢāĒ"
+ST_B_21 : "â
āĒāǍāǞāĒžāĒāǍ"
+ST_B_22 : "⯠āĒĒāĢāǞāĢ āĒŽāĢāĒĄ"
+ST_B_23 : "đ āĒāĢāĒĨ"
+ST_B_24 : "đˇ āĒāĢāǍāǞ"
+ST_B_25 : "đĢ āǰāĒŽāĒĩāĒžāǍāĢ āĒĒāĢāǰāĒāĒžāǰ"
+ST_B_26 : "đ āĒāĒĻāĢāĒļ āǏāĒžāĒĢ"
+
+ #Song
+SG_B_1 : "âī¸ āĒāĒžāǍāĒāĢ āĒāĢāĒ āĒāĢāǞāĢ"
+SG_B_2 : "đ āĒāĒĄāĒŋāǝāĢ"
+SG_B_3 : "đĨ āĒĩāĒŋāĒĄāĒŋāĒ"
+
+ #Stats
+SA_B_1 : "đĸ āĒāĢāĒĒ 10 āĒāĢāĒ"
+SA_B_2 : "đĸ āĒāĢāĒāǍāĒž 10 āĒāĢāǰāĢāĒ"
+SA_B_3 : "đ§ āĒāĢāĒāǍāĒž 10 āĒĩāĒĒāǰāĒžāĒļāĒāǰāĢāǤāĒžāĒ"
+SA_B_4 : "đˇ āĒāĢāĒāǍāĒž 10 āĒ
āĒšāĢāĒ"
+SA_B_5 : "đĄ āĒāĒāĒāĒĻāǰ āĒāĒāĒāĒĄāĒž"
+SA_B_6 : "đ¤ āĒĩāĒĒāǰāĒžāĒļāĒāǰāĢāǤāĒžāǍāĒž āĒāĒāĒāĒĄāĒž"
+SA_B_7 : "đĸ āĒĩāĢāĒļāĢāĒĩāĒŋāĒ āĒāĢāĒāǍāĒž 10 āĒāĒāĒāĒĄāĒž"
+SA_B_8 : "đ¤ āĒŦāĢāĒ āĒāĒāĒāĒĄāĒž"
\ No newline at end of file
diff --git a/strings/langs/hi.yml b/strings/langs/hi.yml
new file mode 100644
index 0000000000000000000000000000000000000000..ad0410c0e8501064b86e9a5d0f3436951458ae2a
--- /dev/null
+++ b/strings/langs/hi.yml
@@ -0,0 +1,428 @@
+name : đŽđŗ Hindi
+
+# General Strings
+general_1 : "ā¤ā¤ŋ⤏āĨ ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž ā¤āĨ ⤏ā¤ā¤ĻāĨā¤ļ ā¤ā¤ž ā¤ā¤¤āĨ⤤⤰ ā¤ĻāĨā¤ ā¤¯ā¤ž ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž ā¤¨ā¤žā¤Ž/⤝āĨā¤ā¤ŧ⤰_ā¤ā¤ā¤ĄāĨ ā¤ĻāĨā¤āĨ¤"
+general_2 : "ā¤ā¤˛ā¤¤! ā¤ā¤Žā¤žā¤ā¤Ą ā¤ā¤ž ā¤ā¤˛ā¤¤ ā¤ā¤Ē⤝āĨā¤āĨ¤"
+general_3 : "ā¤ā¤Ēā¤ā¤ž ā¤ā¤žā¤¨ā¤ž ā¤ĄāĨā¤ā¤Ąā¤¨āĨ ā¤ŽāĨ⤠ā¤ā¤ ā¤ŋā¤¨ā¤žā¤ ā¤šāĨ ā¤°ā¤šāĨ ā¤šāĨ \n ā¤ā¤ ā¤ŋā¤¨ā¤žā¤:- {0}"
+general_4 : "ā¤ā¤žā¤¨ā¤ž ⤏āĨ⤍⤍āĨ ā¤āĨ ⤞ā¤ŋ⤠ā¤ā¤Ąā¤Žā¤ŋ⤍ ā¤°ā¤žā¤ā¤āĨ⤏ ⤏āĨ send anonymously ā¤Ēā¤°ā¤Žā¤ŋā¤ļ⤍ ā¤šā¤ā¤žā¤āĨ¤"
+general_5 : "ā¤ā¤Ēā¤āĨ ā¤Ēā¤žā¤¸ ā¤Ē⤰āĨā¤¯ā¤žā¤ĒāĨ⤤ ā¤
⤍āĨā¤Žā¤¤ā¤ŋ ā¤¨ā¤šāĨā¤ ā¤šāĨ! ā¤ā¤Ēā¤āĨ ā¤Ēā¤žā¤¸ ā¤ŽāĨ⤍āĨ⤠ā¤ĩā¤žā¤ā¤¸ ā¤āĨā¤āĨ⤏ ā¤
⤍āĨā¤Žā¤¤ā¤ŋ ā¤šāĨā¤¨ā¤ž ā¤
⤍ā¤ŋā¤ĩā¤žā¤°āĨ⤝ ā¤šāĨāĨ¤"
+general_6 : "ā¤ŦāĨ⤠ā¤ĩāĨ⤝⤏ ā¤āĨ⤠ā¤Ē⤰ ā¤ā¤žā¤¨ā¤ž ā¤¨ā¤šāĨ⤠ā¤ā¤˛ā¤ž ā¤°ā¤šā¤ž ā¤šāĨāĨ¤"
+
+# Classes - Telegram.py
+tg_1 : "ā¤ŦāĨ⤠ā¤
ā¤āĨ ā¤Ąā¤žā¤ā¤¨ā¤˛āĨā¤Ą ā¤āĨ ā¤¸ā¤žā¤Ĩ **ā¤ā¤ĩ⤰⤞āĨā¤ĄāĨā¤Ą** ā¤šāĨāĨ¤\n\n**ā¤ā¤¸ā¤āĨ ā¤Ŧā¤žā¤Ļ ā¤ĒāĨā¤°ā¤¯ā¤žā¤¸ ā¤ā¤°āĨā¤:** {0} (__ā¤āĨā¤Ąā¤ŧā¤ā¤° ā¤¸ā¤Žā¤¯__)"
+tg_2 : "ā¤āĨ⤞āĨā¤āĨā¤°ā¤žā¤Ž ⤏āĨ ā¤ŽāĨā¤Ąā¤ŋā¤¯ā¤ž ā¤Ąā¤žā¤ā¤¨ā¤˛āĨā¤Ą ā¤ā¤°ā¤¨āĨ ā¤ŽāĨ⤠ā¤ĩā¤ŋā¤Ģ⤞āĨ¤"
+
+# Core - Call.py
+call_1 : "ā¤ā¤Ēā¤āĨ ā¤āĨ⤍⤞ ā¤Ē⤰ ā¤¸ā¤šā¤žā¤¯ā¤ ā¤ā¤žā¤¤āĨ ā¤āĨ ā¤ā¤Žā¤ā¤¤āĨ⤰ā¤ŋ⤤ ā¤ā¤°ā¤¨āĨ ā¤āĨ ⤞ā¤ŋ⤠ā¤ŦāĨ⤠ā¤āĨ **ā¤ā¤Ąā¤Žā¤ŋ⤍** ā¤
⤍āĨā¤Žā¤¤ā¤ŋ ā¤āĨ ā¤ā¤ĩā¤ļāĨ⤝ā¤ā¤¤ā¤ž ā¤šāĨāĨ¤\n\nā¤āĨ⤍⤞ ā¤ĒāĨ⤞āĨā¤ŽāĨā¤Ą ā¤āĨ ā¤ā¤¸ā¤āĨ ā¤Žā¤žā¤§āĨā¤¯ā¤Ž ⤏āĨ ā¤
ā¤āĨā¤ˇā¤Ž ā¤ā¤°āĨā¤: /ā¤ĒāĨ⤞āĨā¤ŽāĨā¤Ą"
+call_2 : "ā¤ā¤Ēā¤āĨ ā¤¸ā¤ŽāĨā¤š ā¤¯ā¤ž ā¤āĨ⤍⤞ ā¤ŽāĨā¤ ā¤¸ā¤šā¤žā¤¯ā¤ ā¤ĒāĨ⤰⤤ā¤ŋā¤Ŧā¤ā¤§ā¤ŋ⤤ ā¤šāĨ, ā¤āĨā¤Ēā¤¯ā¤ž ā¤ĒāĨ⤰⤤ā¤ŋā¤Ŧā¤ā¤§ ā¤šā¤ā¤ž ā¤ĻāĨā¤āĨ¤\n\n**ā¤¸ā¤šā¤žā¤¯ā¤ ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž ā¤¨ā¤žā¤Ž:** @{0}\n**ā¤¸ā¤šā¤žā¤¯ā¤ ā¤ā¤ā¤ĄāĨ:** {1}"
+call_3 : "ā¤ā¤Ēā¤āĨ ā¤āĨā¤ ā¤ŽāĨā¤ ā¤¸ā¤šā¤žā¤¯ā¤ ā¤ā¤žā¤¤āĨ ā¤āĨ ⤍āĨ⤝āĨā¤¤ā¤ž ā¤ĻāĨ⤤āĨ ā¤¸ā¤Žā¤¯ ā¤
ā¤Ēā¤ĩā¤žā¤Ļ ā¤šāĨā¤āĨ¤\n\n**ā¤ā¤žā¤°ā¤Ŗ**:{0}"
+call_4 : "ā¤ŦāĨ⤠ā¤āĨ **⤞ā¤ŋā¤ā¤ ā¤āĨ ā¤Žā¤žā¤§āĨā¤¯ā¤Ž ⤏āĨ ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤žā¤ā¤ ā¤āĨ ā¤ā¤Žā¤ā¤¤āĨ⤰ā¤ŋ⤤ ā¤ā¤°āĨā¤** ā¤ā¤Ēā¤āĨ ā¤āĨā¤ ā¤¸ā¤ŽāĨā¤š ā¤ŽāĨā¤ ā¤¸ā¤šā¤žā¤¯ā¤ ā¤ā¤žā¤¤āĨ ā¤āĨ ā¤ā¤Žā¤ā¤¤āĨ⤰ā¤ŋ⤤ ā¤ā¤°ā¤¨āĨ ā¤āĨ ā¤
⤍āĨā¤Žā¤¤ā¤ŋ ā¤āĨ ā¤ā¤ĩā¤ļāĨ⤝ā¤ā¤¤ā¤ž ā¤šāĨāĨ¤"
+call_5 : "ā¤¸ā¤šā¤žā¤¯ā¤ 5 ⤏āĨā¤ā¤ā¤Ą ā¤ŽāĨ⤠ā¤ā¤Ēā¤āĨ ā¤āĨ⤰āĨā¤Ē ā¤ŽāĨ⤠ā¤ļā¤žā¤Žā¤ŋ⤞ ā¤šāĨ ā¤ā¤žā¤ā¤ā¤ž..ā¤āĨā¤Ēā¤¯ā¤ž ā¤ĒāĨ⤰⤤āĨā¤āĨā¤ˇā¤ž ā¤ā¤°āĨā¤!"
+call_6 : "ā¤¸ā¤šā¤žā¤¯ā¤ ā¤ā¤žā¤¤ā¤ž[{0}] ⤏ā¤Ģā¤˛ā¤¤ā¤žā¤ĒāĨ⤰āĨā¤ĩ⤠ā¤ļā¤žā¤Žā¤ŋ⤞ ā¤šāĨ ā¤ā¤.\n\nā¤
ā¤āĨ ⤏ā¤ā¤āĨ⤤ ā¤ĒāĨā¤°ā¤žā¤°ā¤ā¤ ā¤ā¤° ā¤°ā¤šāĨ ā¤šāĨā¤"
+call_7 : "**ā¤šā¤žā¤¨ā¤ŋā¤ā¤žā¤°ā¤ ā¤ĩāĨ⤝ā¤ĩ⤏āĨā¤Ĩā¤žā¤Ē⤠ā¤
⤧ā¤ŋā¤ā¤žā¤° ā¤Ļā¤ŋā¤¯ā¤ž ā¤ā¤¯ā¤ž **\n\nā¤āĨā¤Ēā¤¯ā¤ž ā¤ŦāĨ⤠⤏āĨ **ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤žā¤ā¤ ā¤āĨ ā¤ĒāĨ⤰⤤ā¤ŋā¤Ŧā¤ā¤§ā¤ŋ⤤ ā¤ā¤°āĨā¤** ā¤
⤧ā¤ŋā¤ā¤žā¤° ā¤šā¤ā¤ž ā¤ĻāĨā¤āĨ¤"
+call_8 : "**ā¤šā¤žā¤¨ā¤ŋā¤ā¤žā¤°ā¤ ā¤ĩāĨ⤝ā¤ĩ⤏āĨā¤Ĩā¤žā¤Ē⤠ā¤
⤧ā¤ŋā¤ā¤žā¤° ā¤Ļā¤ŋā¤¯ā¤ž ā¤ā¤¯ā¤ž **\n\nā¤āĨā¤Ēā¤¯ā¤ž ā¤ŦāĨ⤠⤏āĨ **⤍⤠ā¤ĩāĨ⤝ā¤ĩ⤏āĨā¤Ĩā¤žā¤Ē⤠ā¤āĨā¤Ąā¤ŧāĨā¤** ā¤
⤧ā¤ŋā¤ā¤žā¤° ā¤šā¤ā¤ž ā¤ĻāĨā¤āĨ¤"
+call_9 : "**⤏āĨā¤āĨ⤰āĨā¤Ž ⤏āĨā¤ĩā¤ŋ⤠ā¤ā¤°ā¤¨āĨ ā¤ŽāĨ⤠ā¤ĩā¤ŋā¤Ģ⤞**\nā¤āĨā¤Ēā¤¯ā¤ž ā¤āĨ⤰āĨ⤠ā¤āĨ ā¤Ģā¤ŋ⤰ ⤏āĨ ā¤Ŧā¤Ļ⤞⤍āĨ ā¤āĨ ⤞ā¤ŋ⤠ā¤ā¤Ē⤝āĨ⤠ā¤ā¤°āĨ⤠/ ā¤āĨā¤Ąā¤ŧāĨā¤āĨ¤"
+call_10 : "ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨ⤠⤏āĨ ā¤
ā¤ā¤˛ā¤ž ā¤āĨ⤰āĨā¤ ā¤Ąā¤žā¤ā¤¨ā¤˛āĨā¤Ą ā¤ā¤°ā¤¨ā¤ž"
+call_11 : "ā¤āĨā¤Ēā¤¯ā¤ž ā¤
ā¤Ē⤍āĨ ā¤āĨ⤍⤞ ā¤ŽāĨ⤠@{0} ā¤āĨā¤Ąā¤ŧāĨā¤[ ā¤ā¤ā¤ĄāĨ: {1}].\n\nBot ā¤āĨ⤍⤞ ā¤ĩā¤ŋā¤ĩ⤰⤪ ā¤ĒāĨā¤°ā¤žā¤ĒāĨ⤤ ā¤ā¤°ā¤¨āĨ ā¤ŽāĨ⤠⤏ā¤āĨā¤ˇā¤Ž ā¤¨ā¤šāĨā¤ ā¤šāĨāĨ¤"
+
+# PLUGINS - Auth.py
+auth_1 : "ā¤ā¤Ēā¤āĨ ā¤¸ā¤ŽāĨā¤š ā¤āĨ ā¤
⤧ā¤ŋā¤āĨ⤤ ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž ⤏āĨā¤āĨ (AUL) ā¤ŽāĨ⤠ā¤āĨā¤ĩ⤞ 20 ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž ā¤šāĨ ⤏ā¤ā¤¤āĨ ā¤šāĨā¤|"
+auth_2 : "ā¤ā¤Ĩā¤°ā¤žā¤ā¤āĨā¤Ą ⤝āĨā¤ā¤° ā¤ŽāĨ⤠ā¤ļā¤žā¤Žā¤ŋ⤞ ā¤ā¤° ⤞ā¤ŋā¤¯ā¤ž ā¤ā¤¯ā¤ž ā¤šāĨāĨ¤"
+auth_3 : "ā¤Ēā¤šā¤˛āĨ ⤏āĨ ā¤šāĨ ā¤
⤧ā¤ŋā¤āĨ⤤ ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž ⤏āĨā¤āĨ ā¤ŽāĨā¤ ā¤šāĨāĨ¤"
+auth_4 : "ā¤ā¤¸ ā¤¸ā¤ŽāĨā¤š ā¤āĨ ā¤
⤧ā¤ŋā¤āĨ⤤ ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž ⤏āĨā¤āĨ ⤏āĨ ā¤šā¤ā¤žā¤¯ā¤ž ā¤ā¤¯ā¤žāĨ¤"
+auth_5 : "ā¤
⤧ā¤ŋā¤āĨ⤤ ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž ā¤¨ā¤šāĨā¤ ā¤šāĨāĨ¤"
+auth_6 : "ā¤
⤧ā¤ŋā¤āĨ⤤ ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤žā¤ā¤ ā¤āĨ ā¤˛ā¤žā¤¯ā¤ž ā¤ā¤ž ā¤°ā¤šā¤ž ā¤šāĨ... ā¤āĨā¤Ēā¤¯ā¤ž ā¤ĒāĨ⤰⤤āĨā¤āĨā¤ˇā¤ž ā¤ā¤°āĨā¤"
+auth_7 : "**ā¤
⤧ā¤ŋā¤āĨ⤤ ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž ⤏āĨā¤āĨ[AUL]:**\n\n"
+auth_8 : "â ā¤ĻāĨā¤ĩā¤žā¤°ā¤ž ā¤āĨā¤Ąā¤ŧā¤ž ā¤ā¤¯ā¤ž: -"
+
+# PLUGINS - Admins
+admin_1 : "⤏ā¤ā¤āĨ⤤ ā¤Ēā¤šā¤˛āĨ ⤏āĨ ā¤šāĨ ⤰āĨā¤ā¤ž ā¤šāĨā¤ ā¤šāĨāĨ¤"
+admin_2 : "ā¤ĩāĨ⤝⤏ā¤āĨ⤠{} ā¤ĻāĨā¤ĩā¤žā¤°ā¤ž ⤰āĨā¤ā¤ž ā¤ā¤¯ā¤ž!"
+admin_3 : "⤏ā¤ā¤āĨ⤤ ā¤Ēā¤šā¤˛āĨ ā¤šāĨ ā¤Ģā¤ŋ⤰ ⤏āĨ ā¤ļāĨ⤰āĨ ā¤šāĨ ā¤ā¤¯ā¤ž ā¤šāĨāĨ¤"
+admin_4 : "ā¤ĩāĨ⤝⤏ā¤āĨ⤠{} ā¤ĻāĨā¤ĩā¤žā¤°ā¤ž ā¤Ģā¤ŋ⤰ ⤏āĨ ā¤ļāĨ⤰āĨ ā¤ā¤ŋā¤¯ā¤ž ā¤ā¤¯ā¤ž!"
+admin_5 : "⤏ā¤ā¤āĨ⤤ ā¤Ēā¤šā¤˛āĨ ⤏āĨ ā¤šāĨ ⤰āĨā¤ā¤ž ā¤šāĨā¤ ā¤šāĨāĨ¤"
+admin_6 : "ā¤ĩāĨ⤝⤏ā¤āĨ⤠{} ā¤ĻāĨā¤ĩā¤žā¤°ā¤ž ā¤Ŧā¤ā¤Ļ ā¤ā¤ŋā¤¯ā¤ž ā¤ā¤¯ā¤ž!"
+admin_7 : "⤏ā¤ā¤āĨ⤤ ā¤Ēā¤šā¤˛āĨ ⤏āĨ ā¤
ā¤¨ā¤ŽāĨ⤝āĨā¤ ā¤šāĨ|"
+admin_8 : "ā¤ĩāĨ⤝⤏ā¤āĨ⤠{} ā¤ĻāĨā¤ĩā¤žā¤°ā¤ž ā¤
ā¤¨ā¤ŽāĨ⤝āĨā¤!"
+admin_9 : " ā¤ĩāĨ⤝⤏ā¤āĨ⤠{} ā¤ĻāĨā¤ĩā¤žā¤°ā¤ž ā¤¸ā¤Žā¤žā¤ĒāĨ⤤/ā¤Ŧā¤ā¤Ļ!"
+admin_10 : "đ§ ā¤ĩāĨ⤝⤏ā¤āĨ⤠{} ā¤ĻāĨā¤ĩā¤žā¤°ā¤ž ā¤āĨā¤Ąā¤ŧā¤ž ā¤ā¤¯ā¤ž!. ā¤ā¤¤ā¤žā¤° ā¤ŽāĨ⤠ā¤āĨ⤠ā¤ā¤° ⤏ā¤ā¤āĨ⤤ ā¤¨ā¤šāĨā¤āĨ¤"
+admin_11 : "⤏āĨā¤āĨ⤰āĨā¤Ž ā¤āĨ **{0}**\n\n ā¤ŽāĨ⤠ā¤Ŧā¤Ļ⤞⤍āĨ ā¤āĨ ā¤ĻāĨā¤°ā¤žā¤¨ ⤤āĨ⤰āĨā¤ā¤ŋ ā¤šāĨā¤, ā¤āĨā¤Ēā¤¯ā¤ž ā¤Ģā¤ŋ⤰ ⤏āĨ ā¤ā¤Ē⤝āĨ⤠ā¤ā¤°āĨ⤠/ ā¤āĨā¤Ąā¤ŧāĨā¤āĨ¤"
+admin_12 : "⤏ā¤āĨā¤ˇā¤Ž ⤞āĨā¤Ē ā¤ĒāĨ⤞āĨ ā¤āĨ ā¤ā¤žā¤°ā¤Ŗ ā¤ā¤ŋ⤏āĨ ā¤ĩā¤ŋā¤ļā¤ŋ⤎āĨ⤠ā¤āĨ⤰āĨ⤠ā¤Ē⤰ ā¤ā¤žā¤¨āĨ ā¤ŽāĨ⤠ā¤
ā¤¸ā¤Žā¤°āĨā¤ĨāĨ¤ ā¤āĨā¤Ēā¤¯ā¤ž ā¤ā¤¸ ⤏āĨā¤ĩā¤ŋā¤§ā¤ž ā¤ā¤ž ā¤ā¤Ē⤝āĨ⤠ā¤ā¤°ā¤¨āĨ ā¤āĨ ⤞ā¤ŋ⤠'/ ⤞āĨā¤Ē ā¤
ā¤āĨā¤ˇā¤Ž' ā¤āĨ ā¤Žā¤žā¤§āĨā¤¯ā¤Ž ⤏āĨ ⤞āĨā¤Ē ā¤ĒāĨ⤞āĨ ā¤
ā¤āĨā¤ˇā¤Ž ā¤ā¤°āĨā¤āĨ¤"
+admin_13 : "ā¤āĨā¤Ēā¤¯ā¤ž ā¤ĩā¤ŋā¤ļā¤ŋ⤎āĨ⤠ā¤āĨ⤰āĨ⤠ā¤āĨ ⤞ā¤ŋ⤠⤏ā¤ā¤āĨā¤¯ā¤žā¤¤āĨā¤Žā¤ ā¤¸ā¤ā¤āĨā¤¯ā¤žā¤ā¤ ā¤ā¤ž ā¤ā¤Ē⤝āĨ⤠ā¤ā¤°āĨā¤, ā¤āĨ⤏āĨ 1, 2 ā¤¯ā¤ž 4 ā¤ā¤Ļā¤ŋ"
+admin_14 : "ā¤ā¤ ā¤ĩā¤ŋā¤ļā¤ŋ⤎āĨ⤠⤏ā¤ā¤āĨā¤¯ā¤ž ā¤Ē⤰ ā¤ā¤žā¤¨āĨ ā¤āĨ ⤞ā¤ŋ⤠ā¤ā¤¤ā¤žā¤° ā¤ŽāĨ⤠ā¤ā¤Ž ⤏āĨ ā¤ā¤Ž 2 ā¤āĨ⤰āĨ⤠ā¤āĨ ā¤ā¤ĩā¤ļāĨ⤝ā¤ā¤¤ā¤ž ā¤šāĨāĨ¤ ā¤ā¤¤ā¤žā¤° ā¤āĨ ā¤ā¤žā¤ā¤ / ā¤ā¤¤ā¤žā¤° ā¤ĻāĨā¤ĩā¤žā¤°ā¤ž ā¤ā¤°āĨā¤"
+admin_15 : "ā¤ā¤Ēā¤āĨ ā¤ĻāĨā¤ĩā¤žā¤°ā¤ž ā¤Ļā¤ŋ⤠ā¤ā¤ ā¤Žā¤žā¤¨ ā¤āĨ ⤞ā¤ŋ⤠ā¤ā¤¤ā¤žā¤° ā¤ŽāĨ⤠ā¤Ē⤰āĨā¤¯ā¤žā¤ĒāĨ⤤ ā¤āĨ⤰āĨā¤ ā¤¨ā¤šāĨā¤ ā¤šāĨā¤āĨ¤ ā¤āĨā¤Ēā¤¯ā¤ž 1 ā¤ā¤° {0} ā¤āĨ ā¤ŦāĨ⤠ā¤āĨ ⤏ā¤ā¤āĨā¤¯ā¤žā¤ā¤ ā¤āĨ⤍āĨā¤"
+admin_16 : "ā¤ĩā¤ŋā¤ļā¤ŋ⤎āĨ⤠ā¤āĨ⤰āĨ⤠ā¤Ē⤰ ā¤ā¤žā¤¨āĨ ā¤ŽāĨ⤠ā¤ĩā¤ŋā¤Ģ⤞.\n\nā¤Ŧā¤žā¤ā¤ ā¤ā¤¤ā¤žā¤° ā¤āĨ /queue . ā¤ĻāĨā¤ĩā¤žā¤°ā¤ž ā¤ā¤žā¤ā¤āĨā¤"
+admin_17 : "{0}.. ā¤āĨā¤Ēā¤¯ā¤ž ā¤ĒāĨ⤰⤤āĨā¤āĨā¤ˇā¤ž ā¤ā¤°āĨā¤"
+admin_18 : "ā¤ĩāĨ⤝ā¤ĩ⤏āĨā¤Ĩā¤žā¤Ē⤠⤏āĨā¤āĨ ā¤¨ā¤šāĨā¤ ā¤Žā¤ŋ⤞āĨ\n\nā¤āĨā¤Ēā¤¯ā¤ž ā¤ĩāĨ⤝ā¤ĩ⤏āĨā¤Ĩā¤žā¤Ē⤠⤏āĨā¤āĨ ā¤āĨ /admincache ā¤¯ā¤ž /reload ā¤āĨ ā¤Žā¤žā¤§āĨā¤¯ā¤Ž ⤏āĨ ā¤ĒāĨ⤍⤠⤞āĨā¤Ą ā¤ā¤°āĨā¤"
+admin_19 : "ā¤ā¤¸āĨ ⤍ā¤ŋ⤎āĨā¤Ēā¤žā¤Ļā¤ŋ⤤ ā¤ā¤°ā¤¨āĨ ā¤āĨ ⤞ā¤ŋ⤠ā¤ā¤Ēā¤āĨ ā¤ĩāĨ⤝⤏ ā¤āĨ⤠ā¤
⤧ā¤ŋā¤ā¤žā¤°āĨ⤠ā¤āĨ ā¤ĒāĨ⤰ā¤Ŧā¤ā¤§ā¤¨ ā¤āĨ ā¤¸ā¤žā¤Ĩ ā¤ĩāĨ⤝ā¤ĩ⤏āĨā¤Ĩā¤žā¤Ēā¤ ā¤šāĨ⤍āĨ ā¤āĨ ā¤ā¤ĩā¤ļāĨ⤝ā¤ā¤¤ā¤ž ā¤šāĨāĨ¤\n⤝ā¤Ļā¤ŋ ā¤ā¤Ē ā¤Ēā¤šā¤˛āĨ ⤏āĨ ā¤šāĨ ā¤ĩāĨ⤝ā¤ĩ⤏āĨā¤Ĩā¤žā¤Ēā¤ ā¤šāĨā¤, ⤤āĨ /admincache ā¤āĨ ā¤Žā¤žā¤§āĨā¤¯ā¤Ž ⤏āĨ admincache ā¤ĒāĨ⤍⤠⤞āĨā¤Ą ā¤ā¤°āĨā¤"
+admin_20 : "ā¤ĩāĨ⤝ā¤ĩ⤏āĨā¤Ĩā¤žā¤Ē⤠ā¤āĨā¤ļ ⤏ā¤Ģā¤˛ā¤¤ā¤žā¤ĒāĨ⤰āĨā¤ĩ⤠ā¤ĒāĨ⤍⤠⤞āĨā¤Ą ā¤ā¤ŋā¤¯ā¤ž ā¤ā¤¯ā¤žāĨ¤"
+admin_21 : "ā¤ā¤¤ā¤žā¤° ā¤ŽāĨ⤠ā¤ĢāĨ⤰ā¤Ŧā¤Ļ⤞ ā¤ā¤°ā¤¨āĨ ā¤āĨ ⤞ā¤ŋ⤠ā¤āĨ⤠ā¤āĨ ā¤¨ā¤šāĨā¤"
+admin_22 : "ā¤ļā¤Ģā¤ŧ⤞ ā¤ā¤°ā¤¨āĨ ā¤ŽāĨ⤠ā¤ĩā¤ŋā¤Ģ⤞.\n\nā¤ā¤¤ā¤žā¤° ā¤ā¤žā¤ā¤āĨ⤠: /queue"
+admin_23 : "**ā¤ā¤¤ā¤žā¤° ā¤ļā¤Ģā¤ŧ⤞ ā¤āĨ ā¤ā¤ {0}**\n\nā¤ļā¤Ģā¤ŧ⤞ ā¤āĨ ā¤ā¤ ā¤ā¤¤ā¤žā¤° ā¤ā¤žā¤ā¤āĨ⤠: /queue"
+admin_24 : "**ā¤ā¤Ē⤝āĨā¤:**\n/⤞āĨā¤Ē [⤏ā¤āĨā¤ˇā¤Ž/ā¤
ā¤āĨā¤ˇā¤Ž] ā¤¯ā¤ž [1-10 ā¤āĨ ā¤ŦāĨ⤠ā¤āĨ ⤏ā¤ā¤āĨā¤¯ā¤ž]\n\n**ā¤ā¤Ļā¤žā¤šā¤°ā¤Ŗ:** /⤞āĨā¤Ē 5"
+admin_25 : "⤞āĨā¤Ē ā¤āĨ {0} ā¤ĻāĨā¤ĩā¤žā¤°ā¤ž **{1}** ā¤Ŧā¤žā¤° ā¤āĨ ⤞ā¤ŋ⤠⤏ā¤āĨā¤ˇā¤Ž ā¤ā¤ŋā¤¯ā¤ž ā¤ā¤¯ā¤ž ā¤šāĨāĨ¤ ā¤ŦāĨ⤠ā¤
ā¤Ŧ ā¤ĩāĨ⤝⤏ ā¤āĨ⤠ā¤Ē⤰ ā¤ā¤˛ ā¤°ā¤šāĨ ā¤ĩ⤰āĨā¤¤ā¤Žā¤žā¤¨ ⤏ā¤ā¤āĨ⤤ ā¤āĨ **{1}** ā¤Ŧā¤žā¤° . ā¤ĻāĨā¤šā¤°ā¤žā¤ā¤ā¤ž"
+admin_26 : "ā¤āĨā¤Ēā¤¯ā¤ž ⤞āĨā¤Ē ā¤ĒāĨ⤞āĨ ā¤āĨ ⤞ā¤ŋ⤠1-10 ā¤āĨ ā¤ŦāĨ⤠ā¤āĨ ⤏ā¤ā¤āĨā¤¯ā¤žā¤ā¤ ā¤ā¤ž ā¤ā¤Ē⤝āĨ⤠ā¤ā¤°āĨā¤"
+admin_27 : "⤞āĨā¤Ē ā¤ĒāĨ⤞āĨ ā¤
ā¤āĨā¤ˇā¤Ž ā¤ā¤° ā¤Ļā¤ŋā¤¯ā¤ž ā¤ā¤¯ā¤ž ā¤šāĨ"
+
+# Bot
+# Start
+start_1 : "ā¤ŽāĨā¤āĨ {0} ā¤ŽāĨ⤠ā¤ļā¤žā¤Žā¤ŋ⤞ ā¤ā¤°ā¤¨āĨ ā¤āĨ ⤞ā¤ŋ⤠⤧⤍āĨ⤝ā¤ĩā¤žā¤ĻāĨ¤\n{1} ā¤ā¤˛ ā¤°ā¤šā¤ž ā¤šāĨāĨ¤\n\nā¤ā¤ŋ⤏āĨ ā¤āĨ ā¤¸ā¤šā¤žā¤¯ā¤¤ā¤ž ā¤āĨ ⤞ā¤ŋā¤, ā¤šā¤Žā¤žā¤°āĨ ā¤¸ā¤šā¤žā¤¯ā¤¤ā¤ž ā¤¸ā¤ŽāĨā¤š ā¤¯ā¤ž ā¤āĨ⤍⤞ ā¤āĨ ā¤āĨā¤ā¤¨ ā¤ā¤°āĨā¤āĨ¤"
+start_2 : "ā¤¨ā¤Žā¤¸āĨā¤ā¤žā¤°, ā¤ŽāĨā¤°ā¤ž ā¤¨ā¤žā¤Ž {0} ā¤šāĨāĨ¤\n\nā¤ŽāĨ⤠ā¤āĨ⤠ā¤ā¤Ē⤝āĨā¤āĨ ⤏āĨā¤ĩā¤ŋā¤§ā¤žā¤ā¤ ā¤āĨ ā¤¸ā¤žā¤Ĩ ā¤ā¤ ā¤āĨ⤞āĨā¤āĨā¤°ā¤žā¤Ž ⤏āĨā¤āĨ⤰āĨā¤Žā¤ŋā¤ā¤ ā¤ŦāĨā¤ ā¤šāĨā¤āĨ¤ Youtube, Spotify, Resso, AppleMusic , Soundcloud ā¤ā¤Ļā¤ŋ ā¤āĨ⤏āĨ ā¤¸ā¤šā¤žā¤¯ā¤ ā¤ĒāĨ⤞āĨā¤ā¤ĢāĨ⤰āĨā¤ŽāĨ¤\n\nā¤ŽāĨā¤āĨ ā¤
ā¤Ē⤍āĨ ā¤¸ā¤ŽāĨā¤šāĨā¤ ā¤ŽāĨ⤠ā¤āĨā¤Ąā¤ŧ⤍āĨ ā¤āĨ ⤞ā¤ŋ⤠⤏āĨā¤ĩ⤤ā¤ā¤¤āĨ⤰ ā¤Žā¤šā¤¸āĨ⤏ ā¤ā¤°āĨā¤āĨ¤"
+start_3 : "ā¤ā¤Ēā¤ā¤ž ⤏āĨā¤ĩā¤žā¤ā¤¤ ā¤šāĨ {0}\n\n ā¤ŽāĨā¤āĨ ā¤ā¤ŋ⤏āĨ ā¤āĨ ā¤ā¤Ąā¤Žā¤ŋ⤍ ā¤
⤍āĨā¤Žā¤¤ā¤ŋ ā¤āĨ ā¤ā¤°āĨ⤰⤤ ā¤¨ā¤šāĨā¤ ā¤šāĨāĨ¤ (ā¤ā¤Ŧ ā¤¤ā¤ ā¤Žā¤žā¤ā¤ā¤ž ā¤¨ā¤ž ā¤ā¤žā¤)āĨ¤\n\nā¤¸ā¤šā¤žā¤¯ā¤ ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž ā¤ā¤ž ā¤¨ā¤žā¤Ž:- @{1}\nā¤¸ā¤šā¤žā¤¯ā¤ ā¤ā¤ā¤ĄāĨ:- {2}"
+start_4 : "{0} ā¤ā¤ž ā¤Žā¤žā¤˛ā¤ŋā¤[{1}] ā¤
ā¤āĨ-ā¤
ā¤āĨ ā¤ā¤Ēā¤āĨ ā¤āĨā¤ ā¤ŽāĨ⤠ā¤ļā¤žā¤Žā¤ŋ⤞ ā¤šāĨā¤ ā¤šāĨāĨ¤"
+start_5 : "{0} ā¤āĨ ā¤ā¤žā¤¸ ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž[{1}] ā¤ā¤ž ā¤ā¤ ⤏ā¤Ļ⤏āĨ⤝ ā¤
ā¤āĨ-ā¤
ā¤āĨ ā¤ā¤Ēā¤āĨ ā¤āĨā¤ ā¤ŽāĨ⤠ā¤ļā¤žā¤Žā¤ŋ⤞ ā¤šāĨā¤ ā¤šāĨāĨ¤"
+start_6 : "âī¸ **⤏āĨā¤Ē⤰ā¤āĨ⤰āĨā¤Ē ā¤āĨ ā¤ā¤ĩā¤ļāĨ⤝ā¤ā¤¤ā¤ž** âī¸\n\nā¤āĨā¤Ēā¤¯ā¤ž ā¤
ā¤Ē⤍āĨ **ā¤āĨ⤰āĨā¤Ē** ā¤āĨ **⤏āĨā¤Ē⤰ā¤āĨ⤰āĨā¤Ē** ā¤ŽāĨ⤠ā¤Ŧā¤Ļ⤞āĨ⤠ā¤ā¤° ā¤Ģā¤ŋ⤰ ā¤ŽāĨā¤āĨ ā¤ĩā¤žā¤Ē⤏ ā¤āĨā¤Ąā¤ŧāĨā¤āĨ¤\n\n**⤏āĨā¤Ē⤰ā¤āĨ⤰āĨā¤Ē ā¤āĨ⤏āĨ ā¤Ŧā¤¨ā¤žā¤ā¤?**\nâ
ā¤
ā¤Ē⤍āĨ ā¤āĨ⤰āĨā¤Ē ā¤āĨ ā¤Ŧā¤¨ā¤žā¤ā¤ ā¤āĨ⤠ā¤ā¤¤ā¤ŋā¤šā¤žā¤¸ **ā¤ĻāĨā¤ļāĨā¤¯ā¤Žā¤žā¤¨** ā¤ā¤ ā¤Ŧā¤žā¤°āĨ¤"
+start_7 : "**Blacklisted Chat**\n\nYou're chat has been blacklisted by the Bot. Please ask any SudoUser to whitelist chat first. Check [Sudolist from here]({0})"
+
+
+# Help
+help_1 : "ā¤
⤧ā¤ŋ⤠ā¤ā¤žā¤¨ā¤ā¤žā¤°āĨ ā¤āĨ ⤞ā¤ŋ⤠⤍āĨā¤āĨ ā¤Ļā¤ŋ⤠ā¤ā¤ ā¤Ŧā¤ā¤¨āĨ⤠ā¤Ē⤰ ā¤āĨ⤞ā¤ŋ⤠ā¤ā¤°āĨā¤āĨ¤\n\n⤏ā¤āĨ ā¤ā¤Žā¤žā¤ā¤Ą ā¤āĨ ā¤¸ā¤žā¤Ĩ ā¤ā¤Ē⤝āĨ⤠ā¤ā¤ŋā¤¯ā¤ž ā¤ā¤ž ⤏ā¤ā¤¤ā¤ž ā¤šāĨ: /"
+help_2 : "ā¤Žā¤Ļā¤Ļ ā¤āĨ ⤞ā¤ŋā¤ ā¤ŽāĨā¤ā¤¸āĨ PM ā¤ŽāĨ⤠⤏ā¤ā¤Ē⤰āĨ⤠ā¤ā¤°āĨā¤āĨ¤"
+
+# Settings
+setting_1 : "âī¸ **⤏ā¤ā¤āĨ⤤ ā¤ŦāĨ⤠⤏āĨā¤ā¤ŋā¤ā¤**\n\nđ**ā¤¸ā¤ŽāĨā¤š:** {0}\nđ**ā¤¸ā¤ŽāĨā¤š ā¤ā¤ā¤ĄāĨ:** `{1}`\n\nđĄ**⤍āĨā¤āĨ ⤏āĨ ā¤Ģā¤ŧā¤ā¤āĨā¤ļ⤍ ā¤Ŧā¤ā¤¨ ā¤āĨ⤍āĨ⤠ā¤ā¤ŋ⤏āĨ ā¤ā¤Ē ⤏ā¤ā¤Ēā¤žā¤Ļā¤ŋ⤤ ā¤¯ā¤ž ā¤Ŧā¤Ļā¤˛ā¤¨ā¤ž ā¤ā¤žā¤šā¤¤āĨ ā¤šāĨā¤āĨ¤**"
+setting_3 : "ā¤¯ā¤š ā¤āĨā¤¯ā¤ž ā¤šāĨ?\n\n1) ā¤ĒāĨ⤰⤤āĨ⤝ā¤āĨ⤎: ⤏āĨ⤧āĨ ā¤āĨ⤠ā¤āĨā¤ĩāĨ⤰āĨ ā¤ā¤˛ā¤žā¤¤ā¤ž ā¤šāĨāĨ¤ ⤏āĨ⤧āĨ ā¤ŽāĨā¤Ą ā¤ŽāĨ⤠ā¤ĩāĨā¤Ąā¤ŋ⤝āĨ ā¤ā¤˛ā¤žā¤¨āĨ ā¤āĨ ⤞ā¤ŋ⤠-v ā¤ā¤ž ā¤ā¤Ē⤝āĨ⤠ā¤ā¤°āĨā¤āĨ¤\n\n2) ā¤ā¤¨ā¤˛ā¤žā¤ā¤¨: ā¤ĩāĨā¤Ąā¤ŋ⤝āĨ ā¤ā¤° ā¤ā¤Ąā¤ŋ⤝āĨ ā¤āĨ ā¤ŦāĨ⤠ā¤ā¤¯ā¤¨ ā¤ā¤°ā¤¨āĨ ā¤āĨ ⤞ā¤ŋ⤠ā¤ā¤¨ā¤˛ā¤žā¤ā¤¨ ā¤Žā¤žā¤°āĨā¤ā¤
ā¤Ē ā¤Ŧā¤ā¤¨ ā¤ĻāĨā¤¤ā¤ž ā¤šāĨāĨ¤"
+setting_4 : "âī¸ ā¤¯ā¤š ā¤āĨā¤¯ā¤ž ā¤šāĨ?\n\nđĨ ā¤šā¤° ā¤āĨā¤: ā¤āĨ⤠ā¤āĨ ā¤ā¤¸ ā¤¸ā¤ŽāĨā¤š ā¤ŽāĨā¤ ā¤ŽāĨā¤āĨā¤Ļ ā¤ĩāĨ⤝ā¤ĩ⤏āĨā¤Ĩā¤žā¤Ē⤠ā¤ā¤ĻāĨā¤ļāĨ⤠(ā¤āĨā¤Ąā¤ŧāĨā¤, ⤰āĨā¤āĨā¤, ā¤Ģā¤ŋ⤰ ⤏āĨ ā¤ļāĨ⤰āĨ ā¤ā¤°āĨ⤠ā¤ā¤Ļā¤ŋ) ā¤ā¤ž ā¤ā¤Ē⤝āĨ⤠ā¤ā¤° ⤏ā¤ā¤¤ā¤ž ā¤šāĨāĨ¤\n\nđ ā¤āĨā¤ĩ⤞ ā¤ĩāĨ⤝ā¤ĩ⤏āĨā¤Ĩā¤žā¤Ēā¤: ā¤āĨā¤ĩ⤞ ā¤ĩāĨ⤝ā¤ĩ⤏āĨā¤Ĩā¤žā¤Ē⤠ā¤ā¤° ā¤
⤧ā¤ŋā¤āĨ⤤ ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž ā¤šāĨ ā¤ĩāĨ⤝ā¤ĩ⤏āĨā¤Ĩā¤žā¤Ē⤠ā¤ā¤ĻāĨā¤ļāĨ⤠ā¤ā¤ž ā¤ā¤Ē⤝āĨ⤠ā¤ā¤° ⤏ā¤ā¤¤āĨ ā¤šāĨā¤āĨ¤"
+setting_5 : "ā¤āĨ⤠ā¤
⤧ā¤ŋā¤āĨ⤤ ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž ā¤¨ā¤šāĨā¤ ā¤Žā¤ŋā¤˛ā¤ž\n\nā¤ā¤Ē ā¤ā¤ŋ⤏āĨ ā¤āĨ ā¤āĨ⤰-ā¤ĩāĨ⤝ā¤ĩ⤏āĨā¤Ĩā¤žā¤Ē⤠ā¤āĨ /auth ā¤ĻāĨā¤ĩā¤žā¤°ā¤ž ā¤ŽāĨ⤰āĨ ā¤ĩāĨ⤝ā¤ĩ⤏āĨā¤Ĩā¤žā¤Ē⤠ā¤ā¤ĻāĨā¤ļāĨ⤠ā¤ā¤ž ā¤ā¤Ē⤝āĨ⤠ā¤ā¤°ā¤¨āĨ ā¤āĨ ā¤
⤍āĨā¤Žā¤¤ā¤ŋ ā¤ĻāĨ ⤏ā¤ā¤¤āĨ ā¤šāĨ⤠ā¤ā¤° /unauth ā¤ā¤ž ā¤ā¤Ē⤝āĨ⤠ā¤ā¤°ā¤āĨ ā¤šā¤ā¤ž ⤏ā¤ā¤¤āĨ ā¤šāĨā¤"
+setting_9 : "âī¸ ā¤¯ā¤š ā¤āĨā¤¯ā¤ž ā¤šāĨ?\n\n⤏ā¤āĨ⤰ā¤ŋ⤝ ā¤šāĨ⤍āĨ ā¤Ē⤰, ā¤ŦāĨ⤠ā¤ā¤Ēā¤āĨ ā¤āĨ⤠ā¤āĨ ā¤¸ā¤žā¤Ģ ā¤ā¤° ⤏āĨā¤Ē⤎āĨ⤠ā¤Ŧā¤¨ā¤žā¤¨āĨ ā¤āĨ ⤞ā¤ŋ⤠{0} ā¤āĨ ā¤Ŧā¤žā¤Ļ ā¤
ā¤Ēā¤¨ā¤ž ⤏ā¤ā¤ĻāĨā¤ļ ā¤šā¤ā¤ž ā¤ĻāĨā¤ā¤žāĨ¤"
+setting_10 : "âī¸ ā¤¯ā¤š ā¤āĨā¤¯ā¤ž ā¤šāĨ?\n\n1) ā¤¸ā¤ŽāĨā¤š: ā¤ā¤šā¤žā¤ ā¤ā¤ĻāĨā¤ļ ā¤Ļā¤ŋā¤¯ā¤ž ā¤ā¤žā¤¤ā¤ž ā¤šāĨ, ā¤ā¤¸ ā¤¸ā¤ŽāĨā¤š ā¤ŽāĨ⤠⤏ā¤ā¤āĨ⤤ ā¤ā¤˛ā¤žā¤¤ā¤ž ā¤šāĨāĨ¤\n\n2) ā¤āĨ⤍⤞: ā¤ā¤Ēā¤āĨ ā¤ā¤āĨā¤ā¤ŋ⤤ ā¤āĨ⤍⤞ ā¤ŽāĨ⤠⤏ā¤ā¤āĨ⤤ ā¤ā¤˛ā¤žā¤¤ā¤ž ā¤šāĨāĨ¤ ā¤āĨ⤍⤞ ā¤ā¤ā¤ĄāĨ ā¤āĨ / channelplay . ā¤āĨ ā¤Žā¤žā¤§āĨā¤¯ā¤Ž ⤏āĨ ⤏āĨ⤠ā¤ā¤°āĨā¤"
+setting_11 : "âī¸ ā¤¯ā¤š ā¤āĨā¤¯ā¤ž ā¤šāĨ?\n\n1) ā¤šā¤° ā¤āĨā¤: ā¤ā¤¸ ā¤¸ā¤ŽāĨā¤š ā¤ŽāĨā¤ ā¤ŽāĨā¤āĨā¤Ļ ā¤āĨ⤠ā¤āĨ ā¤ĩāĨ⤝ā¤āĨ⤤ā¤ŋ ā¤¯ā¤šā¤žā¤ ā¤¸ā¤ā¤āĨ⤤ ā¤ā¤˛ā¤ž ⤏ā¤ā¤¤ā¤ž ā¤šāĨāĨ¤\n\n2) ā¤āĨā¤ĩ⤞ ā¤ĩāĨ⤝ā¤ĩ⤏āĨā¤Ĩā¤žā¤Ēā¤: ā¤āĨā¤ĩ⤞ ā¤ĩāĨ⤝ā¤ĩ⤏āĨā¤Ĩā¤žā¤Ēā¤ ā¤šāĨ ā¤ā¤¸ ā¤¸ā¤ŽāĨā¤š ā¤ŽāĨ⤠⤏ā¤ā¤āĨ⤤ ā¤ā¤˛ā¤ž ⤏ā¤ā¤¤āĨ ā¤šāĨā¤āĨ¤"
+setting_12 : "ā¤ā¤Ē⤍āĨ ā¤āĨ⤍⤞ ā¤ŽāĨā¤Ą ā¤āĨ ⤞ā¤ŋ⤠ā¤āĨ⤠ā¤āĨ⤍⤞ ā¤ā¤ā¤ĄāĨ ⤍ā¤ŋ⤰āĨā¤§ā¤žā¤°ā¤ŋ⤤ ā¤¨ā¤šāĨ⤠ā¤āĨ ā¤šāĨāĨ¤ ā¤āĨā¤Ēā¤¯ā¤ž / channelplay ā¤āĨ ā¤¸ā¤žā¤Ĩ ā¤Ē⤰ā¤ŋā¤ā¤žā¤ˇā¤ŋ⤤ ā¤ā¤°āĨā¤āĨ¤"
+setting_13 : "⤏ā¤āĨ⤰ā¤ŋ⤝ ā¤¸ā¤ŽāĨā¤š ā¤āĨ⤞ ā¤ŽāĨ⤠ā¤ĒāĨ⤞āĨ ā¤ŽāĨā¤Ą ā¤¨ā¤šāĨ⤠ā¤Ŧā¤Ļā¤˛ā¤ž ā¤ā¤ž ⤏ā¤ā¤¤ā¤žāĨ¤ ā¤āĨā¤Ēā¤¯ā¤ž ā¤ĩāĨ⤝⤏ ā¤āĨ⤠ā¤āĨ ā¤Ēā¤šā¤˛āĨ / ⤏āĨā¤āĨā¤Ē ā¤āĨ ā¤¸ā¤žā¤Ĩ ā¤Ŧā¤ā¤Ļ ā¤ā¤°āĨā¤āĨ¤"
+setting_14 : "âī¸ ā¤¯ā¤š ā¤āĨā¤¯ā¤ž ā¤šāĨ?\n\n⤏ā¤āĨ⤰ā¤ŋ⤝ ā¤šāĨ⤍āĨ ā¤Ē⤰, ā¤ŦāĨ⤠ā¤
ā¤Ē⤍āĨ ⤍ā¤ŋ⤎āĨā¤Ēā¤žā¤Ļā¤ŋ⤤ ā¤ā¤ĻāĨā¤ļāĨ⤠(/play,/pause,/shuffle,/stop ā¤ā¤Ļā¤ŋ) ā¤āĨ ⤤āĨ⤰ā¤ā¤¤ ā¤šā¤ā¤ž ā¤ĻāĨā¤ā¤žāĨ¤\n\nā¤ā¤¸ā¤āĨ ⤠āĨ⤠⤏āĨ ā¤ā¤žā¤Ž ā¤ā¤°ā¤¨āĨ ā¤āĨ ⤞ā¤ŋ⤠ā¤ŦāĨ⤠ā¤āĨ ⤏ā¤ā¤ĻāĨā¤ļāĨ⤠ā¤āĨ ā¤šā¤ā¤žā¤¨āĨ ā¤āĨ ā¤ā¤ĩā¤ļāĨ⤝ā¤ā¤¤ā¤ž ā¤šāĨā¤āĨāĨ¤"
+setting_15 : "ā¤¸ā¤šā¤ā¤°āĨā¤ŽāĨ ā¤āĨ ā¤šā¤˛ ā¤ā¤°ā¤¨āĨ ā¤ŽāĨ⤠ā¤ĩā¤ŋā¤Ģ⤞, ⤏āĨ⤍ā¤ŋā¤ļāĨā¤ā¤ŋ⤤ ā¤ā¤°āĨ⤠ā¤ā¤ŋ ā¤ā¤Ē⤍āĨ ā¤
ā¤Ē⤍āĨ ā¤āĨ⤍⤞ ā¤ŽāĨ⤠ā¤ŦāĨ⤠ā¤āĨā¤Ąā¤ŧā¤ž ā¤šāĨ ā¤ā¤° ā¤ā¤¸āĨ ā¤ĩāĨ⤝ā¤ĩ⤏āĨā¤Ĩā¤žā¤Ē⤠ā¤āĨ ⤰āĨā¤Ē ā¤ŽāĨ⤠ā¤ĒāĨ⤰ā¤ā¤žā¤°ā¤ŋ⤤ ā¤ā¤ŋā¤¯ā¤ž ā¤šāĨāĨ¤\n\nā¤Ģā¤ŋ⤰ ⤏āĨ ⤏āĨā¤ā¤ŋā¤ā¤ /ā¤āĨ⤍⤞ā¤ĒāĨ⤞āĨ ā¤ā¤°ā¤¨āĨ ā¤ā¤ž ā¤ĒāĨā¤°ā¤¯ā¤žā¤¸ ā¤ā¤°āĨā¤.."
+
+set_cb_1 : "ā¤ā¤Ąā¤ŋ⤝āĨ ā¤āĨ⤪ā¤ĩ⤤āĨā¤¤ā¤ž ā¤ĒāĨ⤍⤞ ā¤ĒāĨā¤°ā¤žā¤ĒāĨ⤤ ā¤ā¤ŋā¤¯ā¤ž ā¤ā¤ž ā¤°ā¤šā¤ž ā¤šāĨ..."
+set_cb_2 : "ā¤ĩāĨā¤Ąā¤ŋ⤝āĨ ā¤āĨ⤪ā¤ĩ⤤āĨā¤¤ā¤ž ā¤ĒāĨ⤍⤞ ā¤ĒāĨā¤°ā¤žā¤ĒāĨ⤤ ā¤ā¤ŋā¤¯ā¤ž ā¤ā¤ž ā¤°ā¤šā¤ž ā¤šāĨ..."
+set_cb_3 : "ā¤ĒāĨā¤°ā¤žā¤Žā¤žā¤Ŗā¤ŋ⤠ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž ā¤ĒāĨ⤍⤞ ā¤ĒāĨā¤°ā¤žā¤ĒāĨ⤤ ā¤ā¤ŋā¤¯ā¤ž ā¤ā¤ž ā¤°ā¤šā¤ž ā¤šāĨ..."
+set_cb_4 : "ā¤ĒāĨ⤞āĨ ā¤ŽāĨā¤Ą ā¤ĒāĨ⤍⤞ ā¤ĒāĨā¤°ā¤žā¤ĒāĨ⤤ ā¤ā¤ŋā¤¯ā¤ž ā¤ā¤ž ā¤°ā¤šā¤ž ā¤šāĨ..."
+set_cb_5 : "ā¤āĨ⤞āĨ⤍ ā¤ŽāĨā¤Ą ā¤ĒāĨ⤍⤞ ā¤ĒāĨā¤°ā¤žā¤ĒāĨ⤤ ā¤ā¤ŋā¤¯ā¤ž ā¤ā¤ž ā¤°ā¤šā¤ž ā¤šāĨ..."
+set_cb_6 : "ā¤Ē⤰ā¤ŋā¤ĩ⤰āĨ⤤⤍ ā¤āĨ ⤏āĨā¤Ĩā¤žā¤Ēā¤¨ā¤žāĨ¤"
+set_cb_7 : "ā¤ĒāĨā¤°ā¤žā¤Žā¤žā¤Ŗā¤ŋ⤠ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž ⤏āĨā¤āĨ ā¤ĒāĨā¤°ā¤žā¤ĒāĨ⤤ ā¤ā¤°ā¤¨ā¤ž .. ā¤āĨā¤Ēā¤¯ā¤ž ā¤ĒāĨ⤰⤤āĨā¤āĨā¤ˇā¤ž ā¤ā¤°āĨā¤āĨ¤"
+set_cb_8 : "ā¤ĩā¤žā¤Ē⤏ ā¤šāĨ ā¤°ā¤šāĨ ā¤šāĨ.."
+
+# Misc
+ustats_1 : "No User Stats Found."
+ustats_2 : "Grettings!, You have played **{0}** tracks till now with a whopping count of **{1}** times.\n\nTop {2} played by you:\n\n"
+
+gstats_1 : "Getting Global Stats, This could take some time..."
+gstats_2 : "No Stats Found."
+gstats_3 : "Getting Global Top 10 {0} on the bot, This could take some time.."
+gstats_4 : "**Total Queries on Bot:** {0}\n\n{1} has played **{2}** tracks till now with a whopping count of **{3}** times.\n\n**Top {4} Tracks:**\n"
+gstats_5 : "**Top {0} Chats of {1}:**\n\n"
+gstats_6 : "**Top {0} Users of {1}:**\n\n"
+gstats_7 : "This chat group has played **{0}** tracks till now with a whopping count of **{1}** times.\n\nTop {2} played by this chat group:\n\n"
+gstats_8 : "Getting Bot's general stats and information.. This could take some time..."
+gstats_9 : "**GLOBAL TOP 10 STATS OF THE BOT**\n\nSelect the buttons from below for which you want to check global stats from bot's servers."
+gstats_10 : "**Global Stats of {0}**\n\nSelect the buttons from below for which you want to check global stats from bot's servers."
+gstats_11 : "**General Stats of {0}**\nSelect the buttons from below for which you want to check global stats from bot's servers.\n\nTo check top tracks, chats, users and other stuffs, please use /gstats"
+
+
+# Play
+#Play Callback
+playcb_1 : "ā¤¯ā¤š ⤤āĨā¤ŽāĨā¤šā¤žā¤°āĨ ⤞ā¤ŋā¤ ā¤¨ā¤šāĨā¤ ā¤šāĨ! ā¤āĨā¤Ļā¤ā¤ž ā¤ā¤žā¤¨ā¤ž ā¤ĸāĨā¤ā¤ĸāĨ "
+playcb_2 : "ā¤
ā¤ā¤˛ā¤ž ā¤Ē⤰ā¤ŋā¤Ŗā¤žā¤Ž ā¤ĒāĨā¤°ā¤žā¤ĒāĨ⤤ ā¤ā¤°ā¤ž ā¤ā¤ž ā¤°ā¤šā¤ž ā¤šāĨāĨ¤"
+
+# Channel Play
+cplay_1 : "ā¤ā¤Ē ā¤ā¤¸ ā¤āĨ⤠⤏āĨ ā¤āĨ⤍⤞āĨā¤ ā¤ŽāĨ⤠⤏ā¤ā¤āĨ⤤ ā¤ā¤˛ā¤ž ⤏ā¤ā¤¤āĨ ā¤šāĨā¤[{0}] ā¤ā¤ŋ⤏āĨ ā¤āĨ ā¤āĨ⤍⤞ ā¤¯ā¤ž ā¤
ā¤Ē⤍āĨ ā¤āĨ⤠ā¤āĨ ⤞ā¤ŋā¤ā¤ ā¤ā¤ŋ⤠ā¤ā¤ ā¤āĨ⤍⤞ ā¤āĨ ⤞ā¤ŋā¤āĨ¤\n\n**⤞ā¤ŋā¤ā¤ ā¤ā¤ŋ⤠ā¤ā¤ ā¤āĨ⤍⤞ ā¤āĨ ⤞ā¤ŋā¤:**\n`/{1} linked`\n\n** ā¤ā¤ŋ⤏āĨ ā¤
⤍āĨ⤝ ā¤āĨ⤍⤞ ā¤āĨ ⤞ā¤ŋā¤:**\n`/{1} [ā¤āĨ⤍⤞ ā¤ā¤ā¤ĄāĨ]`"
+cplay_2 : "ā¤ā¤¸ ā¤āĨ⤠ā¤ā¤ž ā¤āĨ⤠⤞ā¤ŋā¤ā¤āĨā¤Ą ā¤āĨ⤍⤞ ā¤¨ā¤šāĨā¤ ā¤šāĨāĨ¤"
+cplay_3 : "ā¤āĨ⤍⤞ ā¤Ē⤰ā¤ŋā¤ā¤žā¤ˇā¤ŋ⤤ {0}\n\n__ā¤āĨ⤍⤞ ā¤ā¤ā¤ĄāĨ__: {1}"
+cplay_4 : "ā¤āĨ⤍⤞ ā¤ĒāĨā¤°ā¤žā¤ĒāĨ⤤ ā¤ā¤°ā¤¨āĨ ā¤ŽāĨ⤠ā¤ĩā¤ŋā¤Ģ⤞.\n\n⤏āĨ⤍ā¤ŋā¤ļāĨā¤ā¤ŋ⤤ ā¤ā¤°āĨ⤠ā¤ā¤ŋ ā¤ā¤Ē⤍āĨ ā¤
ā¤Ē⤍āĨ ā¤āĨ⤍⤞ ā¤ŽāĨ⤠ā¤ŦāĨ⤠ā¤āĨā¤Ąā¤ŧā¤ž ā¤šāĨ ā¤ā¤° ā¤ā¤¸āĨ ā¤ĩāĨ⤝ā¤ĩ⤏āĨā¤Ĩā¤žā¤Ē⤠ā¤āĨ ⤰āĨā¤Ē ā¤ŽāĨ⤠ā¤ĒāĨ⤰ā¤ā¤žā¤°ā¤ŋ⤤ ā¤ā¤ŋā¤¯ā¤ž ā¤šāĨāĨ¤\nā¤āĨ⤍⤞ ā¤āĨ /ā¤āĨ⤍⤞ā¤ĒāĨ⤞āĨ ā¤āĨ ā¤Žā¤žā¤§āĨā¤¯ā¤Ž ⤏āĨ ā¤Ŧā¤Ļ⤞āĨā¤ ā¤¯ā¤ž ā¤āĨ⤍⤞ ā¤ĒāĨ⤞āĨ ā¤ŽāĨā¤Ą ā¤āĨ /ā¤ĒāĨ⤞āĨā¤ŽāĨā¤Ą ā¤āĨ ā¤Žā¤žā¤§āĨā¤¯ā¤Ž ⤏āĨ ā¤
ā¤āĨā¤ˇā¤Ž ā¤ā¤°āĨā¤"
+cplay_5 : "ā¤āĨā¤ĩ⤞ ā¤āĨ⤍⤞ ā¤¸ā¤Žā¤°āĨā¤Ĩā¤ŋ⤤ ā¤šāĨā¤āĨ¤"
+cplay_6 : "ā¤āĨ⤍⤞ ā¤āĨ ā¤ā¤¸ ā¤¸ā¤ŽāĨā¤š ⤏āĨ ā¤āĨā¤Ąā¤ŧ⤍āĨ ā¤āĨ ⤞ā¤ŋ⤠ā¤ā¤Ēā¤ā¤ž **⤏āĨā¤ĩā¤žā¤ŽāĨ** ā¤šāĨā¤¨ā¤ž ā¤ā¤ĩā¤ļāĨā¤¯ā¤ ā¤šāĨ[{0}]āĨ¤\n**ā¤āĨ⤍⤞ ā¤ā¤ž ⤏āĨā¤ĩā¤žā¤ŽāĨ:** @{1}\n\nā¤ĩāĨā¤ā¤˛āĨā¤Ēā¤ŋ⤠⤰āĨā¤Ē ⤏āĨ ā¤ā¤Ē ā¤
ā¤Ē⤍āĨ ā¤¸ā¤ŽāĨā¤š ā¤āĨ ā¤ā¤¸ ā¤āĨ⤍⤞ ⤏āĨ ⤞ā¤ŋā¤ā¤ ā¤ā¤° ⤏ā¤ā¤¤āĨ ā¤šāĨ⤠ā¤ā¤° ā¤Ģā¤ŋ⤰ `/ channelplay ⤞ā¤ŋā¤ā¤āĨā¤Ą` ⤏āĨ ā¤ā¤¨āĨā¤āĨ⤠ā¤ā¤°ā¤¨āĨ ā¤ā¤ž ā¤ĒāĨā¤°ā¤¯ā¤žā¤¸ ā¤ā¤°āĨā¤"
+
+#Play
+play_1 : "ā¤ĒāĨ⤰⤏ā¤ā¤¸āĨā¤ā¤°ā¤Ŗ ā¤āĨā¤ĩāĨ⤰āĨ... ā¤āĨā¤Ēā¤¯ā¤ž ā¤ĒāĨ⤰⤤āĨā¤āĨā¤ˇā¤ž ā¤ā¤°āĨā¤!"
+play_2 : "**đˇā¤āĨ⤍⤞ ā¤ĒāĨ⤞āĨ ā¤ŽāĨā¤Ą**\nđ ⤏ā¤ā¤¸ā¤žā¤§ā¤¨ ā¤āĨā¤ĩāĨ⤰āĨ... ā¤āĨā¤Ēā¤¯ā¤ž ā¤ĒāĨ⤰⤤āĨā¤āĨā¤ˇā¤ž ā¤ā¤°āĨā¤!\n\n**⤞ā¤ŋā¤ā¤ ā¤ā¤ŋā¤¯ā¤ž ā¤ā¤¯ā¤ž ā¤āĨ⤍⤞:** {0}"
+play_3 : "ā¤āĨā¤ĩāĨ⤰āĨ ⤏ā¤ā¤¸ā¤žā¤§ā¤ŋ⤤ ā¤ā¤°ā¤¨āĨ ā¤ŽāĨ⤠ā¤ĩā¤ŋā¤Ģ⤞!"
+play_4 : "đ **ā¤ā¤Ąā¤Žā¤ŋ⤍ ā¤ā¤¨ā¤˛āĨ ā¤ĒāĨ⤞āĨ**\nā¤ā¤¸ ā¤āĨ⤰āĨā¤Ē ā¤ŽāĨ⤠ā¤āĨā¤ĩ⤞ ā¤ā¤Ąā¤Žā¤ŋ⤍ ā¤ā¤° ā¤ĒāĨā¤°ā¤žā¤Žā¤žā¤Ŗā¤ŋ⤠ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž ā¤šāĨ ⤏ā¤ā¤āĨ⤤ ā¤ā¤˛ā¤ž ⤏ā¤ā¤¤āĨ ā¤šāĨā¤āĨ¤"
+play_5 : "ā¤ā¤Ąā¤ŋ⤝āĨ ā¤Ģā¤ŧā¤žā¤ā¤˛ ⤏ā¤ā¤¸ā¤žā¤§ā¤ŋ⤤ ā¤ā¤°ā¤¨āĨ ā¤ŽāĨ⤠ā¤ĩā¤ŋā¤Ģ⤞.\n\nā¤ā¤Ąā¤ŋ⤝āĨ ā¤Ģā¤ŧā¤žā¤ā¤˛ ā¤ā¤ž ā¤ā¤ā¤žā¤° 100 mb ⤏āĨ ā¤ā¤Ž ā¤šāĨā¤¨ā¤ž ā¤ā¤žā¤šā¤ŋā¤"
+play_6 : "**ā¤
ā¤ĩ⤧ā¤ŋ ⤏āĨā¤Žā¤ž ā¤Ēā¤žā¤° ā¤šāĨ ā¤ā¤**\n\n**ā¤
⤍āĨā¤Žā¤¤ ā¤
ā¤ĩ⤧ā¤ŋ: **{0} ā¤Žā¤ŋ⤍ā¤(s)\n**ā¤ĒāĨā¤°ā¤žā¤ĒāĨ⤤ ā¤
ā¤ĩ⤧ā¤ŋ:** {1} ā¤Žā¤ŋ⤍⤠(ā¤Žā¤ŋ⤍ā¤)"
+play_7 : "ā¤Žā¤žā¤Ģā¤ŧ ā¤ā¤°ā¤¨ā¤ž! ⤏āĨā¤ĒāĨ⤝āĨ ā¤ā¤ĩ⤰⤞āĨā¤Ą ā¤ŽāĨā¤ĻāĨā¤ĻāĨ⤠ā¤āĨ ā¤ā¤žā¤°ā¤Ŗ ā¤ŦāĨā¤ā¤āĨ ā¤āĨā¤ĩ⤞ ⤏āĨā¤Žā¤ŋ⤤ ⤏ā¤ā¤āĨā¤¯ā¤ž ā¤ŽāĨ⤠ā¤ĩāĨā¤Ąā¤ŋ⤝āĨ ā¤āĨ⤞ ā¤āĨ ā¤
⤍āĨā¤Žā¤¤ā¤ŋ ā¤ĻāĨā¤¤ā¤ž ā¤šāĨāĨ¤ ā¤ā¤ ā¤
⤍āĨ⤝ ā¤āĨ⤠ā¤
ā¤āĨ ā¤ĩāĨā¤Ąā¤ŋ⤝āĨ ā¤āĨ⤞ ā¤ā¤ž ā¤ā¤Ē⤝āĨ⤠ā¤ā¤° ā¤°ā¤šāĨ ā¤šāĨā¤āĨ¤ ā¤ā¤Ąā¤ŋ⤝āĨ ā¤Ē⤰ ⤏āĨā¤ĩā¤ŋ⤠ā¤ā¤°ā¤¨āĨ ā¤ā¤ž ā¤ĒāĨā¤°ā¤¯ā¤žā¤¸ ā¤ā¤°āĨā¤ ā¤¯ā¤ž ā¤Ŧā¤žā¤Ļ ā¤ŽāĨ⤠ā¤ĒāĨ⤍: ā¤ĒāĨā¤°ā¤¯ā¤žā¤¸ ā¤ā¤°āĨā¤"
+play_8 : "ā¤Žā¤žā¤¨āĨ⤝ ā¤ĩāĨā¤Ąā¤ŋ⤝āĨ ā¤Ģā¤ŧā¤žā¤ā¤˛ ā¤ā¤āĨ⤏ā¤āĨā¤ā¤ļ⤍ ā¤¨ā¤šāĨā¤!\n\n**ā¤¸ā¤Žā¤°āĨā¤Ĩā¤ŋ⤤ ā¤ĒāĨā¤°ā¤žā¤°āĨā¤Ē:** {0}"
+play_9 : "ā¤ĩāĨā¤Ąā¤ŋ⤝āĨ ā¤Ģā¤ŧā¤žā¤ā¤˛ ā¤ā¤ž ā¤ā¤ā¤žā¤° 1 GiB ⤏āĨ ā¤ā¤Ž ā¤šāĨā¤¨ā¤ž ā¤ā¤žā¤šā¤ŋā¤"
+play_10 : "**⤝āĨā¤āĨ⤝āĨā¤Ŧ ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨ⤠ā¤ĢāĨā¤ā¤°**\n\nā¤ĩā¤š ā¤ŽāĨā¤Ą ā¤āĨ⤍āĨ⤠ā¤ā¤ŋā¤¸ā¤ŽāĨ⤠ā¤ā¤Ē ā¤ĒāĨ⤰āĨ ⤝āĨā¤āĨ⤝āĨā¤Ŧ ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨ⤠ā¤ā¤˛ā¤žā¤¨ā¤ž ā¤ā¤žā¤šā¤¤āĨ ā¤šāĨā¤"
+play_11 : "đā¤ļāĨ⤰āĨ⤎ā¤: **{0}\n\nâŗā¤
ā¤ĩ⤧ā¤ŋ:** {1} ā¤Žā¤ŋ⤍ā¤"
+play_12 : "**Spotify ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨā¤**\n\nā¤ā¤¨ā¤āĨ ā¤ĻāĨā¤ĩā¤žā¤°ā¤ž ā¤
⤍āĨ⤰āĨ⤧ ā¤ā¤ŋā¤¯ā¤ž ā¤ā¤¯ā¤ž:- {0}"
+play_13 : "**Apple ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨā¤**\n\nā¤ā¤¨ā¤āĨ ā¤ĻāĨā¤ĩā¤žā¤°ā¤ž ā¤
⤍āĨ⤰āĨ⤧ ā¤ā¤ŋā¤¯ā¤ž ā¤ā¤¯ā¤ž:- {0}"
+play_14 : "**⤝āĨā¤ā¤°ā¤ā¤˛ ā¤āĨ ⤏⤤āĨā¤¯ā¤žā¤Ēā¤ŋ⤤ ā¤ā¤°ā¤¨āĨ ā¤ŽāĨ⤠ā¤
ā¤¸ā¤Žā¤°āĨā¤ĨāĨ¤**\nā¤ŦāĨ⤠ā¤ā¤ļāĨā¤ā¤°āĨ⤝ ā¤ā¤°ā¤¤ā¤ž ā¤šāĨ ā¤ā¤ŋ ā¤āĨā¤¯ā¤ž ā¤¯ā¤š ⤝āĨā¤ā¤°ā¤ā¤˛ ⤍ā¤ŋā¤ŽāĨ⤍ ā¤ŽāĨ⤠⤏āĨ ā¤ā¤ŋ⤏āĨ ā¤āĨ ā¤ĒāĨ⤞āĨā¤ā¤ĢāĨ⤰āĨā¤Ž ⤏āĨ ⤏ā¤ā¤Ŧā¤ā¤§ā¤ŋ⤤ ā¤šāĨ: Youtube, AppleMusic, Spotify, Resso ā¤ā¤° SoundcloudāĨ¤\n\nā¤ā¤Ē M3u8 ā¤¯ā¤ž ⤰ā¤ŋā¤ŽāĨ⤠⤞ā¤ŋā¤ā¤ ā¤āĨ ⤞ā¤ŋ⤠/⤏āĨā¤āĨ⤰āĨā¤Ž ā¤ā¤ž ā¤ā¤Ē⤝āĨ⤠ā¤ā¤° ⤏ā¤ā¤¤āĨ ā¤šāĨā¤āĨ¤"
+play_15 : "**ā¤˛ā¤žā¤ā¤ĩ ⤏āĨā¤āĨ⤰āĨā¤Ž ā¤ā¤ž ā¤Ēā¤¤ā¤ž ā¤ā¤˛ā¤ž**\n\n⤏ā¤ŋ⤏āĨā¤ā¤Ž ⤍āĨ ā¤ā¤Ēā¤āĨ ā¤āĨ⤰āĨ⤠⤞ā¤ŋā¤ā¤ ā¤āĨ ā¤˛ā¤žā¤ā¤ĩ ⤏āĨā¤āĨ⤰āĨā¤Ž ā¤āĨ ⤰āĨā¤Ē ā¤ŽāĨ⤠ā¤Ēā¤žā¤¯ā¤ž ā¤šāĨāĨ¤ ā¤˛ā¤žā¤ā¤ĩ ⤏āĨā¤āĨ⤰āĨā¤Ž ā¤āĨā¤˛ā¤¨ā¤ž ā¤ā¤žā¤šā¤¤āĨ ā¤šāĨā¤?"
+play_16 : "ā¤āĨ⤰āĨ⤠ā¤ĩā¤ŋā¤ĩ⤰⤪ ā¤ĒāĨā¤°ā¤žā¤ĒāĨ⤤ ā¤ā¤°ā¤¨āĨ ā¤ŽāĨ⤠ā¤ĩā¤ŋā¤Ģ⤞. ā¤āĨ⤠ā¤
⤍āĨ⤝ ā¤āĨ⤞⤍āĨ ā¤ā¤ž ā¤ĒāĨā¤°ā¤¯ā¤žā¤¸ ā¤ā¤°āĨā¤āĨ¤"
+play_17 : "ā¤ā¤¸ ā¤ĒāĨ⤰ā¤ā¤žā¤° ā¤āĨ Spotify ā¤āĨā¤ĩāĨ⤰āĨ ā¤ā¤˛ā¤žā¤¨āĨ ā¤ŽāĨ⤠ā¤
ā¤¸ā¤Žā¤°āĨā¤Ĩ!\n\nā¤ŽāĨ⤠ā¤āĨā¤ĩ⤞ Spotify ā¤āĨ⤰āĨā¤, ā¤ā¤˛āĨā¤Ŧā¤Ž, ā¤ā¤˛ā¤žā¤ā¤žā¤° ā¤ā¤° ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨ⤠ā¤ā¤˛ā¤ž ⤏ā¤ā¤¤ā¤ž ā¤šāĨā¤"
+play_18 : "**No Active Voice Chat Found**\n\nTo use force play, there must be an active voice chat going on in your group. **Force Play** stops the playing track on voice chat and starts playing the searched track instantly without disturbing/clearing queue."
+
+
+
+#Playlist
+playlist_1 : "**ā¤ā¤Ē⤝āĨā¤:** /ā¤ĒāĨ⤞āĨ [⤏ā¤ā¤āĨ⤤ ā¤ā¤ž ā¤¨ā¤žā¤Ž ā¤¯ā¤ž ⤝āĨā¤āĨ⤝āĨā¤Ŧ ⤞ā¤ŋā¤ā¤ ā¤¯ā¤ž ā¤ā¤Ąā¤ŋ⤝āĨ ā¤ā¤ž ā¤ā¤ĩā¤žā¤Ŧ]\n\nā¤
ā¤ā¤° ā¤ā¤Ē ā¤ŦāĨ⤠ā¤āĨ ⤏⤰āĨā¤ĩ⤰ ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨ⤠ā¤ā¤˛ā¤žā¤¨ā¤ž ā¤ā¤žā¤šā¤¤āĨ ā¤šāĨā¤! ⤍āĨā¤āĨ ā¤Ļā¤ŋ⤠ā¤ā¤ ā¤Ŧā¤ā¤¨ ā¤āĨ ā¤Ļā¤Ŧā¤žā¤ā¤āĨ¤"
+playlist_2 : "ā¤
ā¤Ē⤍āĨ ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨ⤠ā¤ĒāĨā¤°ā¤žā¤ĒāĨ⤤ ā¤ā¤°ā¤¨ā¤žāĨ¤ ā¤āĨā¤Ēā¤¯ā¤ž ā¤ĒāĨ⤰⤤āĨā¤āĨā¤ˇā¤ž ā¤ā¤°āĨā¤"
+playlist_3 : "ā¤ŦāĨ⤠ā¤āĨ ⤏⤰āĨā¤ĩ⤰ ā¤Ē⤰ ā¤ā¤Ēā¤āĨ ā¤āĨ⤠ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨā¤ ā¤¨ā¤šāĨā¤ ā¤šāĨāĨ¤"
+playlist_4 : "ā¤˛ā¤žā¤ ā¤ā¤ ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨā¤:\n\n"
+playlist_5 : "ā¤
ā¤ĩ⤧ā¤ŋ- {0} ā¤Žā¤ŋ⤍ā¤"
+playlist_6 : "ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨ⤠ā¤āĨ ā¤šā¤ā¤žā¤¨āĨ ā¤āĨ ⤞ā¤ŋā¤ ā¤ŽāĨā¤ā¤¸āĨ PM ā¤ŽāĨ⤠⤏ā¤ā¤Ē⤰āĨ⤠ā¤ā¤°āĨā¤āĨ¤"
+playlist_7 : "ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨ⤠ā¤āĨ ā¤
ā¤ā¤Ļ⤰ ā¤āĨ⤰āĨā¤: {0}\n\nā¤
ā¤Ē⤍āĨ ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨā¤ ā¤ŽāĨ⤠ā¤ā¤ŋ⤏āĨ ā¤ĩā¤ŋā¤ļāĨ⤎ ā¤āĨ⤰āĨ⤠ā¤āĨ ā¤šā¤ā¤žā¤¨āĨ ā¤āĨ ⤞ā¤ŋ⤠ā¤Ŧā¤ā¤¨ ā¤Ļā¤Ŧā¤žā¤ā¤āĨ¤\n\nā¤ĒāĨ⤰āĨ ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨ⤠ā¤āĨ ā¤šā¤ā¤žā¤¨āĨ ā¤āĨ ⤞ā¤ŋā¤: ā¤ĄāĨ⤞ ā¤šāĨ⤞ ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨ⤠ā¤Ŧā¤ā¤¨ ā¤Ļā¤Ŧā¤žā¤ā¤āĨ¤"
+playlist_8 : "ā¤Ēā¤šā¤˛āĨ ⤏āĨ ā¤ŽāĨā¤āĨā¤Ļ ā¤šāĨ\n\nā¤¯ā¤š ā¤āĨ⤰āĨ⤠ā¤ā¤Ēā¤āĨ ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨā¤ ā¤ŽāĨā¤ ā¤ŽāĨā¤āĨā¤Ļ ā¤šāĨāĨ¤"
+playlist_9 : "ā¤Žā¤žā¤Ģā¤ŧ ā¤ā¤°ā¤¨ā¤ž! ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨā¤ ā¤ŽāĨ⤠ā¤ā¤Ēā¤āĨ ā¤Ēā¤žā¤¸ ā¤āĨā¤ĩ⤞ {0} ⤏ā¤ā¤āĨ⤤ ā¤šāĨ ⤏ā¤ā¤¤ā¤ž ā¤šāĨāĨ¤"
+playlist_10 : "ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨ⤠ā¤āĨā¤Ąā¤ŧ\n\n{0}\nā¤ā¤Ēā¤āĨ ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨā¤ ā¤ŽāĨ⤠ā¤āĨā¤Ąā¤ŧā¤ž ā¤ā¤¯ā¤žāĨ¤"
+playlist_11 : "ā¤ā¤Ēā¤ā¤ž ā¤āĨ⤰āĨ⤠⤏ā¤Ģā¤˛ā¤¤ā¤žā¤ĒāĨ⤰āĨā¤ĩā¤ ā¤šā¤ā¤ž ā¤Ļā¤ŋā¤¯ā¤ž ā¤ā¤¯ā¤žāĨ¤"
+playlist_12 : "ā¤ā¤Ēā¤ā¤ž ā¤āĨ⤰āĨā¤ ā¤Žā¤ŋā¤ā¤žā¤¯ā¤ž ā¤¨ā¤šāĨ⤠ā¤ā¤ž ⤏ā¤ā¤ž."
+playlist_13 : "⤏⤰āĨā¤ĩ⤰ ⤏āĨ ā¤ā¤Ēā¤āĨ ā¤ĒāĨ⤰āĨ ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨā¤ ā¤šā¤ā¤ž ā¤ĻāĨ ā¤ā¤āĨ¤"
+playlist_14 : "**ā¤āĨā¤¯ā¤ž ā¤ā¤Ē ā¤ĩā¤žā¤ā¤ ā¤
ā¤Ē⤍āĨ ā¤ĒāĨ⤰āĨ ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨā¤ ā¤šā¤ā¤žā¤¨ā¤ž ā¤ā¤žā¤šā¤¤āĨ ā¤šāĨā¤?**\n\nā¤ā¤Ē ā¤
ā¤Ē⤍āĨ ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨ⤠ā¤āĨ ā¤ĻāĨā¤ā¤āĨ ā¤ā¤° ā¤ā¤¸āĨ ā¤Ŧā¤žā¤Ļ ā¤ŽāĨ⤠ā¤ĒāĨ⤍⤰āĨā¤ĒāĨā¤°ā¤žā¤ĒāĨ⤤ ā¤¨ā¤šāĨ⤠ā¤ā¤ŋā¤¯ā¤ž ā¤ā¤ž ⤏ā¤ā¤¤ā¤ž ā¤šāĨāĨ¤"
+playlist_15 : "[ā¤ĒāĨ⤰āĨ ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨ⤠ā¤āĨā¤ā¤ā¤ā¤ ā¤ā¤°āĨā¤]({0})"
+playlist_16 : "ā¤ā¤¤ā¤žā¤°ā¤Ŧā¤ĻāĨ⤧ ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨā¤:"
+playlist_17 : "ā¤ā¤¤ā¤žā¤°ā¤Ŧā¤ĻāĨ⤧ ⤏āĨā¤Ĩā¤ŋ⤤ā¤ŋ-"
+playlist_18 : "[ā¤āĨā¤ā¤ā¤ā¤ ā¤ĒāĨ⤰āĨ ā¤ā¤¤ā¤žā¤°ā¤Ŧā¤ĻāĨ⤧ ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨā¤]({0})\n\nā¤
ā¤ā¤¤ā¤ŋā¤Ž ā¤ā¤¤ā¤žā¤°ā¤Ŧā¤ĻāĨ⤧ ⤏āĨā¤Ĩā¤ŋ⤤ā¤ŋ : **{1}**"
+
+
+#Playmode
+playmode_1 : "ā¤ā¤¸ ā¤ŽāĨā¤Ą ā¤ā¤ž ā¤ā¤¯ā¤¨ ā¤ā¤°āĨ⤠ā¤ā¤ŋā¤¸ā¤ŽāĨ⤠ā¤ā¤Ē ā¤
ā¤Ē⤍āĨ ā¤¸ā¤ŽāĨā¤š ā¤āĨ ā¤
ā¤ā¤Ļ⤰ ā¤ĒāĨ⤰ā¤ļāĨ⤍āĨ⤠ā¤āĨ ā¤ā¤˛ā¤žā¤¨ā¤ž ā¤ā¤žā¤šā¤¤āĨ ā¤šāĨā¤[{0}]āĨ¤"
+playmode_2 : "⤏āĨā¤ā¤ŋā¤ā¤ ā¤Ŧā¤Ļ⤞āĨ ā¤ā¤ ā¤ā¤° {0} ā¤ĻāĨā¤ĩā¤žā¤°ā¤ž ⤏ā¤Ģā¤˛ā¤¤ā¤žā¤ĒāĨ⤰āĨā¤ĩā¤ ā¤¸ā¤šāĨā¤āĨ ā¤ā¤"
+
+#Stream
+str_1 : "ā¤āĨā¤Ēā¤¯ā¤ž M3u8 ⤞ā¤ŋā¤ā¤ ā¤¯ā¤ž ā¤ā¤ā¤ĄāĨā¤āĨ⤏ ⤞ā¤ŋā¤ā¤ ā¤ĒāĨ⤰ā¤Ļā¤žā¤¨ ā¤ā¤°āĨā¤āĨ¤"
+str_2 : "ā¤Žā¤žā¤¨āĨ⤝ ⤏āĨā¤āĨ⤰āĨā¤Ž ⤏⤤āĨā¤¯ā¤žā¤Ēā¤ŋ⤤\n\nā¤āĨā¤Ēā¤¯ā¤ž ⤏ā¤ā¤¸ā¤žā¤§ā¤¨ ⤞ā¤ŋā¤ā¤ ā¤āĨ ā¤ĒāĨ⤰⤤āĨā¤āĨā¤ˇā¤ž ā¤ā¤°āĨā¤.."
+str_3 : "⤝āĨā¤āĨ⤝āĨā¤Ŧ ā¤˛ā¤žā¤ā¤ĩ ⤏āĨā¤āĨ⤰āĨā¤Ž ⤏āĨā¤āĨ⤰āĨā¤Ž ā¤ā¤°ā¤¨āĨ ā¤ŽāĨ⤠ā¤
ā¤¸ā¤Žā¤°āĨā¤ĨāĨ¤ ā¤āĨā¤ ā¤˛ā¤žā¤ā¤ĩ ā¤ĒāĨā¤°ā¤žā¤°āĨā¤Ē ā¤¨ā¤šāĨā¤ ā¤Žā¤ŋā¤˛ā¤ž"
+
+#TopPlay
+tracks_1 : "**Processing {0} Top 10 Playlist**\nThis could take some mins(around 3-4 mins).. Please Wait...\n\n**đ¤Requested By:** {1}\n\nCheck Top 10 tracks by /stats"
+tracks_2 : "**⤤āĨ⤰āĨā¤ā¤ŋ**\n\nā¤ŦāĨ⤠ā¤āĨ ⤏⤰āĨā¤ĩ⤰ ā¤Ē⤰ ā¤āĨ⤠**{0} ā¤ļāĨ⤰āĨ⤎ 10 ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨā¤** ā¤¨ā¤šāĨā¤ ā¤šāĨāĨ¤ ā¤āĨā¤Ēā¤¯ā¤ž ā¤āĨ⤠ā¤
⤍āĨ⤝ ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨ⤠ā¤ā¤ā¤ŧā¤Žā¤žā¤ā¤"
+
+
+# TOOLS
+
+#Lyrics
+lyrics_1 : "**ā¤ā¤Ē⤝āĨā¤:**\n\n/ā¤āĨ⤤ [⤏ā¤ā¤āĨ⤤ ā¤ā¤ž ā¤¨ā¤žā¤Ž]"
+lyrics_2 : "ā¤āĨ⤤ ā¤āĨā¤ ā¤°ā¤šāĨ ā¤šāĨā¤"
+lyrics_3 : "â ā¤āĨ⤤ ā¤˛ā¤žā¤¨āĨ ā¤ŽāĨ⤠ā¤ĩā¤ŋā¤Ģ⤞đ.\n\nđĄ**ā¤āĨā¤ā¤¨āĨ ā¤āĨ ā¤āĨā¤ļā¤ŋā¤ļ ā¤āĨ:** {0}"
+lyrics_4 : "⤍āĨā¤āĨ ā¤Ļā¤ŋ⤠ā¤ā¤ ā¤Ŧā¤ā¤¨ ā¤Ē⤰ ā¤āĨ⤞ā¤ŋ⤠ā¤ā¤°āĨ⤠ā¤ā¤° ⤞ā¤ā¤ŦāĨ ⤏āĨā¤ĒāĨā¤Ž ā¤ĒāĨ⤰ā¤ā¤žā¤° ā¤āĨ ā¤āĨ⤤ ā¤āĨ⤠⤏āĨ ā¤Ŧā¤ā¤¨āĨ ā¤āĨ ⤞ā¤ŋ⤠ā¤āĨā¤āĨ ā¤ā¤ ā¤āĨ⤤ ā¤ĒāĨā¤°ā¤žā¤ĒāĨ⤤ ā¤ā¤°āĨā¤āĨ¤"
+
+#Ping
+ping_1 : "ā¤ĒāĨā¤ā¤!!!!"
+
+# Song
+song_1 : "ā¤ā¤Ē YouTube ⤏āĨ ā¤āĨā¤ĩ⤞ ⤍ā¤ŋā¤āĨ ā¤āĨā¤ ā¤ŽāĨ⤠⤏ā¤ā¤āĨ⤤ ā¤¯ā¤ž ā¤ĩāĨā¤Ąā¤ŋ⤝āĨ ā¤Ąā¤žā¤ā¤¨ā¤˛āĨā¤Ą ā¤ā¤° ⤏ā¤ā¤¤āĨ ā¤šāĨā¤āĨ¤ ā¤āĨā¤Ēā¤¯ā¤ž ā¤ŽāĨā¤āĨ ⤍ā¤ŋā¤āĨ ā¤āĨā¤ ā¤ŽāĨ⤠ā¤ļāĨ⤰āĨ ā¤ā¤°āĨā¤āĨ¤"
+song_2 : "**ā¤ā¤Ē⤝āĨā¤:**\n\n/ā¤āĨ⤤ [⤏ā¤ā¤āĨ⤤ ā¤ā¤ž ā¤¨ā¤žā¤Ž] ā¤¯ā¤ž [⤝āĨā¤āĨ⤝āĨā¤Ŧ ⤞ā¤ŋā¤ā¤]"
+song_3 : "ā¤˛ā¤žā¤ā¤ĩ ⤞ā¤ŋā¤ā¤ ā¤ā¤ž ā¤Ēā¤¤ā¤ž ā¤ā¤˛ā¤žāĨ¤ ā¤ŽāĨā¤ ā¤˛ā¤žā¤ā¤ĩ ⤝āĨā¤āĨ⤝āĨā¤Ŧ ā¤ĩāĨā¤Ąā¤ŋ⤝āĨ ā¤Ąā¤žā¤ā¤¨ā¤˛āĨā¤Ą ā¤¨ā¤šāĨ⤠ā¤ā¤° ā¤Ēā¤ž ā¤°ā¤šā¤ž ā¤šāĨā¤āĨ¤"
+song_4 : "**đā¤ļāĨ⤰āĨ⤎ā¤:**- {0}\n\nā¤ā¤¸ ā¤ĒāĨ⤰ā¤ā¤žā¤° ā¤ā¤ž ā¤ā¤¯ā¤¨ ā¤ā¤°āĨ⤠ā¤ā¤ŋā¤¸ā¤ŽāĨ⤠ā¤ā¤Ē ā¤Ąā¤žā¤ā¤¨ā¤˛āĨā¤Ą ā¤ā¤°ā¤¨ā¤ž ā¤ā¤žā¤šā¤¤āĨ ā¤šāĨā¤āĨ¤"
+song_5 : "ā¤Žā¤žā¤¨āĨ⤝ Youtube ⤞ā¤ŋā¤ā¤ ā¤¨ā¤šāĨā¤ ā¤šāĨ"
+song_6 : "ā¤Ģā¤ŧāĨ⤰āĨā¤ŽāĨā¤ ā¤Žā¤ŋ⤞ ā¤°ā¤šāĨ ā¤šāĨā¤.. \n\nā¤āĨā¤Ēā¤¯ā¤ž ā¤ĒāĨ⤰⤤āĨā¤āĨā¤ˇā¤ž ā¤ā¤°āĨā¤.."
+song_7 : "ā¤ĩāĨā¤Ąā¤ŋ⤝āĨ ā¤āĨ ⤞ā¤ŋ⤠ā¤ā¤Ē⤞ā¤ŦāĨ⤧ ā¤ĒāĨā¤°ā¤žā¤°āĨā¤Ē ā¤ĒāĨā¤°ā¤žā¤ĒāĨ⤤ ā¤ā¤°ā¤¨āĨ ā¤ŽāĨ⤠ā¤ĩā¤ŋā¤Ģ⤞āĨ¤ ā¤āĨā¤Ēā¤¯ā¤ž ā¤āĨ⤠ā¤
⤍āĨ⤝ ā¤āĨ⤰āĨ⤠ā¤ā¤ā¤ŧā¤Žā¤žā¤ā¤āĨ¤"
+song_8 : "ā¤Ąā¤žā¤ā¤¨ā¤˛āĨā¤Ą ā¤ļāĨ⤰āĨ ā¤šāĨā¤\n\nā¤Ąā¤žā¤ā¤¨ā¤˛āĨā¤Ą ā¤ā¤°ā¤¨āĨ ā¤āĨ ā¤ā¤¤ā¤ŋ ⤧āĨā¤ŽāĨ ā¤šāĨ ⤏ā¤ā¤¤āĨ ā¤šāĨāĨ¤ ā¤āĨā¤Ēā¤¯ā¤ž ā¤Ēā¤ā¤ĄāĨ ⤰ā¤āĨ.."
+song_9 : "Youtube-DL ⤏āĨ ā¤ā¤žā¤¨ā¤ž ā¤Ąā¤žā¤ā¤¨ā¤˛āĨā¤Ą ā¤ā¤°ā¤¨āĨ ā¤ŽāĨ⤠ā¤ĩā¤ŋā¤Ģ⤞\n\n**ā¤ā¤žā¤°ā¤Ŗ:** {0}"
+song_10 : "⤏⤰āĨā¤ĩ⤰ ⤏āĨ ā¤āĨ⤞āĨā¤āĨā¤°ā¤žā¤Ž ā¤Ē⤰ ā¤
ā¤Ē⤞āĨā¤Ą ā¤ā¤°ā¤¨āĨ ā¤ŽāĨ⤠ā¤ĩā¤ŋā¤Ģ⤞āĨ¤"
+song_11 : "ā¤
ā¤Ē⤞āĨā¤Ąā¤ŋā¤ā¤ ā¤ĒāĨā¤°ā¤žā¤°ā¤ā¤\n\nā¤
ā¤Ē⤞āĨā¤Ąā¤ŋā¤ā¤ ā¤ā¤¤ā¤ŋ ⤧āĨā¤ŽāĨ ā¤šāĨ ⤏ā¤ā¤¤āĨ ā¤šāĨāĨ¤ ā¤āĨā¤Ēā¤¯ā¤ž ā¤Ēā¤ā¤ĄāĨ ⤰ā¤āĨ.."
+
+# Tools - Queue
+queue_1 : "ā¤āĨā¤Ēā¤¯ā¤ž ā¤ĒāĨ⤰⤤āĨā¤āĨā¤ˇā¤ž ā¤ā¤°āĨā¤..ā¤ā¤¤ā¤žā¤° ā¤˛ā¤žā¤ ā¤ā¤ž ā¤°ā¤šāĨ ā¤šāĨ.."
+queue_2 : "ā¤ā¤¤ā¤žā¤° ā¤āĨ ā¤
ā¤ā¤Ļ⤰ ā¤āĨ⤠ā¤āĨ⤰āĨā¤ ā¤¨ā¤šāĨā¤ ā¤šāĨāĨ¤"
+queue_3 : "**ā¤Ēā¤ā¤āĨ⤤ā¤ŋā¤Ŧā¤ĻāĨ⤧ ā¤āĨ⤰āĨā¤: ** [ā¤¯ā¤šā¤žā¤ ā¤¸āĨ ā¤
⤧ā¤ŋ⤠ā¤ā¤¤ā¤žā¤°ā¤Ŧā¤ĻāĨ⤧ ā¤āĨ⤰āĨ⤠ā¤ĻāĨā¤āĨā¤]({0})"
+queue_4 : "âŗ ā¤ā¤¤ā¤žā¤° ā¤ŽāĨ⤠ā¤āĨā¤Ąā¤ŧā¤ž ā¤ā¤¯ā¤ž **#{0}\n\nđĄā¤ļāĨ⤰āĨ⤎ā¤:** {1}\n**âąā¤
ā¤ĩ⤧ā¤ŋ:** {2}\nđ¤**ā¤ĻāĨā¤ĩā¤žā¤°ā¤ž ā¤āĨā¤Ąā¤ŧā¤ž ā¤ā¤¯ā¤ž:** {3}"
+
+# All Streaming Lines
+stream_1 : "đĄ **⤏āĨā¤āĨ⤰āĨā¤Žā¤ŋā¤ā¤ ā¤ļāĨ⤰āĨ ā¤āĨ** \n\nđ¤**ā¤ĻāĨā¤ĩā¤žā¤°ā¤ž ā¤
⤍āĨ⤰āĨ⤧ ā¤ā¤ŋā¤¯ā¤ž ā¤ā¤¯ā¤ž:** {0}\nđĻ**ā¤ā¤žā¤¨ā¤ā¤žā¤°āĨ: **[ā¤¯ā¤šā¤žā¤]({1})"
+stream_2 : "đĄ **⤝āĨā¤ā¤°ā¤ā¤˛ ā¤āĨ ā¤Žā¤žā¤§āĨā¤¯ā¤Ž ⤏āĨ ⤏āĨā¤āĨ⤰āĨā¤Žā¤ŋā¤ā¤ ā¤ļāĨ⤰āĨ ā¤āĨ ** đĄ\n\nđ¤**ā¤ĻāĨā¤ĩā¤žā¤°ā¤ž ā¤
⤍āĨ⤰āĨ⤧ ā¤ā¤ŋā¤¯ā¤ž ā¤ā¤¯ā¤ž:** {0}"
+stream_3 : "đĄ **⤏āĨā¤āĨ⤰āĨā¤Žā¤ŋā¤ā¤ ā¤ļāĨ⤰āĨ ā¤āĨ** đĄ\n\n**đˇā¤ļāĨ⤰āĨ⤎ā¤:** {0}\nâī¸**ā¤
ā¤ĩ⤧ā¤ŋ**: {1}\nđ¤**ā¤ĻāĨā¤ĩā¤žā¤°ā¤ž ā¤
⤍āĨ⤰āĨ⤧ ā¤ā¤ŋā¤¯ā¤ž ā¤ā¤¯ā¤ž:** {2}"
+stream_4 : "đĄ **⤏āĨā¤āĨ⤰āĨā¤Žā¤ŋā¤ā¤ ā¤ļāĨ⤰āĨ ā¤āĨ** đĄ\n\n**đˇā¤ļāĨ⤰āĨ⤎ā¤:** [{0}]({1})\nâī¸**ā¤
ā¤ĩ⤧ā¤ŋ**: {2}\nđ¤**ā¤ĻāĨā¤ĩā¤žā¤°ā¤ž ā¤
⤍āĨ⤰āĨ⤧ ā¤ā¤ŋā¤¯ā¤ž ā¤ā¤¯ā¤ž:* * {3}"
+
+# Inline Buttons
+
+#General Buttons
+CLOSE_BUTTON : "ā¤Ŧā¤ā¤Ļ ā¤ā¤°āĨā¤"
+CLOSEMENU_BUTTON : "ā¤ŽāĨ⤍āĨ ā¤Ŧā¤ā¤Ļ ā¤ā¤°āĨā¤"
+BACK_BUTTON : "âŦ
ā¤ĒāĨā¤āĨ"
+UNBAN_BUTTON : "đ ā¤
ā¤ĒāĨ⤰⤤ā¤ŋā¤Ŧā¤ā¤§ā¤ŋ⤤ ā¤¸ā¤šā¤žā¤¯ā¤"
+
+#Lyrics
+L_B_1 : "đ ā¤āĨā¤ā¤ā¤ā¤ ⤞ā¤ŋ⤰ā¤ŋā¤āĨ⤏"
+
+# Start
+S_B_1 : "đ ā¤ā¤ĻāĨā¤ļ"
+S_B_2 : "đ§ ā¤¸ā¤Žā¤žā¤¯āĨā¤ā¤¨"
+S_B_3 : "đ¨ ā¤¸ā¤šā¤žā¤¯ā¤¤ā¤ž"
+S_B_4 : "đ¨ ā¤āĨ⤍⤞"
+S_B_5 : "â ā¤ŽāĨā¤āĨ ā¤
ā¤Ē⤍āĨ ā¤āĨ⤰āĨā¤Ē ā¤ŽāĨ⤠ā¤āĨā¤Ąā¤ŧāĨā¤"
+S_B_6 : "đĄ ā¤ā¤ŋ⤠⤰āĨā¤ĒāĨ"
+S_B_7 : "đ¤ ā¤ŦāĨ⤠ā¤ā¤¨ā¤°"
+S_B_8 : "đ ā¤āĨ⤏āĨ ā¤ā¤¸āĨ⤤āĨā¤Žā¤žā¤˛ ā¤ā¤°āĨ? ā¤ā¤Žā¤žā¤ā¤Ą ā¤ŽāĨ⤍āĨāĨ¤"
+
+#Help
+H_B_1 : "ā¤ĩāĨ⤝ā¤ĩ⤏āĨā¤Ĩā¤žā¤Ē⤠ā¤ā¤ĻāĨā¤ļ"
+H_B_2 : "ā¤ĒāĨ⤞āĨ ā¤ā¤Žā¤žā¤ā¤Ą"
+H_B_3 : "ā¤ŦāĨ⤠ā¤ā¤Žā¤žā¤ā¤Ą"
+H_B_4 : "ā¤
⤤ā¤ŋ⤰ā¤ŋā¤āĨ⤤ ā¤ā¤Žā¤žā¤ā¤Ą"
+H_B_5 : "ā¤ŽāĨ⤍āĨ ā¤Ŧā¤ā¤Ļ ā¤ā¤°āĨā¤"
+H_B_6 : "⤏āĨā¤ĄāĨ ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž ā¤ā¤Žā¤žā¤ā¤Ą"
+
+#PlayMode
+PM_B_1 : "ā¤Ąā¤žā¤¯ā¤°āĨā¤āĨā¤ā¤ĒāĨ⤞āĨ"
+PM_B_2 : "ā¤ā¤¨ā¤˛ā¤žā¤ā¤¨ ā¤Žā¤žā¤°āĨā¤ā¤
ā¤Ē"
+PM_B_3 : "ā¤āĨ⤍⤞ā¤ĒāĨ⤞āĨ"
+
+#Play
+P_B_1 : "đĩ ā¤ā¤Ąā¤ŋ⤝āĨ ā¤ā¤˛ā¤žā¤ā¤"
+P_B_2 : "đĨ ā¤ĩāĨā¤Ąā¤ŋ⤝āĨ ā¤ā¤˛ā¤žā¤ā¤"
+P_B_3 : "đŽ ā¤˛ā¤žā¤ā¤ĩ⤏āĨā¤āĨ⤰āĨā¤Ž ā¤ļāĨ⤰āĨ ā¤ā¤°āĨā¤"
+P_B_4 : "đĩ ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨ⤠ā¤ā¤˛ā¤žā¤ā¤"
+
+#Playlist
+PL_B_1 : "đ ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨ⤠ā¤ā¤˛ā¤žā¤ā¤"
+PL_B_2 : "â ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨā¤"
+PL_B_3 : "â ā¤
⤤ā¤ŋ⤰ā¤ŋā¤āĨ⤤"
+PL_B_4 : "đĄ ā¤āĨ⤞ ā¤ĩā¤ŋā¤§ā¤ž"
+PL_B_5 : "đ ā¤ĄāĨ⤞ ā¤ĒāĨ⤰āĨ ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨā¤"
+PL_B_6 : "âī¸ ā¤ĒāĨ⤞āĨ⤞ā¤ŋ⤏āĨā¤ ā¤šā¤ā¤žā¤ā¤"
+PL_B_7 : "âī¸ ā¤šā¤žā¤ ā¤ŽāĨā¤āĨ ⤝ā¤āĨ⤍ ā¤šāĨāĨ¤ ā¤ā¤¸āĨ ā¤šā¤ā¤ž"
+PL_B_8 : "đĸ ā¤ļāĨ⤰āĨ⤎ 10 ā¤āĨ⤞āĨā¤"
+PL_B_9 : "đ¤ ā¤ĩāĨā¤ļāĨā¤ĩā¤ŋ⤠ā¤ļāĨ⤰āĨ⤎ 10 ā¤āĨ⤰āĨ⤠ā¤ā¤˛ā¤žā¤ā¤"
+PL_B_10 : "đ ā¤¸ā¤ŽāĨā¤š ā¤āĨ ā¤ļāĨ⤰āĨ⤎ 10 ā¤āĨ⤰āĨ⤠ā¤ā¤˛ā¤žā¤ā¤"
+PL_B_11 : "đ¤ ā¤ĩāĨ⤝ā¤āĨ⤤ā¤ŋā¤ā¤¤ ā¤ļāĨ⤰āĨ⤎ 10 ā¤āĨ⤰āĨ⤠ā¤ā¤˛ā¤žā¤ā¤"
+
+#Settings
+ST_B_1 : "đ ā¤ā¤Ąā¤ŋ⤝āĨ ā¤āĨ⤪ā¤ĩ⤤āĨā¤¤ā¤ž"
+ST_B_2 : "đĨ ā¤ĩāĨā¤Ąā¤ŋ⤝āĨ ā¤āĨ⤪ā¤ĩ⤤āĨā¤¤ā¤ž"
+ST_B_3 : "đŠ ā¤ĒāĨā¤°ā¤žā¤Žā¤žā¤Ŗā¤ŋ⤠ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž"
+ST_B_4 : "đą ā¤ĄāĨā¤ļā¤ŦāĨ⤰āĨā¤Ą"
+ST_B_5 : "âļī¸ ā¤āĨ⤞ ā¤ĩā¤ŋā¤§ā¤ž"
+ST_B_6 : "đŗī¸âđ ā¤ā¤žā¤ˇā¤ž"
+ST_B_7 : "đ ⤏āĨā¤ĩā¤āĨā¤ ā¤ŽāĨā¤Ą"
+ST_B_8 : "{0} ā¤ā¤Ž ā¤āĨ⤪ā¤ĩ⤤āĨā¤¤ā¤ž ā¤ā¤Ąā¤ŋ⤝āĨ"
+ST_B_9 : "{0} ā¤Žā¤§āĨā¤¯ā¤Ž ā¤āĨ⤪ā¤ĩ⤤āĨā¤¤ā¤ž ā¤ā¤Ąā¤ŋ⤝āĨ"
+ST_B_10 : "{0} ā¤ā¤āĨ⤠ā¤āĨ⤪ā¤ĩ⤤āĨā¤¤ā¤ž ā¤ā¤Ąā¤ŋ⤝āĨ"
+ST_B_11 : "{0} ⤍ā¤ŋā¤ŽāĨ⤍ ā¤āĨ⤪ā¤ĩ⤤āĨā¤¤ā¤ž ā¤ĩāĨā¤Ąā¤ŋ⤝āĨ"
+ST_B_12 : "{0} ā¤Žā¤§āĨā¤¯ā¤Ž ā¤āĨ⤪ā¤ĩ⤤āĨā¤¤ā¤ž ā¤ĩāĨā¤Ąā¤ŋ⤝āĨ"
+ST_B_13 : "{0} ā¤ā¤āĨ⤠ā¤āĨ⤪ā¤ĩ⤤āĨā¤¤ā¤ž ā¤ĩāĨā¤Ąā¤ŋ⤝āĨ"
+ST_B_14 : "â
⤏ā¤āĨ⤰ā¤ŋ⤝"
+ST_B_15 : "â ā¤ĩā¤ŋā¤ā¤˛ā¤žā¤ā¤"
+ST_B_16 : "đ¤ Admin"
+ST_B_17 : "đĨ Everyone"
+ST_B_18 : "đ ā¤
⤧ā¤ŋā¤āĨ⤤ ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž ⤏āĨā¤ā¤ŋā¤¯ā¤žā¤"
+ST_B_19 : "đ ā¤āĨā¤ ā¤ŽāĨā¤Ą"
+ST_B_20 : "â
Direct"
+ST_B_21 : "â
Inline"
+ST_B_22 : "đ¨ââī¸ Admin Commands"
+ST_B_23 : "đ Group"
+ST_B_24 : "đˇ Channel"
+ST_B_25 : "đĢ ā¤ĒāĨ⤞āĨ ā¤ā¤žā¤ā¤Ē"
+ST_B_26 : "đ ā¤ā¤Žā¤žā¤ā¤Ą ā¤āĨ⤞āĨ⤍"
+
+#Song
+SG_B_1 : "âī¸ ā¤¨ā¤ŋā¤āĨ ā¤āĨ⤠ā¤āĨ⤞āĨā¤"
+SG_B_2 : "đ ā¤ā¤Ąā¤ŋ⤝āĨ"
+SG_B_3 : "đĨ ā¤ĩāĨā¤Ąā¤ŋ⤝āĨ"
+
+#Stats
+SA_B_1 : "đĸ ā¤āĨā¤Ē 10 ā¤āĨā¤"
+SA_B_2 : "đĸ ā¤ļāĨ⤰āĨ⤎ 10 ā¤āĨ⤰āĨā¤"
+SA_B_3 : "đ§ ā¤ļāĨ⤰āĨ⤎ 10 ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž"
+SA_B_4 : "đˇ ā¤¯ā¤šā¤žā¤ ā¤ļāĨ⤰āĨ⤎ 10"
+SA_B_5 : "đĄ ā¤āĨ⤞ ā¤ā¤ā¤ā¤Ąā¤ŧāĨ"
+SA_B_6 : "đ¤ ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž ā¤ā¤ā¤ā¤Ąā¤ŧāĨ"
+SA_B_7 : "đĸ ā¤ĩāĨā¤ļāĨā¤ĩā¤ŋ⤠ā¤ļāĨ⤰āĨ⤎ 10 ā¤ā¤ā¤ā¤Ąā¤ŧāĨ"
+SA_B_8 : "đ¤ ā¤ŦāĨ⤠ā¤ā¤ā¤ā¤Ąā¤ŧāĨ"
+
+
+
+# Sudo Users [ If you are translating this to some other language .. you can leave all these strings in english language]
+
+#Sudo
+sudo_1 : "{0} ā¤Ēā¤šā¤˛āĨ ⤏āĨ ā¤šāĨ ā¤ā¤ sudo ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž ā¤šāĨāĨ¤"
+sudo_2 : "⤏āĨā¤ĄāĨ ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤žā¤ā¤ ā¤āĨ ⤞ā¤ŋ⤠***** ā¤āĨā¤Ąā¤ŧā¤ž ā¤ā¤¯ā¤žāĨ¤"
+sudo_3 : "ā¤ŦāĨ⤠ā¤āĨ ⤏āĨā¤ĄāĨ ā¤ā¤ž ā¤šā¤ŋ⤏āĨā¤¸ā¤ž ā¤¨ā¤šāĨā¤ ā¤šāĨāĨ¤"
+sudo_4 : "ā¤ŦāĨ⤠ā¤āĨ ⤏āĨā¤ĄāĨ ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž ⤏āĨ ā¤šā¤ā¤žā¤¯ā¤ž ā¤ā¤¯ā¤ž"
+sudo_5 : "âī¸ **ā¤Žā¤žā¤˛ā¤ŋā¤:** \n"
+sudo_6 : "\nâī¸ **⤏āĨā¤ĄāĨ ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž:** \n"
+sudo_7 : "ā¤āĨ⤠⤏āĨā¤ĄāĨ ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž ā¤¨ā¤šāĨā¤"
+
+#Block
+block_1 : "{0} ā¤Ēā¤šā¤˛āĨ ⤏āĨ ā¤šāĨ ā¤ŦāĨ⤠⤏āĨ ā¤
ā¤ĩ⤰āĨā¤ĻāĨ⤧ ā¤šāĨāĨ¤"
+block_2 : "**{0}** ā¤āĨ ā¤ŦāĨ⤠ā¤āĨ ā¤ŦāĨ⤞āĨ⤠⤏āĨā¤āĨ ā¤ŽāĨ⤠ā¤āĨā¤Ąā¤ŧā¤ž ā¤ā¤¯ā¤žāĨ¤ ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž ā¤
ā¤Ŧ ā¤ā¤ŋ⤏āĨ ā¤āĨ ⤏āĨā¤Ĩā¤ŋ⤤ā¤ŋ ā¤ŽāĨ⤠ā¤ŦāĨ⤠ā¤ā¤ž ā¤ā¤Ē⤝āĨā¤ ā¤¨ā¤šāĨ⤠ā¤ā¤° ā¤Ēā¤žā¤ā¤ā¤žāĨ¤\n\nā¤
ā¤ĩ⤰āĨā¤ĻāĨ⤧ ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤žā¤ā¤ ā¤āĨ ā¤ā¤žā¤ā¤ ā¤ā¤°āĨā¤: /ā¤
ā¤ĩ⤰āĨā¤ĻāĨ⤧ ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž"
+block_3 : "ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž ā¤Ēā¤šā¤˛āĨ ⤏āĨ ā¤šāĨ ā¤ŽāĨā¤Ģā¤ŧāĨ⤤ ā¤šāĨ ā¤ā¤° ā¤
ā¤ĩ⤰āĨā¤ĻāĨ⤧ ā¤¨ā¤šāĨā¤ ā¤šāĨāĨ¤"
+block_4 : "ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž ā¤āĨ ā¤ŦāĨ⤞āĨ⤠⤏āĨā¤āĨ ⤏āĨ ā¤šā¤ā¤žā¤¯ā¤ž ā¤ā¤¯ā¤žāĨ¤ ⤝āĨā¤ā¤° ā¤
ā¤Ŧ ā¤ŦāĨ⤠ā¤ā¤ž ā¤ā¤¸āĨ⤤āĨā¤Žā¤žā¤˛ ā¤ā¤° ⤏ā¤āĨā¤ā¤žāĨ¤"
+block_5 : "ā¤āĨ⤠ā¤
ā¤ĩ⤰āĨā¤ĻāĨ⤧ ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž ā¤¨ā¤šāĨā¤ ā¤Žā¤ŋā¤˛ā¤ž"
+block_6 : "ā¤
ā¤ĩ⤰āĨā¤ĻāĨ⤧ ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž ⤏āĨā¤āĨ ā¤ĒāĨā¤°ā¤žā¤ĒāĨ⤤ ā¤ā¤°ā¤¨ā¤ž.. ā¤āĨā¤Ēā¤¯ā¤ž ā¤ĒāĨ⤰⤤āĨā¤āĨā¤ˇā¤ž ā¤ā¤°āĨā¤"
+block_7 : "**ā¤
ā¤ĩ⤰āĨā¤ĻāĨ⤧ ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž:**\n\n"
+
+#Blacklist Chats
+black_1 : "**ā¤ā¤Ē⤝āĨā¤:**\n/ā¤ŦāĨ⤞āĨ⤠⤞ā¤ŋ⤏āĨ⤠ā¤āĨ⤠[CHAT_ID]"
+black_2 : "ā¤āĨ⤠ā¤Ēā¤šā¤˛āĨ ⤏āĨ ā¤šāĨ ā¤ŦāĨ⤞āĨ⤠⤞ā¤ŋ⤏āĨā¤āĨā¤Ą ā¤šāĨāĨ¤"
+black_3 : "ā¤āĨ⤠ā¤āĨ ⤏ā¤Ģā¤˛ā¤¤ā¤žā¤ĒāĨ⤰āĨā¤ĩ⤠ā¤ŦāĨ⤞āĨā¤ā¤˛ā¤ŋ⤏āĨ⤠ā¤ā¤° ā¤Ļā¤ŋā¤¯ā¤ž ā¤ā¤¯ā¤ž ā¤šāĨ"
+black_4 : "**ā¤ā¤Ē⤝āĨā¤:**\n/ā¤ļāĨā¤ĩāĨ⤤⤏āĨā¤āĨā¤āĨ⤠[CHAT_ID]"
+black_5 : "ā¤āĨ⤠ā¤Ēā¤šā¤˛āĨ ⤏āĨ ā¤šāĨ ā¤ļāĨā¤ĩāĨ⤤⤏āĨā¤āĨ ā¤ŽāĨā¤ ā¤šāĨāĨ¤"
+black_6 : "ā¤āĨ⤠ā¤āĨ ⤏ā¤Ģā¤˛ā¤¤ā¤žā¤ĒāĨ⤰āĨā¤ĩ⤠ā¤ļāĨā¤ĩāĨ⤤⤏āĨā¤āĨ ā¤ŽāĨā¤ ā¤Ąā¤žā¤˛ ā¤Ļā¤ŋā¤¯ā¤ž ā¤ā¤¯ā¤ž ā¤šāĨ"
+black_7 : "**ā¤ŦāĨ⤞āĨ⤠⤞ā¤ŋ⤏āĨā¤āĨā¤Ą ā¤āĨā¤āĨ⤏:**\n\n"
+black_8 : "ā¤āĨ⤠ā¤ŦāĨ⤞āĨā¤ā¤˛ā¤ŋ⤏āĨā¤āĨā¤Ą ā¤āĨā¤ ā¤¨ā¤šāĨā¤"
+
+#videolimit
+vid_1 : "**ā¤ā¤Ē⤝āĨā¤:**\n/set_video_limit [ā¤āĨ⤠ā¤āĨ ⤏ā¤ā¤āĨā¤¯ā¤ž ā¤āĨ ā¤
⤍āĨā¤Žā¤¤ā¤ŋ ā¤šāĨ] ā¤¯ā¤ž [ā¤
ā¤āĨā¤ˇā¤Ž ā¤ā¤°āĨā¤]"
+vid_2 : "ā¤āĨā¤Ēā¤¯ā¤ž ⤏āĨā¤Žā¤ž ⤍ā¤ŋ⤰āĨā¤§ā¤žā¤°ā¤ŋ⤤ ā¤ā¤°ā¤¨āĨ ā¤āĨ ⤞ā¤ŋ⤠⤏ā¤ā¤āĨā¤¯ā¤žā¤¤āĨā¤Žā¤ ā¤¸ā¤ā¤āĨā¤¯ā¤žā¤ā¤ ā¤ā¤ž ā¤ĒāĨ⤰⤝āĨ⤠ā¤ā¤°āĨā¤āĨ¤"
+vid_3 : "ā¤ĩāĨā¤Ąā¤ŋ⤝āĨ ā¤āĨ⤞ ā¤āĨ ā¤
⤧ā¤ŋā¤ā¤¤ā¤Ž ⤏āĨā¤Žā¤ž {0} ā¤āĨ⤠ā¤āĨ ⤞ā¤ŋ⤠⤍ā¤ŋ⤰āĨā¤§ā¤žā¤°ā¤ŋ⤤ ā¤šāĨāĨ¤"
+vid_4 : "ā¤ĩāĨā¤Ąā¤ŋ⤝āĨ ā¤āĨ⤞ ā¤
ā¤āĨā¤ˇā¤Ž"
+
+#maintenance
+maint_1 : "**ā¤ā¤Ē⤝āĨā¤:**\n/⤰ā¤ā¤°ā¤ā¤žā¤ĩ [⤏ā¤āĨā¤ˇā¤Ž ā¤ā¤°āĨā¤|ā¤
ā¤āĨā¤ˇā¤Ž ā¤ā¤°āĨā¤]"
+maint_2 : "⤰ā¤ā¤°ā¤ā¤žā¤ĩ ā¤āĨ ⤞ā¤ŋ⤠⤏ā¤āĨā¤ˇā¤Ž"
+maint_3 : "⤰ā¤ā¤°ā¤ā¤žā¤ĩ ā¤ŽāĨā¤Ą ā¤
ā¤āĨā¤ˇā¤Ž"
+
+#log
+log_1 : "**ā¤ā¤Ē⤝āĨā¤:**\n/⤞āĨā¤ā¤° [⤏ā¤āĨā¤ˇā¤Ž ā¤ā¤°āĨā¤|ā¤
ā¤āĨā¤ˇā¤Ž ā¤ā¤°āĨā¤]"
+log_2 : "⤏ā¤āĨā¤ˇā¤Ž ⤞āĨā¤ā¤ŋā¤ā¤"
+log_3 : "⤞āĨā¤ā¤ŋā¤ā¤ ā¤
ā¤āĨā¤ˇā¤Ž"
+
+#videomode
+vidmode_1 : "**ā¤ā¤Ē⤝āĨā¤:**\n/ā¤ĩāĨā¤Ąā¤ŋ⤝āĨ ā¤ŽāĨā¤Ą [ā¤Ąā¤žā¤ā¤¨ā¤˛āĨā¤Ą|m3u8]"
+vidmode_2 : "ā¤ĩāĨā¤Ąā¤ŋ⤝āĨ ā¤ĒāĨ⤞āĨ ā¤ŽāĨā¤Ą ā¤Ąā¤žā¤ā¤¨ā¤˛āĨā¤Ąā¤° ā¤āĨ ⤰āĨā¤Ē ā¤ŽāĨ⤠⤏āĨā¤ ā¤šāĨāĨ¤ ā¤ŦāĨ⤠ā¤
ā¤Ŧ ā¤āĨ⤰āĨā¤ ā¤Ąā¤žā¤ā¤¨ā¤˛āĨā¤Ą ā¤ā¤° ā¤°ā¤šā¤ž ā¤šāĨā¤ā¤žāĨ¤"
+vidmode_3 : "ā¤ĩāĨā¤Ąā¤ŋ⤝āĨ ā¤ĒāĨ⤞āĨ ā¤ŽāĨā¤Ą ā¤āĨ m3u8 ā¤āĨ ⤰āĨā¤Ē ā¤ŽāĨ⤠⤏āĨ⤠ā¤ā¤ŋā¤¯ā¤ž ā¤ā¤¯ā¤ž ā¤šāĨāĨ¤ ā¤ŦāĨ⤠ā¤
ā¤Ŧ ā¤˛ā¤žā¤ā¤ĩ ā¤ĒāĨ⤞āĨ ā¤āĨ⤰āĨā¤ ā¤šāĨā¤ā¤āĨāĨ¤"
+
+#broadcast
+broad_1 : "**ā¤ŦāĨ⤠⤏āĨ {1} ā¤Ēā¤ŋ⤍ ā¤āĨ ā¤¸ā¤žā¤Ĩ {0} ā¤āĨā¤ ā¤ŽāĨ⤠ā¤ĒāĨā¤°ā¤¸ā¤žā¤°ā¤ŋ⤤ ⤏ā¤ā¤ĻāĨā¤ļāĨ¤**"
+broad_2 : "ā¤¸ā¤šā¤žā¤¯ā¤ ā¤ĒāĨā¤°ā¤¸ā¤žā¤°ā¤Ŗ ā¤ĒāĨā¤°ā¤žā¤°ā¤ā¤ ā¤ā¤ŋā¤¯ā¤ž ā¤ā¤¯ā¤ž..."
+broad_3 : "**ā¤¸ā¤šā¤žā¤¯ā¤ ā¤ĒāĨā¤°ā¤¸ā¤žā¤°ā¤Ŗ:**\n\n"
+broad_4 : "Assistant {0} Broadcasted in {1} chats\n"
+broad_5 : "**Usage**:\n/broadcast [MESSAGE] or [Reply to a Message]"
+broad_6 : "Please provide some text to broadcast."
+broad_7 : "**Broadcasted Message to {0} Users.**"
+
+#Heroku
+heroku_1 : "ā¤āĨā¤Ēā¤¯ā¤ž ⤏āĨ⤍ā¤ŋā¤ļāĨā¤ā¤ŋ⤤ ā¤ā¤°āĨ⤠ā¤ā¤ŋ ā¤ā¤Ēā¤āĨ ā¤šāĨ⤰āĨā¤āĨ ā¤ā¤ĒāĨā¤ā¤ ā¤āĨā¤ā¤āĨ, ā¤ā¤Ēā¤ā¤ž ā¤ā¤Ē ā¤¨ā¤žā¤Ž ā¤ā¤¸ā¤āĨāĨā¤āĨ ā¤ŽāĨā¤ ā¤¸ā¤šāĨ ā¤ĸā¤ā¤ ⤏āĨ ā¤āĨ⤍āĨā¤Ģā¤ŧā¤ŋā¤ā¤° ā¤ā¤ŋā¤¯ā¤ž ā¤ā¤¯ā¤ž ā¤šāĨ"
+heroku_2 : "ā¤ā¤Ē ā¤āĨā¤ĩ⤞ Heroku Apps ā¤āĨ ⤞āĨ⤠ā¤ĒāĨā¤°ā¤žā¤ĒāĨ⤤ ā¤ā¤° ⤏ā¤ā¤¤āĨ ā¤šāĨā¤"
+heroku_3 : "**ā¤ā¤Ē⤝āĨā¤:**\n/get_var [ā¤ĩ⤰ ā¤¨ā¤žā¤Ž]"
+heroku_4 : "ā¤ā¤¸ā¤ž ā¤āĨ⤠ā¤āĨ ⤏ā¤ā¤¸āĨā¤ā¤°ā¤Ŗ ā¤āĨā¤ā¤¨āĨ ā¤ŽāĨ⤠ā¤
ā¤¸ā¤Žā¤°āĨā¤ĨāĨ¤"
+heroku_5 : ".env ā¤Ģā¤ŧā¤žā¤ā¤˛ ā¤¨ā¤šāĨā¤ ā¤Žā¤ŋ⤞āĨāĨ¤"
+heroku_6 : "**ā¤ā¤Ē⤝āĨā¤:**\n/del_var [ā¤ĩ⤰ ā¤¨ā¤žā¤Ž]"
+heroku_7 : "{0} ā¤šā¤ā¤ž ā¤Ļā¤ŋā¤¯ā¤ž ā¤ā¤¯ā¤žāĨ¤"
+heroku_8 : "**ā¤ā¤Ē⤝āĨā¤:**\n/set_var [ā¤ĩ⤰ ā¤¨ā¤žā¤Ž] [ā¤ĩ⤰ ā¤Žā¤žā¤¨]"
+heroku_9 : "{0} ⤏ā¤Ģā¤˛ā¤¤ā¤žā¤ĒāĨ⤰āĨā¤ĩ⤠ā¤
ā¤Ēā¤ĄāĨ⤠ā¤ā¤° ā¤Ļā¤ŋā¤¯ā¤ž ā¤ā¤¯ā¤ž ā¤šāĨ"
+heroku_10 : "{0} ⤏ā¤Ģā¤˛ā¤¤ā¤žā¤ĒāĨ⤰āĨā¤ĩ⤠ā¤āĨā¤Ąā¤ŧ ā¤Ļā¤ŋā¤¯ā¤ž ā¤ā¤¯ā¤ž ā¤šāĨ"
+heroku_11 : "ā¤āĨā¤ĩ⤞ ā¤šā¤°āĨā¤āĨ ā¤ā¤ĒāĨ⤏ ā¤āĨ ⤞ā¤ŋā¤"
+heroku_12 : "ā¤šā¤°āĨā¤āĨ ā¤ā¤Ē⤝āĨ⤠ā¤āĨ ā¤ā¤žā¤ā¤ ā¤ā¤°ā¤¨ā¤žāĨ¤ ā¤āĨā¤Ēā¤¯ā¤ž ā¤ĒāĨ⤰⤤āĨā¤āĨā¤ˇā¤ž ā¤ā¤°āĨā¤"
+heroku_13 : "ā¤ā¤Ē⤞ā¤ŦāĨ⤧ ā¤
ā¤Ēā¤ĄāĨ⤠ā¤āĨ ā¤ā¤žā¤ā¤ ā¤āĨ ā¤ā¤ž ā¤°ā¤šāĨ ā¤šāĨ..."
+heroku_14 : "ā¤ā¤ŋ⤠ā¤ā¤Žā¤žā¤ā¤Ą ⤤āĨ⤰āĨā¤ā¤ŋ"
+heroku_15 : "ā¤
ā¤Žā¤žā¤¨āĨ⤝ ā¤ā¤ŋ⤠⤰ā¤ŋā¤ĒāĨā¤ā¤ŋā¤ā¤°āĨ"
+
+#Private bot mode
+pbot_1 : "**ā¤ā¤Ē⤝āĨā¤:**\n/ā¤
⤧ā¤ŋā¤āĨ⤤ [CHAT_ID]"
+pbot_2 : "**ā¤ā¤Ē⤝āĨā¤:**\n/ā¤
⤍⤧ā¤ŋā¤āĨ⤤ [CHAT_ID]"
+pbot_3 : "ā¤ĻāĨ ā¤ā¤ ā¤āĨ⤠ā¤āĨ ā¤
⤧ā¤ŋā¤āĨ⤤ ⤏āĨā¤āĨ ā¤ŽāĨ⤠ā¤āĨā¤Ąā¤ŧā¤ž ā¤ā¤¯ā¤ž"
+pbot_4 : "ā¤ĻāĨ ā¤ā¤ ā¤āĨ⤠ā¤āĨ ā¤
⤧ā¤ŋā¤āĨ⤤ ⤏āĨā¤āĨ ⤏āĨ ā¤šā¤ā¤žā¤¯ā¤ž ā¤ā¤¯ā¤ž"
+pbot_5 : "ā¤āĨ⤠ā¤Ēā¤šā¤˛āĨ ⤏āĨ ā¤šāĨ ā¤
⤧ā¤ŋā¤āĨ⤤ ⤏āĨā¤āĨ ā¤ŽāĨā¤ ā¤šāĨ"
+pbot_6 : "ā¤
⤧ā¤ŋā¤āĨ⤤ ⤏āĨā¤āĨ ā¤ŽāĨ⤠ā¤ā¤¸āĨ ā¤āĨ⤠ā¤āĨā¤ ā¤ŽāĨā¤āĨā¤Ļ ā¤¨ā¤šāĨā¤ ā¤šāĨ"
+pbot_7 : "chat_id ⤏⤤āĨā¤¯ā¤žā¤Ēā¤ŋ⤤ ā¤ā¤°ā¤¨āĨ ā¤ŽāĨ⤠ā¤ĩā¤ŋā¤Ģ⤞.\n\n⤏āĨ⤍ā¤ŋā¤ļāĨā¤ā¤ŋ⤤ ā¤ā¤°āĨ⤠ā¤ā¤ŋ ā¤¯ā¤š ā¤
ā¤ā¤āĨ⤝ ā¤ā¤° ā¤¸ā¤šāĨ ā¤ĒāĨā¤°ā¤žā¤°āĨā¤Ē ā¤ŽāĨā¤ ā¤šāĨ. ā¤āĨ⤠ā¤ā¤Ē⤝āĨā¤ā¤ā¤°āĨā¤¤ā¤ž ā¤¨ā¤žā¤Ž ā¤¯ā¤ž ⤞ā¤ŋā¤ā¤ ā¤ā¤ž ā¤ā¤Ē⤝āĨ⤠⤍ ā¤ā¤°āĨā¤āĨ¤"
+pbot_8 : "ā¤āĨā¤Ēā¤¯ā¤ž ā¤ĒāĨ⤰⤤āĨā¤āĨā¤ˇā¤ž ā¤ā¤°āĨā¤.... ā¤
⤧ā¤ŋā¤āĨ⤤ ā¤āĨā¤ ā¤˛ā¤žā¤ ā¤ā¤ž ā¤°ā¤šāĨ ā¤šāĨā¤āĨ¤"
+pbot_9 : "**ā¤ĒāĨā¤°ā¤žā¤ĒāĨ⤤ ā¤āĨā¤: **\n\n"
+pbot_10 : "⤍ā¤ŋā¤āĨ ā¤āĨā¤"
+pbot_11 : "ā¤āĨ⤠ā¤
⤧ā¤ŋā¤āĨ⤤ ā¤āĨā¤ ā¤¨ā¤šāĨā¤ ā¤Žā¤ŋ⤞āĨ"
+pbot_12 : "⤍ā¤ŋā¤āĨ ā¤ŦāĨā¤ ā¤ŽāĨā¤Ą ā¤
ā¤āĨā¤ˇā¤Ž ā¤šāĨāĨ¤\n\nā¤
ā¤Ē⤍āĨ ā¤ŦāĨ⤠ā¤āĨ ⤍ā¤ŋā¤āĨ ā¤ŦāĨ⤠ā¤āĨ ⤰āĨā¤Ē ā¤ŽāĨ⤠ā¤ā¤Ē⤝āĨ⤠ā¤ā¤°ā¤¨āĨ ā¤āĨ ⤞ā¤ŋ⤠**PRIVATE_BOT_MODE** = **ā¤¸ā¤šāĨ** ⤏āĨ⤠ā¤ā¤°ā¤¨ā¤ž ⤏āĨ⤍ā¤ŋā¤ļāĨā¤ā¤ŋ⤤ ā¤ā¤°āĨā¤"
+pbot_13 : "\n**ā¤
⤍ā¤Ģā¤ŧāĨā¤āĨā¤Ą ā¤āĨā¤: **\n\n"
+
+#Gbanned
+gban_1 : "You want to gban yourself? How Fool!"
+gban_2 : "Should i block myself? Lol"
+gban_3 : "You want to block a sudo user?"
+gban_4 : "{0} is already **gbanned** from the bot."
+gban_5 : "**Initializing Gobal Ban on {0}**\n\nExpected Time : {1}."
+gban_6 : "**Gbanned Successfully**\n\nBanned **{0}** from **{1}** chats."
+gban_7 : "{0} is not **gbanned **yet from the bot."
+gban_8 : "**Ungbanning {0}**\n\nExpected Time : {1}."
+gban_9 : "**UnGbanned Successfully**\n\nUnbanned **{0}** in **{1}** chats."
+gban_10 : "No Gbanned Users Found."
+gban_11 : "Please wait a while.. Fetching Gbanned users list"
diff --git a/strings/langs/id.yml b/strings/langs/id.yml
new file mode 100644
index 0000000000000000000000000000000000000000..40f93c77e8e5202d491fb561db224371f7e0c23b
--- /dev/null
+++ b/strings/langs/id.yml
@@ -0,0 +1,472 @@
+name : đŽđŠ Indonesian
+
+# General Strings
+general_1 : "Balas pesan pengguna atau berikan nama pengguna/id_pengguna"
+general_2 : "Kesalahan! Penggunaan Perintah yang Salah."
+general_3 : "Beberapa **pengecualian terjadi** saat memproses kueri Anda.\n\nJenis Pengecualian:- {0}"
+general_4 : "Anda adalah admin anonim di grup obrolan ini!\nKembali ke Akun Pengguna Dari Hak Admin."
+general_5 : "Anda harus menjadi admin dengan mengelola hak obrolan suara untuk melakukan tindakan ini."
+general_6 : "Bot tidak streaming di voice chat."
+
+# Classes - Telegram.py
+tg_1 : "Bot **kelebihan beban** dengan unduhan sekarang.\n\n**Coba Setelah:** {0} (__waktu yang diharapkan__)"
+tg_2 : "Gagal mengunduh media dari telegram."
+
+# Core - Call.py
+call_1 : "Bot memerlukan Izin **Admin** untuk mengundang akun asisten ke saluran Anda."
+call_2 : "Asisten diblokir di grup atau saluran Anda, harap batalkan pemblokiran.\n\n**Nama Pengguna Asisten:** @{0}\n**ID Asisten:** {1}"
+call_3 : "Pengecualian Terjadi Saat Mengundang Akun Asisten ke chat Anda.\n\n**Alasan**: {0}"
+call_4 : "Bot memerlukan **Undang Pengguna Melalui Tautan** Izin untuk mengundang akun asisten ke grup obrolan Anda."
+call_5 : "Akun Asisten akan bergabung dalam 5 Detik.. Harap Tunggu!"
+call_6 : "Akun Asisten[{0}] Berhasil Bergabung.\n\nMulai Musik Sekarang"
+call_7 : "**Hak Admin yang Berbahaya Diberikan **\n\nHarap hapus hak **BAN PENGGUNA** dari bot."
+call_8 : "**Hak Admin yang Berbahaya Diberikan **\n\nHarap hapus hak **TAMBAHKAN ADMIN BARU** dari bot."
+call_9 : "**Gagal mengganti Aliran**\nSilakan gunakan /skip untuk mengganti trek lagi."
+call_10 : "Mengunduh Lagu Berikutnya dari Daftar Putar"
+call_11 : "Tolong tambahkan @{0} ke saluran Anda[ ID: {1}].\n\nBot tidak bisa mendapatkan detail Channel."
+
+# PLUGINS - Auth.py
+auth_1 : "Anda hanya dapat memiliki 20 Pengguna di Daftar Pengguna Resmi (AUL) grup Anda"
+auth_2 : "Ditambahkan ke Daftar Pengguna Resmi grup Anda."
+auth_3 : "Sudah ada di Daftar Pengguna Resmi."
+auth_4 : "Dihapus dari Daftar Pengguna Resmi Grup ini."
+auth_5 : "Pengguna yang ditargetkan bukanlah Pengguna yang Sah."
+auth_6 : "Mengambil Pengguna Resmi... Harap Tunggu"
+auth_7 : "**Daftar Pengguna Resmi[AUL]:**\n\n"
+auth_8 : "â Ditambahkan Oleh:-"
+
+# PLUGINS - Admins
+admin_1 : "Musik sudah Dijeda."
+admin_2 : "đ§ Obrolan Suara Dijeda oleh {}!"
+admin_3 : "Musik sudah dilanjutkan."
+admin_4 : "đ§ Obrolan Suara Dilanjutkan oleh {}!"
+admin_5 : "Musik sudah dimatikan."
+admin_6 : "đ§ Obrolan Suara Dibisukan oleh {}!"
+admin_7 : "Musik sudah disuarakan."
+admin_8 : "đ§ Obrolan Suara Disuarakan oleh {}!"
+admin_9 : "đ§ Obrolan Suara Diakhiri/Dihentikan oleh {}!"
+admin_10 : "đ§ Obrolan Suara Dilewati oleh {}!. Tidak Ada Lagi Musik di Antrean."
+admin_11 : "Error saat mengubah aliran ke **{0}**\n\nSilakan gunakan /skip lagi."
+admin_12 : "Tidak dapat melompat ke trek tertentu karena pemutaran loop diaktifkan. Harap nonaktifkan pemutaran loop melalui `/loop disable` untuk menggunakan fitur ini."
+admin_13 : "Silakan gunakan nomor numerik untuk trek tertentu, seperti 1, 2 atau 4 dll"
+admin_14 : "Setidaknya diperlukan 2 trek dalam antrian untuk melompat ke nomor tertentu. Periksa antrian menurut /antrian"
+admin_15 : "Tidak cukup trek dalam antrian untuk nilai yang Anda berikan. Silakan pilih angka antara 1 dan {0}"
+admin_16 : "Gagal melompat ke trek tertentu.\n\nPeriksa antrean kiri menurut /antrian"
+admin_17 : "{0}.. Mohon Tunggu"
+admin_18 : "Daftar Admin Tidak Ditemukan\n\nSilakan muat ulang daftar admin melalui /admincache atau /reload"
+admin_19 : "Anda harus menjadi admin dengan hak mengelola obrolan suara untuk melakukan ini.\nJika Anda sudah menjadi admin, muat ulang admincache melalui /admincache "
+admin_20 : "Cache admin berhasil dimuat ulang."
+admin_21 : "Tidak ada di dalam antrian untuk diacak"
+admin_22 : "Gagal mengacak.\n\nPeriksa antrian : /antrian"
+admin_23 : "**Antrian Diacak oleh {0}**\n\nPeriksa antrean yang diacak : /queue"
+admin_24 : "**Penggunaan:**\n/loop [aktifkan/nonaktifkan] atau [Angka antara 1-10]\n\n**Contoh:** /loop 5"
+admin_25 : "Loop diaktifkan oleh {0} sebanyak **{1}** kali. Bot sekarang akan mengulang musik yang sedang diputar di obrolan suara sebanyak **{1}** kali"
+admin_26 : "Silahkan gunakan angka antara 1-10 untuk loop play"
+admin_27 : "Pemutaran Putaran telah dinonaktifkan"
+admin_28 : "**Penggunaan:**\n/seek atau /seekback [Durasi dalam detik]"
+admin_29 : "Silakan gunakan detik durasi numerik seperti 10-20-30 detik untuk mencari"
+admin_30 : "Maaf, tetapi Anda tidak dapat mencari aliran yang sedang diputar. Itu hanya dapat dilewati atau dihentikan."
+admin_31 : "Bot tidak dapat mencari karena durasi yang diberikan tinggi. Anda perlu mencari ke durasi yang lebih rendah dan ingat bahwa waktu tersisa 10 detik setelah pencarian.\n\nSaat ini dimainkan** {0}** menit keluar dari **{1}** menit"
+admin_32 : "Mohon Tunggu... Sedang mencari streaming yang sedang berlangsung."
+admin_33 : "Aliran Berhasil Dicari hingga {0} Menit"
+admin_34 : "Gagal mencari aliran saat ini."
+
+# Bot
+
+# Start
+start_1 : "Terima kasih telah menerima saya di {0}.\n{1} Saya Masih Berfungsi.\n\nUntuk bantuan atau bantuan apa pun, periksa Group dan Channel Support kami."
+start_2 : "Halo, Nama saya {0}.\n\nSaya bot streaming telegram dengan beberapa fitur berguna. Platform pendukung seperti Youtube, Spotify, Resso, AppleMusic , Soundcloud dll.\n\nJangan ragu untuk menambahkan saya kegroupmu."
+start_3 : "Selamat datang di {0}\n\nSaya tidak memerlukan **izin admin** untuk bekerja ( sampai diminta ).\n\nNama Pengguna Asisten:- @{1}\nID Asisten:- {2} "
+start_4 : "Pemilik {0}[{1}] baru saja bergabung dengan obrolan Anda."
+start_5 : "Anggota Pengguna Sudo {0}[{1}] baru saja bergabung dengan obrolan Anda."
+start_6 : "âī¸ **Diperlukan Supergroup** ī¸\n\nHarap ubah **grup** Anda menjadi **grup super** lalu tambahkan saya kembali.\n\n**Bagaimana cara membuat grup super?**\nâ
Jadikan riwayat obrolan grup Anda **terlihat** sekali."
+start_7 : "**Obrolan Daftar Hitam**\n\nObrolan Anda telah dimasukkan dalam daftar hitam oleh Bot. Silakan minta SudoUser untuk memasukkan obrolan ke daftar putih terlebih dahulu. Periksa [Sudolist dari sini]({0})"
+
+# Help
+help_1 : "Klik tombol di bawah untuk informasi lebih lanjut. Jika Anda menghadapi masalah dalam perintah, Anda dapat menghubungi pemilik bot saya atau bertanya di Group dukungan.\n\nSemua perintah dapat digunakan dengan: /"
+help_2 : "Hubungi saya di PM untuk bantuan."
+
+# Settings
+setting_1 : "âī¸ **Setelan Bot Musik**\n\nđ**Group:** {0}\nđ**ID Group:** `{1}`\n\nđĄ**Pilih tombol fungsi dari di bawah ini yang ingin Anda edit atau ubah.**"
+setting_3 : "âī¸ Apa Ini?\n\n1) Langsung: Memutar kueri penelusuran secara langsung. Gunakan -v untuk memutar video dalam mode langsung.\n\n2) Sebaris: Mengembalikan Tombol Markup Sebaris untuk memilih antara video & audio."
+setting_4 : "âī¸ Apa Ini?\n\nđĨ Semua Orang: Siapa saja dapat menggunakan perintah admin (lewati, jeda, lanjutkan, dll.) yang ada di grup ini.\n\nđ Hanya Admin: Hanya admin dan pengguna yang berwenang yang dapat menggunakan perintah admin ."
+setting_5 : "Tidak Ditemukan Pengguna Resmi\n\nAnda dapat mengizinkan non-admin menggunakan perintah admin saya dengan /auth dan menghapus dengan menggunakan /unauth"
+setting_9 : "âī¸ Apa Ini?\n\nSaat diaktifkan, Bot akan menghapus pesannya setelah {0} untuk membuat obrolan Anda bersih dan jelas."
+setting_10 : "âī¸ Apa Ini?\n\n1) Grup: Memutar musik di grup tempat perintah diberikan .\n\n2) Saluran: Memutar musik di saluran yang Anda inginkan. Atur id saluran melalui /channelplay"
+setting_11 : "âī¸ Apa Ini?\n\n1) Semua Orang: Siapa saja yang hadir di grup ini dapat memutar musik di sini.\n\n2) Hanya Admin: Hanya admin yang dapat memutar musik di grup ini."
+setting_12 : "â Anda tidak memiliki id saluran yang ditentukan untuk mode saluran. Silakan tentukan dengan /channelplay."
+setting_13 : "Tidak dapat mengubah mode putar dalam panggilan group aktif. Harap hentikan obrolan suara terlebih dahulu dengan /stop."
+setting_14 : "âī¸ Apa Ini?\n\nSaat diaktifkan, Bot akan segera menghapus perintah yang dijalankannya (/play, /pause, /shuffle, /stop dll).\n\nBot akan membutuhkan hak menghapus pesan admin untuk ini bekerja dengan benar."
+setting_15 : "Gagal menyelesaikan peer, Pastikan Anda telah menambahkan bot di saluran Anda dan mempromosikannya sebagai admin.\n\nCoba setel /channelplay lagi.."
+setting_16 : "âī¸ Apa Ini?\n\nSaat diaktifkan, Bot akan menyarankan obrolan Anda setiap 1-2 jam tentang perintah bot (Cara menggunakannya, yang merupakan perintah dan banyak hal lainnya) secara acak."
+
+
+set_cb_1 : "Mendapatkan Panel Kualitas Audio..."
+set_cb_2 : "Mendapatkan Panel Kualitas Video..."
+set_cb_3 : "Mendapatkan Panel Pengguna Auth..."
+set_cb_4 : "Mendapatkan Panel Mode Putar..."
+set_cb_5 : "Mendapatkan Panel Mode Bersih..."
+set_cb_6 : "Menyiapkan perubahan."
+set_cb_7 : "Mendapatkan Daftar Pengguna Auth.. TOLONG TUNGGU."
+set_cb_8 : "Kembali.."
+
+# Misc
+ustats_1 : "Tidak Ada Statistik Pengguna Ditemukan."
+ustats_2 : "Salam!, Anda telah memainkan **{0}** trek sampai sekarang dengan hitungan kekalahan **{1}** kali.\n\n{2} teratas yang dimainkan oleh Anda:\n\n"
+
+gstats_1 : "Mendapatkan Statistik Global, Ini bisa memakan waktu..."
+gstats_2 : "Statistik Tidak Ditemukan."
+gstats_3 : "Mendapatkan 10 Teratas Global {0} di bot, Ini bisa memakan waktu lama.."
+gstats_4 : "**Total Kueri di Bot:** {0}\n\n{1} telah memainkan **{2}** trek hingga sekarang dengan jumlah **{3}** kali.\n \n**Trek {4} Teratas:**\n"
+gstats_5 : "**Top {0} Obrolan {1}:**\n\n"
+gstats_6 : "**Pengguna {0} Teratas {1}:**\n\n"
+gstats_7 : "Grup obrolan ini telah memainkan **{0}** trek hingga sekarang dengan jumlah **{1}** kali.\n\n{2} teratas dimainkan oleh grup obrolan ini:\n\n"
+gstats_8 : "Mendapatkan statistik dan informasi umum Bot.. Ini bisa memakan waktu..."
+gstats_9 : "**GLOBAL TOP 10 STATS OF THE BOT**\n\nPilih tombol dari bawah yang ingin Anda periksa statistik globalnya dari server bot."
+gstats_10 : "**Statistik Global {0}**\n\nPilih tombol dari bawah yang ingin Anda periksa statistik globalnya dari server bot."
+gstats_11 : "**Statistik Umum {0}**\nPilih tombol dari bawah yang ingin Anda periksa statistik globalnya dari server bot.\n\nUntuk memeriksa trek teratas, obrolan, pengguna, dan hal-hal lain, gunakan /gstats "
+
+
+# Play
+
+#Play Callback
+play cb1 : "Ini bukan untukmu! Cari Lagumu Sendiri."
+play cb2 : "Mendapatkan Hasil Selanjutnya"
+
+# Channel Play
+cplay_1 : "Anda dapat memutar musik di Channel dari obrolan ini[{0}] ke channel mana pun atau Channdl tertaut obrolan Anda.\n\n**Untuk saluran tertaut:**\n`/{1} linked`\n\n* *Untuk Channel lainnya:**\n`/{1} [ID Channel]`"
+cplay_2 : "Obrolan ini tidak memiliki channel tertaut."
+cplay_3 : "Channel Ditetapkan ke {0}\n\n__ID Channel__: {1}"
+cplay_4 : "Gagal mendapatkan channel.\n\nPastikan Anda telah menambahkan bot di channel Anda dan mempromosikannya sebagai admin.\nEdit atau Ubah channel melalui /channelplay"
+cplay_5 : "Hanya Channel yang didukung."
+cplay_6 : "Anda harus menjadi **Pemilik** channel[{0}] untuk menghubungkannya dengan grup ini.\n**Pemilik Channel:** @{1}\n\nAtau Anda dapat menautkan grup Anda ke channel itu lalu coba sambungkan dengan `/channelplay linked`"
+
+#Play
+play_1 : "đ Memproses permintaan anda... Harap Tunggu!"
+play_2 : "**đˇMode Putar Channel**\n\nđ Memproses Kueri... Harap Tunggu!\n**Saluran Tertaut:** {0}"
+play_3 : "Gagal Memproses permintaan anda!"
+play_4 : "đ **Admin Only Play**\nHanya Admin dan Pengguna Auth yang dapat memutar musik di grup ini.\n\nUbah mode melalui /playmode dan jika Anda sudah menjadi admin, muat ulang admincache melalui /admincache"
+play_5 : "Gagal memproses file audio.\n\nUkuran File Audio Harus Kurang dari 100 mb"
+play_6 : "**Batas Durasi Terlampaui**\n\n**Durasi yang Diizinkan: *{0} menit\n**Durasi yang Diterima:** {1} jam"
+play_7 : "Maaf! Bot hanya mengizinkan panggilan video dalam jumlah terbatas karena masalah kelebihan CPU. Banyak obrolan lain menggunakan panggilan video sekarang. Coba beralih ke audio atau coba lagi nanti"
+play_8 : "Bukan Ekstensi File Video yang Valid!\n\n**Format yang Didukung:** {0}"
+play_9 : "Ukuran File Video Harus Kurang dari 1 GiB"
+play_10 : "**Fitur Daftar Putar YouTube**\n\nPilih Mode di mana Anda ingin memutar seluruh Daftar Putar Youtube"
+play_11 : "đJudul: **{0}\n\nâŗDurasi:** {1} Menit"
+play_12 : "**Mode Putar Spotify**\n\nDiminta Oleh:- {0}"
+play_13 : "**Daftar Putar Apple**\n\nDiminta Oleh:- {0}"
+play_14 : "**Tidak dapat memverifikasi URL.**\nBot bertanya-tanya apakah url ini milik salah satu platform berikut: Youtube, AppleMusic, Spotify, Resso, dan Soundcloud.\n\nAnda dapat menggunakan /stream untuk M3u8 atau Remote Links ."
+play_15 : "**Live Stream Terdeteksi**\n\nSistem telah mendeteksi tautan trek Anda sebagai streaming langsung. Ingin memutar streaming langsung ?"
+play_16 : "Gagal mengambil detail trek. Coba mainkan yang lain."
+play_17 : "Tidak dapat memainkan jenis kueri spotify ini!\n\nSaya hanya dapat memutar trek, album, artis, dan daftar putar spotify"
+play_18 : "**Tidak Ditemukan Obrolan Suara Aktif**\n\nUntuk menggunakan force play, harus ada obrolan suara aktif yang terjadi di grup Anda. **Force Play** menghentikan trek yang sedang diputar di obrolan suara dan mulai memutar menelusuri trek secara instan tanpa mengganggu/mengosongkan antrean."
+
+
+#Playlist
+playlist_1 : "**Penggunaan:** /play [Nama Musik atau Tautan Youtube atau Balas Audio]\n\nJika Anda ingin memutar Daftar Putar Server Bot! Tekan tombol di bawah."
+playlist_2 : "Mendapatkan daftar putar Anda. Harap tunggu"
+playlist_3 : "Anda tidak memiliki playlist di Server Bot."
+playlist_4 : "Daftar Putar yang Diambil:\n\n"
+playlist_5 : "Durasi- {0} Menit"
+playlist_6 : "Hubungi saya di PM untuk penghapusan Daftar Putar."
+playlist_7 : "Tracks Inside Playlist: {0}\n\nTekan Tombol untuk menghapus trek tertentu di playlist Anda.\n\nUntuk menghapus seluruh playlist: Tekan tombol Del Whole Playlist."
+playlist_8 : "Sudah Ada\n\nTrek ini ada di daftar putar Anda."
+playlist_9 : "Maaf! Anda hanya dapat memiliki {0} musik di daftar putar."
+playlist_10 : "Playlist Addition\n\n{0}\nadded to your playlist."
+playlist_11 : "Berhasil menghapus trek Anda."
+playlist_12 : "Gagal menghapus trek Anda."
+playlist_13 : "Menghapus seluruh daftar putar Anda dari server."
+playlist_14 : "**Yakin ingin menghapus seluruh daftar putar?**\n\nAnda akan kehilangan daftar putar dan ini tidak dapat dipulihkan nanti."
+playlist_15 : "[Periksa Seluruh Daftar Putar]({0})"
+playlist_16 : "Daftar Putar Antri:"
+playlist_17 : "Posisi Antrian-"
+playlist_18 : "[Checkout Whole Queued Playlist]({0})\n\nPosisi Antrian Terakhir : **{1}**"
+
+#Playmode
+playmode_1 : "Pilih mode di mana Anda ingin memainkan kueri di dalam grup Anda[{0}]."
+playmode_2 : "Setelan diubah dan berhasil disimpan oleh {0}"
+
+#Stream
+str_1 : "Harap Berikan Link M3u8 atau Link Indeks."
+str_2 : "â
Aliran Valid Terverifikasi\n\nHarap tunggu memproses tautan.."
+str_3 : "Tidak dapat melakukan streaming streaming langsung youtube. Format Langsung Tidak Ditemukan"
+
+#TopPlay
+track_1 : "**Memproses {0} Daftar Putar 10 Teratas**\nIni bisa memakan waktu beberapa menit (sekitar 3-4 menit).. Harap Tunggu...\n\n**đ¤Diminta Oleh:** {1}\ n\nPeriksa 10 lagu teratas menurut /gstats"
+track_2 : "**Error**\n\nTidak ada **{0} Top 10 Playlist** di server bot. Silakan coba playlist lain"
+
+# TOOLS
+
+#Lyrics
+lyrics_1 : "**Penggunaan:**\n\n/lirik [ Nama Musik]"
+lyrics_2 : "Mencari Lirik"
+lyrics_3 : "â Gagal mengambil lirikđ.\n\nđĄ**Mencoba Mencari:** {0}"
+lyrics_4 : "Klik tombol di bawah ini dan cari lirik untuk menghindari pencarian lirik jenis spam yang panjang."
+
+#Ping
+ping_1 : "Pong!!!!"
+ping_2 : "{0} berfungsi baik dengan ping `{1}` md.\n\nWaktu aktif bot adalah {2} dan telah menggunakan total {3} penyimpanan server. Beban CPU sekitar {4} dengan konsumsi {5} Ram. Klien Py-Tgcalls juga memiliki ping `{6}` ms yang bagus."
+
+
+# Song
+song_1 : "Anda dapat mengunduh Musik atau Video dari YouTube hanya dalam obrolan pribadi. Silakan mulai saya dalam obrolan pribadi."
+song_2 : "**Penggunaan:**\n\n/song [Nama Musik] atau [Tautan YouTube]"
+song_3 : "Live Link Detected. Saya tidak bisa mendownload video live youtube."
+song_4 : "**đTitle:**- {0}\n\nPilih jenis yang ingin Anda unduh."
+song_5 : "Bukan Tautan Youtube yang valid"
+song_6 : "Mendapatkan Format.. \n\nMohon Tunggu.."
+song_7 : "Gagal mendapatkan format yang tersedia untuk video. Silakan coba trek lain."
+song_8 : "Pengunduhan Dimulai\n\nKecepatan pengunduhan mungkin lambat. Harap tunggu.."
+song_9 : "Gagal mendownload lagu dari Youtube-DL\n\n**Alasan:** {0}"
+song_10 : "Gagal mengunggah telegram dari server."
+song_11 : "Pengunggahan Dimulai\n\nKecepatan pengunggahan mungkin lambat. Harap tunggu sebentar.."
+
+# Tools - Queue
+queue_1 : "Mohon Tunggu..Mengambil Antrian.."
+queue_2 : "Daftar Antrian kosong. Tidak ada trek yang ditemukan"
+queue_3 : "**Trek Antrian: ** [Lihat Trek Antrian Lainnya Dari Sini]({0})"
+queue_4 : "âŗ Ditambahkan ke Antrian di **#{0}\n\nđĄJudul:** {1}\nâ°**Durasi:** {2}\nđ¤**Ditambahkan Oleh:** {3}"
+queue_5 : "Hanya satu track di dalam antrian, Silahkan tambahkan lagi untuk check list"
+
+# All Streaming Lines
+stream_1 : "⥠**Memulai Streaming** đĄ\n\nđ¤**Diminta Oleh:** {0}\nđĻ**Informasi: **[Di Sini]({1})"
+stream_2 : "⥠**Memulai Streaming melalui URL ** \n\nđ¤**Diminta Oleh:** {0}"
+stream_3 : "⥠**Memulai Streaming** đĄ\n\n**đˇJudul:** {0}\nâī¸**Durasi**: {1}\nđ¤**Diminta Oleh:** {2} "
+stream_4 : "⥠**Memulai Streaming** \n\n**đˇJudul:** [{0}]({1})\nâī¸**Durasi**: {2}\nđ¤**Diminta Oleh:** {3}"
+
+# Inline Buttons
+
+#General Buttons
+CLOSE_BUTTON : "đ Tutup"
+CLOSEMENU_BUTTON : "đ Tutup Menu"
+BACK_BUTTON : "âŦ
Kembali"
+UNBAN_BUTTON : "đ Unban Asisten"
+
+#Lyrics
+L_B_1 : "đ Lihat Lirik Sekarang"
+
+# Start
+S_B_1 : "đ Perintah"
+S_B_2 : "đ§ Pengaturan"
+S_B_3 : "đĨ Group"
+S_B_4 : "⥠Channel"
+S_B_5 : "â Tambahkan ke Group"
+S_B_6 : "⥠Repository"
+S_B_7 : "đ¨âđģ Pemilik Bot"
+S_B_8 : "đ Menu Perintah."
+
+#Help
+H_B_1 : "Perintah Admin"
+H_B_2 : "Mainkan Perintah"
+H_B_3 : "Perintah Bot"
+H_B_4 : "Perintah Ekstra"
+H_B_5 : "Tutup Menu"
+H_B_6 : "Perintah SudoUser"
+
+#PlayMode
+PM_B_1 : "Putar Langsung"
+PM_B_2 : "Markup Sebaris"
+PM_B_3 : "ChannelPlay"
+
+#Play
+P_B_1 : "đĩ Putar Audio"
+P_B_2 : "đĨ Putar Video"
+P_B_3 : "đī¸ Mulai Streaming"
+P_B_4 : "đŋ Putar Playlist"
+
+#Playlist
+PL_B_1 : "đ Putar Playlist"
+PL_B_2 : "â Daftar Putar"
+PL_B_3 : "â Tambahan"
+PL_B_4 : "đĄ Mode Putar"
+PL_B_5 : "đ Hapus Semua Daftar Putar"
+PL_B_6 : "âī¸ Hapus Daftar Putar"
+PL_B_7 : "âī¸ Ya, saya yakin"
+PL_B_8 : "đĸ Mainkan Top 10"
+PL_B_9 : "đ¤ Mainkan Top 10 Global"
+PL_B_10 : "đ 10 Top Group Play"
+PL_B_11 : "đ¤ Mainkan Top 10 Pribadi"
+
+#Settings
+ST_B_1 : "đ Kualitas Suara"
+ST_B_2 : "đĨ Kualitas Video"
+ST_B_3 : "đŠ Pengguna Auth"
+ST_B_4 : "đą Dasboard"
+ST_B_5 : "âļī¸ Mode Putar"
+ST_B_6 : "đŗī¸âđ Bahasa"
+ST_B_7 : "đ Mode Bersih"
+ST_B_8 : "{0} Audio Kualitas Rendah"
+ST_B_9 : "{0} Audio Kualitas Sedang"
+ST_B_10 : "{0} Audio Berkualitas Tinggi"
+ST_B_11 : "{0} Video Kualitas Rendah"
+ST_B_12 : "{0} Video Kualitas Sedang"
+ST_B_13 : "{0} Video Kualitas Tinggi"
+ST_B_14 : "â
Diaktifkan"
+ST_B_15 : "â Nonaktif"
+ST_B_16 : "đ¤ Admin"
+ST_B_17 : "đĨ Semuanya"
+ST_B_18 : "đ Daftar Auth"
+ST_B_19 : "đ Mode Pencarian"
+ST_B_20 : "â
Langsung"
+ST_B_21 : "â
Sebaris"
+ST_B_22 : "đ¨ââī¸ Perintah Admin"
+ST_B_23 : "đ Grup"
+ST_B_24 : "đˇ Saluran"
+ST_B_25 : "đšī¸ Jenis Permainan"
+ST_B_26 : "đ Perintah Bersih"
+ST_B_27 : "đ§âđ Mode Saran"
+
+#Song
+SG_B_1 : "âī¸ Buka Obrolan Pribadi"
+SG_B_2 : "đ Audio"
+SG_B_3 : "đĨ Video"
+
+#Stats
+SA_B_1 : "đĸ 10 Obrolan Teratas"
+SA_B_2 : "đĸ 10 Lagu Teratas"
+SA_B_3 : "đ§ 10 Pengguna Teratas"
+SA_B_4 : "đˇ 10 Top Disini"
+SA_B_5 : "đĄ Keseluruhan"
+SA_B_6 : "đ¤ Stats Pengguna"
+SA_B_7 : "đĸ 10 Stats Top Global"
+SA_B_8 : "đ¤ Stats Bot"
+
+#Queue
+QU_B_1 : "đŊ Daftar Antrian"
+QU_B_2 : "Dimainkan {0} dari {1} Menit"
+
+# Sudo Users [ If you are translating this to some other language .. you can leave all these strings in english language]
+
+#Sudo
+sudo_1 : "{0} sudah menjadi pengguna sudo."
+sudo_2 : "Ditambahkan *{0}** ke Pengguna Sudo."
+sudo_3 : "Bukan bagian dari Sudo Bot."
+sudo_4 : "Dihapus dari Pengguna Sudo Bot"
+sudo_5 : "đ **Pemilik:** \n"
+sudo_6 : "\nđ¨âđ **Pengguna Sudo:** \n"
+sudo_7 : "Tidak Ada Pengguna Sudo"
+
+#Block
+block_1 : "{0} sudah diblokir dari bot."
+block_2 : "Menambahkan **{0}** ke Daftar Blokir bot. Pengguna tidak akan dapat menggunakan bot sekarang dalam kondisi apa pun.\n\nPeriksa pengguna yang diblokir: /blockedusers"
+block_3 : "User sudah bebas dan tidak diblokir."
+block_4 : "Menghapus Pengguna dari daftar blokir. Pengguna akan dapat menggunakan bot sekarang."
+block_5 : "Tidak Ada Pengguna yang Diblokir Ditemukan"
+block_6 : "Mendapatkan Daftar Pengguna yang Diblokir.. Harap Tunggu"
+block_7 : "**Pengguna yang Diblokir:**\n\n"
+
+#Blacklist Chats
+black_1 : "**Penggunaan:**\n/blacklistchat [CHAT_ID]"
+black_2 : "Obrolan sudah masuk daftar hitam."
+black_3 : "Obrolan telah berhasil masuk daftar hitam"
+black_4 : "**Penggunaan:**\n/whitelistchat [CHAT_ID]"
+black_5 : "Obrolan sudah masuk daftar putih."
+black_6 : "Obrolan telah berhasil masuk daftar putih"
+black_7 : "**Obrolan yang Masuk Daftar Hitam:**\n\n"
+black_8 : "Tidak Ada Obrolan Daftar Hitam"
+
+#videolimit
+vid_1 : "**Penggunaan:**\n/set_video_limit [Jumlah obrolan yang diizinkan] atau [Nonaktifkan]"
+vid_2 : "Silakan Gunakan Angka Numerik untuk Menetapkan Batas."
+vid_3 : "Batas Maksimum Panggilan Video Ditetapkan untuk {0} Obrolan."
+vid_4 : "Panggilan Video Dinonaktifkan"
+
+#maintenance
+maint_1 : "**Penggunaan:**\n/pemeliharaan [aktifkan|nonaktifkan]"
+maint_2 : "Diaktifkan untuk Pemeliharaan"
+maint_3 : "Mode Pemeliharaan Dinonaktifkan"
+
+#log
+log_1 : "**Penggunaan:**\n/logger [aktifkan|nonaktifkan]"
+log_2 : "Logging Diaktifkan"
+log_3 : "Logging Dinonaktifkan"
+
+#videomode
+vidmode_1 : "**Penggunaan:**\n/videomode [unduh|m3u8]"
+vidmode_2 : "Mode Putar Video disetel sebagai downloder. Bot akan mengunduh trek sekarang."
+vidmode_3 : "Mode Putar Video ditetapkan sebagai m3u8. Bot akan memutar trek secara langsung sekarang."
+
+#broadcast
+broad_1 : "**Broadcast {0} Obrolan dengan {1} Pin dari Bot.**"
+broad_2 : "Memulai Siaran Asisten..."
+broad_3 : "**Siaran Asisten:**\n\n"
+broad_4 : "Asisten {0} Disiarkan di {1} obrolan\n"
+broad_5 : "**Penggunaan**:\n/siarkan [PESAN] atau [Balas Pesan]"
+broad_6 : "Harap berikan beberapa teks untuk disiarkan."
+broad_7 : "**Broadcast {0} Pengguna.**"
+
+#Heroku
+heroku_1 : "Pastikan Heroku API Key Anda, Nama Aplikasi Anda dikonfigurasi dengan benar di heroku"
+heroku_2 : "Anda hanya bisa mendapatkan log dari Aplikasi Heroku"
+heroku_3 : "**Penggunaan:**\n/get_var [Nama Var]"
+heroku_4 : "Tidak dapat menemukan var seperti itu."
+heroku_5 : ".env file tidak ditemukan."
+heroku_6 : "**Penggunaan:**\n/del_var [Nama Var]"
+heroku_7 : "{0} Dihapus."
+heroku_8 : "**Penggunaan:**\n/set_var [Var Name] [Var Value]"
+heroku_9 : "{0} telah berhasil diperbarui"
+heroku_10 : "{0} telah berhasil ditambahkan"
+heroku_11 : "Hanya untuk Aplikasi Heroku"
+heroku_12 : "Memeriksa Penggunaan Heroku. Mohon Tunggu"
+heroku_13 : "Memeriksa pembaruan yang tersedia..."
+heroku_14 : "Kesalahan Perintah Git"
+heroku_15 : "Repositori Git Tidak Valid"
+
+#Private bot mode
+pbot_1 : "**Penggunaan:**\n/otorisasi [CHAT_ID]"
+pbot_2 : "**Penggunaan:**\n/batalkan otorisasi [CHAT_ID]"
+pbot_3 : "Menambahkan obrolan yang diberikan ke daftar resmi"
+pbot_4 : "Menghapus obrolan yang diberikan dari daftar resmi"
+pbot_5 : "Obrolan sudah ada di daftar yang diotorisasi"
+pbot_6 : "Tidak ada obrolan seperti itu di daftar resmi"
+pbot_7 : "Gagal memverifikasi chat_id.\n\nPastikan numerik dan dalam format yang benar. Jangan gunakan nama pengguna atau tautan obrolan."
+pbot_8 : "Mohon tunggu.... Mengambil Obrolan Resmi."
+pbot_9 : "**Obrolan yang Diambil: **\n\n"
+pbot_10 : "Obrolan Pribadi"
+pbot_11 : "Tidak ditemukan Obrolan Resmi"
+pbot_12 : "Mode Bot Pribadi dinonaktifkan.\n\nUntuk menggunakan bot Anda sebagai bot pribadi, pastikan untuk menyetel **PRIVATE_BOT_MODE** = **Benar**"
+pbot_13 : "\n**Obrolan Tidak Diambil: **\n\n"
+
+
+#Gbanned
+gban_1 : "Lu mau gban diri sendiri? Tolol!"
+gban_2 : "Haruskah saya memblokir diri saya sendiri? Lol"
+gban_3 : "Anda ingin memblokir pengguna sudo?"
+gban_4 : "{0} sudah **gbanned** dari bot."
+gban_5 : "**Menginisialisasi Larangan Global pada {0}**\n\nWaktu yang Diharapkan : {1}."
+gban_6 : "**Berhasil Dibanned**\n\nBanned **{0}** dari **{1}** chat."
+gban_7 : "{0} belum **gbanned **belum dari bot."
+gban_8 : "**Membatalkan pemblokiran {0}**\n\nWaktu yang Diharapkan : {1}."
+gban_9 : "**UnGbanned Berhasil**\n\nUnbanned **{0}** di **{1}** chat."
+gban_10 : "Tidak Ditemukan Pengguna yang Di-Gban."
+gban_11 : "Harap tunggu sebentar.. Mengambil daftar pengguna Gbanned"
+
+#Suggestions
+sug_0 : "â**Tahukah Anda?**\n\nâ
"
+sug_1 : "Anda dapat memutar musik dalam dua **mode pencarian** yaitu Mode Langsung dan Mode Sebaris.\n\nUbah mode melalui /playmode"
+sug_2 : "Anda dapat memutar musik dalam dua **jenis pemutaran** yaitu Mode Semua Orang dan Mode Admin.\n\nUbah mode melalui /playmode"
+sug_3 : "Anda juga dapat memutar musik di **channels**.\n\nSetel channel_id melalui /channelplay dan putar melalui /cplay "
+sug_4 : "Non Admin juga dapat menggunakan perintah admin dengan menambahkannya ke** AUTH USERS LIST**. \nTambahkan pengguna mana pun ke daftar auth dengan /auth , hapus dengan /unauth dan periksa pengguna auth melalui /authusers"
+sug_5 : "Bot memiliki fitur yang disebut **Clean Mode**.\nIni menghapus pesan bot setelah 5 Menit dan memastikan bahwa obrolan Anda tetap bersih.\n\nAktifkan atau nonaktifkan mode bersih dari /settings [__Diaktifkan secara default__]"
+sug_6 : "Kamu juga bisa memutar lagu dan daftar putar **Spotify**.\n\nMulai mainkan sekarang dengan /play [Tautan Spotify]"
+sug_7 : "Anda juga dapat memutar lagu dan daftar putar **Apple Music**.\n\nMulai mainkan sekarang dengan /play [Apple Link]"
+sug_8 : "Anda juga dapat memutar **Musik Resso** trek dan daftar putar.\n\nMulai putar sekarang dengan /play [Resso Link]"
+sug_9 : "Kamu juga bisa memutar lagu dan playlist **Sound Cloud**.\n\nMulai mainkan sekarang dengan /play [SoundCloud Link]"
+sug_10 : "Anda dapat memutar **Video** dalam obrolan suara melalui /vplay [Nama Video] atau /play -v [Nama Video]"
+sug_11 : "Anda dapat menyetel **Kualitas Audio** obrolan suara ke Rendah, Sedang, atau Tinggi.\n\nMenyetel kualitas melalui /settings"
+sug_12 : "Anda dapat menyetel **Kualitas Video** obrolan suara ke Rendah, Sedang, atau Tinggi.\n\nMenyetel kualitas melalui /settings"
+sug_13 : "Anda dapat memeriksa **Statistik** Anda di bot seperti 10 Lagu Teratas yang Diputar.\n\nDapatkan Statistik: /gstats "
+sug_14 : "Anda dapat memeriksa **Statistik Grup** di bot seperti 10 Lagu Teratas yang Diputar.\n\nDapatkan Statistik: /gstats "
+sug_15 : "Anda dapat memeriksa **Statistik Global** bot seperti 10 pengguna teratas, 10 obrolan teratas, 10 trek teratas, dll.\n\nPeriksa Statistik: /gstats "
+sug_16 : "Sekarang Anda dapat membisukan musik yang diputar di obrolan suara.\n\nPerintah: /mute"
+sug_17 : "Sekarang Anda dapat mengaktifkan dan menonaktifkan musik yang diputar di obrolan suara.\n\nPerintah: /mute dan /unmute"
+sug_18 : "Anda juga dapat mencari lirik musik bersama kami..\n\nPerintah: /lyrics [Nama Musik]"
+sug_19 : "Anda dapat mengunduh musik atau video dari bot melalui Youtube.\n\nPerintah: /song [Nama Musik]"
+sug_20 : "Anda bisa mendapatkan daftar lengkap perintah saya yang saya terima.\n\nPerintah: /help"
+sug_21 : "Bot memiliki opsi daftar putar sisi server.\n\nAnda dapat menambahkan musik di daftar putar Anda dan memutar semuanya bersama-sama melalui /play"
+sug_22 : "Sekarang Anda dapat mengacak musik yang antri di bot.\n\nPerintah: /shuffle"
+sug_23 : "Anda dapat memeriksa antrian musik.\n\nPerintah: /queue"
+sug_24 : "Anda dapat memeriksa pemilik saya dan pengguna sudo yang mengelola saya.\n\nPerintah: /sudolist"
+sug_25 : "Bot memiliki fitur yang disebut **Commands Delete Mode**. Bot ini akan menghapus perintah yang dieksekusi secara otomatis.\n\nAktifkan atau nonaktifkan deletemode dari /settings [__Diaktifkan secara default__]"
+sug_26 : "Anda dapat mengubah bahasa bot ke bahasa yang tersedia untuk memudahkan pemahaman.\n\nPerintah: /bahasa"
+sug_27 : "Bot memiliki fitur yang disebut **Force Play**.\n\n**Force Play** menghentikan trek yang sedang diputar di obrolan suara dan mulai memutar trek yang dicari secara instan tanpa mengganggu/mengosongkan antrean.\n\nPerintah: / kekuatan bermain"
diff --git a/strings/langs/si.yml b/strings/langs/si.yml
new file mode 100644
index 0000000000000000000000000000000000000000..61d7e4dddf1dae10f33d6665535de8708cf10612
--- /dev/null
+++ b/strings/langs/si.yml
@@ -0,0 +1,429 @@
+name : đąđ° Sinhala
+
+# General Strings
+general_1 : "āļ´āļģāˇāˇāˇāļŊāļ āļ´āļĢāˇāˇāˇāļŠāļēāļāļ§ āļ´āˇāˇ
āˇāļāˇāļģ⎠āļ¯āˇāļąāˇāļą āˇāˇ /user_id āļ´āļģāˇāˇāˇāļŊāļ āļąāˇāļ¸āļē āļ¯āˇāļąāˇāļą."
+general_2 : "āļ¯āˇāˇāļēāļāˇ! āˇāˇāļ°āˇāļąāļē⎠āˇāˇāļģāļ¯āˇ āļˇāˇāˇāˇāļāļēāļ⎠āˇāˇāļ¯āˇāˇāˇāļē"
+general_3 : "āļāļļāļ⎠āˇāˇāļ¸āˇāˇāļ¸ āˇāļāˇāļą āļ
āļāļģāļāˇāļģ **āˇāˇāļģāļ¯āˇāļ¯āļ⎠āˇāˇāļē.\n\nāˇāˇāļģāļ¯āˇ āˇāļģāˇāļāļē:- {0}"
+general_4 : "āļāļļ āļ¸āˇāļ¸ āļāļĢāˇāļŠāˇāļēāļ¸ āˇāļ¸āˇāˇāļē⎠āļąāˇāļģāˇāļąāˇāļ¸āˇāļ āļ´āļģāˇāļ´āˇāļŊāļāļēāˇāļāˇ!\nāļ´āļģāˇāļ´āˇāļŊāļ āļ
āļēāˇāļāˇāˇāˇāˇāˇāļāļ¸āˇ āˇāˇāļāˇāļąāˇ āļ´āļģāˇāˇāˇāļŊāļ āļāˇāļĢāˇāļ¸ āˇāˇāļ āļāļ´āˇāˇ āļēāļąāˇāļą."
+general_5 : "āļ¸āˇāļ¸ āļāˇâāļģāˇāļēāˇāˇ āˇāˇāļ¯āˇ āļāˇāļģāˇāļ¸āļ§ āļāļļ āˇāļŦ āļāļĢāˇāļŠāˇāļēāļ¸ āļāˇ
āļ¸āļąāˇ āļāˇāļģāˇāļ¸āˇ āˇāˇāļ¸āˇāļāļ¸āˇ āˇāˇāˇāļ āļ´āļģāˇāļ´āˇāļŊāļ āˇāˇāļē āļēāˇāļāˇāļē."
+general_6 : "āļļāˇāļ§āˇ āˇāļŦ āļāļĢāˇāļŠāˇāļēāļ¸ āļ¸āļ āļ´āˇâāļģāˇāˇāˇāļē āļąāˇāˇāˇ."
+
+# Classes - Telegram.py
+tg_1 : "Bot āļ¯āˇāļąāˇ āļļāˇāļāˇāļąāˇāļ¸āˇ āˇāļ¸āļ **āļāˇāļģāˇāļŊāˇāļŠāˇ**.\n\n** āļ´āˇāˇāˇ āļāļāˇāˇāˇāˇ āļāļģāļąāˇāļą:** {0} (__āļ
āļ´āˇāļāˇāˇāˇāļ āļāˇāļŊāļē__)"
+tg_2 : "āļ§āˇāļŊāˇāļāˇâāļģāˇāļ¸āˇ āˇāļŊāˇāļąāˇ āļ¸āˇāļ°āˇâāļē āļļāˇāļāˇāļąāˇāļ¸ āļ
āˇāˇāļģāˇāļŽāļ āˇāˇāļē."
+
+# Core - Call.py
+call_1 : "Bot āˇāļ§ āļāļļāļ⎠āļąāˇāļŊāˇāļāˇāˇāļ§ āˇāˇāļāˇāļģ āļāˇāļĢāˇāļ¸āļ§ āļāļģāˇāļ°āļąāˇ āļāˇāļģāˇāļ¸āļ§ **āļ´āļģāˇāļ´āˇāļŊāļ** āļ
āˇāˇāļģāļē āļ
āˇāˇāˇâāļēāļēāˇ.\n\n: /playmode āˇāļģāˇāˇ āļąāˇāļŊāˇāļ⎠āˇāļāļāˇāļ āļ´āˇâāļģāļāˇāļģāļē āļ
āļļāļŊ āļāļģāļąāˇāļą"
+call_2 : "āˇāˇāļāļģ⎠āļāļļ⎠āˇāļ¸āˇāˇāļē⎠āˇāˇ āļąāˇāļŊāˇāļāˇāˇāˇ āļāˇāļąāļ¸āˇ āļāļģ āļāļ, āļāļģāˇāļĢāˇāļāļģ āļāˇāļąāļ¸āˇ āļąāˇāļāļģāļąāˇāļą.\n\n**āˇāˇāˇāļēāļ āļ´āļģāˇāˇāˇāļŊāļ āļąāˇāļ¸āļē:** @{0}\n**āˇāˇāˇāļēāļ āˇāˇāļŗāˇāļąāˇāļ¸āˇāļ´āļ:** {1}"
+call_3 : "āļāļļāļ⎠āļāļĢāˇāļŠāˇāļēāļ¸ āˇāˇāļ āˇāˇāļāˇāļģ āļāˇāļĢāˇāļ¸āļ§ āļāļģāˇāļ°āļąāˇ āļāˇāļģāˇāļ¸āˇāļ¯āˇ āˇāˇāļģāļ¯āˇ āˇāˇāļ¯āˇ āˇāˇāļē.\n\n**āˇāˇāļāˇāˇ**: {0}"
+call_4 : "Bot āˇāļ§ **Link āˇāļģāˇāˇ āļ´āļģāˇāˇāˇāļŊāļāļēāˇāļąāˇāļ§ āļāļģāˇāļ°āļąāˇ āļāļģāļąāˇāļą** āļāļļāļ⎠āļāļĢāˇāļŠāˇāļēāļ¸ āļāļĢāˇāļŠāˇāļēāļ¸āļ§ āˇāˇāļāˇāļģ āļāˇāļĢāˇāļ¸āļ§ āļāļģāˇāļ°āļąāˇ āļāˇāļģāˇāļ¸āļ§ āļ
āˇāˇāļģāļē āļ
āˇāˇāˇâāļē āˇāˇ."
+call_5 : "āˇāˇāļāˇāļģ āļāˇāļĢāˇāļ¸ āļāļāˇāļ´āļģ 5 āļāˇāļąāˇ āˇāļ¸āˇāļļāļąāˇāļ° āˇāļąāˇ āļāļ..āļāļģāˇāļĢāˇāļāļģ āļģāˇāļŗāˇ āˇāˇāļ§āˇāļąāˇāļą!"
+call_6 : "āˇāˇāļāˇāļģ āļāˇāļĢāˇāļ¸[{0}] āˇāˇāļģāˇāļŽāļ⎠āˇāļ¸āˇāļļāļąāˇāļ° āˇāˇāļē.\n\nāˇāļāļāˇāļāļē āļ¯āˇāļąāˇ āļāļģāļ¸āˇāļˇ āļāļģāļ¸āˇāļąāˇ"
+call_7 : "**āˇāˇāļąāˇāļāļģ āļ´āļģāˇāļ´āˇāļŊāļ āļ
āļēāˇāļāˇāļē āļŊāļļ⎠āļ¯āˇ āļāļ **\n\nāļāļģāˇāļĢāˇāļāļģ āļļāˇāļ§āˇ āļāˇāļąāˇ **BAN USERS** āļ
āļēāˇāļāˇāļąāˇ āļāˇāļ⎠āļāļģāļąāˇāļą."
+call_8 : "**āˇāˇāļąāˇāļāļģ āļ´āļģāˇāļ´āˇāļŊāļ āļ
āļēāˇāļāˇāļē āļŊāļļ⎠āļ¯āˇ āļāļ **\n\nāļāļģāˇāļĢāˇāļāļģ āļļāˇāļ§āˇ āļāˇāļąāˇ **ADD NEW ADMINS** āļ
āļēāˇāļāˇāļąāˇ āļāˇāļ⎠āļāļģāļąāˇāļą."
+call_9 : "**āˇāļāļāˇāļāļēāˇâ āļ¸āˇāļģ⎠āļāˇāļģāˇāļ¸āļ§ āļ
āˇāļ¸āļ⎠āˇāˇāļē**\nāļāļģāˇāļĢāˇāļāļģ āļąāˇāˇāļ āˇāļāļāˇāļāļē āˇāˇāļąāˇāˇ āļāˇāļģāˇāļ¸āļ§ /skip āļˇāˇāˇāˇāļ⎠āļāļģāļąāˇāļą."
+call_10 : "āˇāļāļāˇāļ āļŊāˇāļēāˇāˇāˇāļāˇāˇāˇāļąāˇ āļ¸āˇāˇ
āļ āļāļĢāˇāļŠāļē āļļāˇāļāˇāļąāˇāļ¸"
+call_11 : "Please add @{0} to your channel[ ID: {1}].\n\nBot is not able to get channel details."
+
+
+# PLUGINS - Auth.py
+auth_1 : "āļāļļāļ§ āļāļļ⎠āˇāļ¸āˇāˇāļē⎠āļļāļŊāļēāļŊāļ⎠āļ´āļģāˇāˇāˇāļŊāļ āļŊāˇāļēāˇāˇāˇāļāˇāˇāˇ (AUL) āˇāˇāļ§āˇāļē āˇāˇāļāˇāļ⎠āļ´āļģāˇāˇāˇāļŊāļāļēāˇāļąāˇ 20āļ⎠āļ´āļ¸āļĢāˇ."
+auth_2 : "āļāļļāļ⎠āˇāļ¸āˇāˇāļē⎠āļļāļŊāļēāļŊāļ⎠āļ´āļģāˇāˇāˇāļŊāļ āļŊāˇāļēāˇāˇāˇāļāˇāˇāļ§ āļāļāļ⎠āļāļģāļą āļŊāļ¯āˇ."
+auth_3 : "āļ¯āˇāļąāļ§āļ¸āļ⎠āļļāļŊāļēāļŊāļ⎠āļ´āļģāˇāˇāˇāļŊāļ āļŊāˇāļēāˇāˇāˇāļāˇāˇāˇ āļāļ."
+auth_4 : "āļ¸āˇāļ¸ āˇāļ¸āˇāˇāļē⎠āļļāļŊāļēāļŊāļ⎠āļ´āļģāˇāˇāˇāļŊāļ āļŊāˇāļēāˇāˇāˇāļāˇāˇāˇāļąāˇ āļāˇāļ⎠āļāļģāļą āļŊāļ¯āˇ."
+auth_5 : "āļļāļŊāļēāļŊāļ⎠āļ´āļģāˇāˇāˇāļŊāļāļēāˇāļ⎠āļąāˇāˇāˇ."
+auth_6 : "āļļāļŊāļēāļŊāļ⎠āļ´āļģāˇāˇāˇāļŊāļāļēāˇāļąāˇ āļŊāļļ⎠āļāļąāˇāļ¸āˇāļąāˇ... āļāļģāˇāļĢāˇāļāļģ āļģāˇāļŗāˇ āˇāˇāļ§āˇāļąāˇāļą"
+auth_7 : "**āļļāļŊāļēāļŊāļ⎠āļ´āļģāˇāˇāˇāļŊāļ āļŊāˇāļēāˇāˇāˇāļāˇāˇ[AUL]:**\n\n"
+auth_8 : "â āļāļāļ⎠āļāļģāļą āļŊāļ¯āˇāļ¯āˇ:-"
+
+# PLUGINS - Admins
+admin_1 : "āˇāļāļāˇāļāļē āļ¯āˇāļąāļ§āļ¸āļ⎠āˇāˇāļģāˇāļ¸ āļāļģ āļāļ."
+admin_2 : "đ§ āˇāļāļāˇāļāļē āˇāˇāļģāˇāļ¸ āļāļģāļą āļāļģāļą āļŊāļ¯āˇāļ¯āˇ {}!"
+admin_3 : "āˇāļāļāˇāļāļē āļ¯āˇāļąāļ§āļ¸āļ⎠āļąāˇāˇāļ āļāļģāļ¸āˇāļˇ āļāļģ āļāļ."
+admin_4 : "đ§ āˇāļāļāˇāļāļē āļąāˇāˇāļ āļāļģāļ¸āˇāļˇ āļāˇ
⎠{}!"
+admin_5 : "āˇāļāļāˇāļāļē āļ¯āˇāļąāļ§āļ¸āļ⎠āļąāˇāˇāļŦ āļāļģ āļāļ."
+admin_6 : "đ§āˇāļāļāˇāļāļē āˇāˇāˇāˇāļąāˇ āļąāˇāˇāļŦ āļāˇāļģāˇāļ¸ āļāˇāļ⎠āļāļģāļą āļŊāļ¯āˇ {}!"
+admin_7 : "āˇāļāļāˇāļāļē āļ¯āˇāļąāļ§āļ¸āļ⎠āļąāˇāˇāļŦ āļāļģ āļāļ."
+admin_8 : "đ§ āˇāļāļāˇāļāļē āļąāˇāˇāļŦ āļāˇāļģāˇāļ¸ āļāˇāļ⎠āļāļģāļą āļŊāļ¯āˇ {}!"
+admin_9 : "đ§ āˇāļāļāˇāļāļē āļ
āˇāˇāļąāˇ/āļąāˇāļāˇāˇāˇ āļāļ {}!"
+admin_10 : "đ§āˇāļāļāˇāļāļē āļ¸āļ āˇāˇāļģāˇāļĢ⎠{}!. āļ´āˇāļŊāˇāļ¸āˇ āļāˇāļ⎠āˇāļāļāˇāļāļēāļ⎠āļąāˇāļ."
+admin_11 : "āļ´āˇâāļģāˇāˇāˇāļē āˇāˇāļąāˇāˇ āļāˇāļģāˇāļ¸āˇāļ¯āˇ āļ¯āˇāˇāļēāļāˇ**{0}**\n\nāļāļģāˇāļĢāˇāļāļģ āļąāˇāˇāļ āļˇāˇāˇāˇāļ⎠āļāļģāļąāˇāļą /skip."
+admin_12 : "āˇāļļāļŊ āļāļģ āļāļ⎠āļŊāˇāļ´āˇ āˇāˇāļ¯āļąāļē āļąāˇāˇāˇ āļąāˇāˇāˇāļ āˇāļ āˇāļāļāˇāļ āļ´āļŽāļēāļāļ§ āļēāˇāļ¸āļ§ āļąāˇāˇāˇāļ⎠āˇāˇāļē. āļ¸āˇāļ¸ āˇāˇāˇāˇāˇāˇāļāļāļē āļˇāˇāˇāˇāļ⎠āļāˇāļģāˇāļ¸āļ§ āļāļģāˇāļĢāˇāļāļģ `/loop disable` āˇāļģāˇāˇ āļŊāˇāļ´āˇ āˇāˇāļ¯āļąāļē āļ
āļļāļŊ āļāļģāļąāˇāļą."
+admin_13 : "āļāļģāˇāļĢāˇāļāļģ 1, 2 āˇāˇ 4 āˇāˇāļąāˇ āļąāˇāˇāˇāļ āˇāļ āˇāļāļāˇāļ āļ´āļŽ āˇāļŗāˇāˇ āˇāļāļāˇâāļēāˇāļāˇāļ¸āļ āļ
āļāļ āļˇāˇāˇāˇāļ āļāļģāļąāˇāļą"
+admin_14 : "āļąāˇāˇāˇāļ āˇāļ āļ
āļāļāļēāļāļ§ āļēāˇāļ¸āļ§ āļ´āˇāļŊāˇāļ¸āˇ āļ
āˇāļ¸ āˇāˇāļēāˇāļąāˇ āļ´āˇāļŊ⎠2āļ⎠āļ
āˇāˇāˇâāļē āˇāˇ. /queue āļ´āļģāˇāļāˇāˇāˇ āļāļģāļąāˇāļą"
+admin_15 : "āļāļļ āļŊāļļ⎠āļ¯āˇāļąāˇ āļ
āļāļē āˇāļŗāˇāˇ āļ´āˇâāļģāļ¸āˇāļĢāˇāļ⎠āļ´āˇāļŊ⎠āļ´āˇāļŊāˇāļ¸āˇ āļąāˇāļ¸āˇāļ. āļāļģāˇāļĢāˇāļāļģ 1 āˇāˇ {0} āļ
āļāļģ āļ
āļāļ āļāˇāļģāļąāˇāļą "
+admin_16 : "āļąāˇāˇāˇāļ āˇāļ āˇāļāļāˇāļ āļ´āļŽāļē āˇāˇāļ āļēāˇāļ¸āļ§ āļ
āˇāļ¸āļ⎠āˇāˇāļē.\n\nāˇāļ¸āˇ āļ´āˇāļŊāˇāļ¸ āļ´āļģāˇāļāˇāˇāˇ āļāļģāļąāˇāļą /queue"
+admin_17 : "{0}.. āļāļģāˇāļĢāˇāļāļģ āļģāˇāļŗāˇ āˇāˇāļ§āˇāļąāˇāļą"
+admin_18 : "āļ´āļģāˇāļ´āˇāļŊāļ āļŊāˇāļēāˇāˇāˇāļāˇāˇ āˇāļ¸āˇ āļąāˇāˇāˇāļē\n\nāļāļģāˇāļĢāˇāļāļģ āļ´āļģāˇāļ´āˇāļŊāļ āļŊāˇāļēāˇāˇāˇāļāˇāˇ āļąāˇāˇāļ āļ´āˇāļģāļĢāļē āļāļģāļąāˇāļą /admincache āˇāˇ /reload"
+admin_19 : "āļ¸āˇāļē āˇāˇāļ¯āˇ āļāˇāļģāˇāļ¸ āˇāļŗāˇāˇ āļāļļ āˇāļŦ āļāļĢāˇāļŠāˇāļēāļ¸ āˇāˇāļ¸āˇāļāļ¸āˇ āļāˇ
āļ¸āļąāˇāļāļģāļĢāļē āˇāļ¸āļ āļ´āļģāˇāļ´āˇāļŊāļ āˇāˇāļē āļēāˇāļāˇāļē.\n āļāļļ āļ¯āˇāļąāļ§āļ¸āļ⎠āļ´āļģāˇāļ´āˇāļŊāļ āļąāļ¸āˇ, āļ´āļģāˇāļ´āˇāļŊāļ āˇāˇāļšāˇāļŊāˇāļē āˇāļģāˇāˇ āļąāˇāˇāļ āļ´āˇāļģāļĢāļē āļāļģāļąāˇāļą /admincache "
+admin_20 : "āļ´āļģāˇāļ´āˇāļŊāļ āˇāˇāļšāˇāļŊāˇāļē āˇāˇāļģāˇāļŽāļ⎠āļąāˇāˇāļ āļ´āˇāļģāļĢāļē āļāļģāļą āļŊāļ¯āˇ."
+admin_21 : "āļāļŊāˇāļ¸āˇ āļāˇāļģāˇāļ¸āļ§ āļ´āˇāļŊāˇāļ¸āˇ āļāļāˇāˇ
āļ āļāˇāˇāˇāˇāļ⎠āļąāˇāļ"
+admin_22 : "āļāļŊāˇāļ¸āˇ āļāˇāļģāˇāļ¸āļ§ āļ
āļ´āˇāˇāˇāˇāļ⎠āˇāˇāļē.\n\nāļ´āˇāļŊāˇāļ¸ āļ´āļģāˇāļāˇāˇāˇ āļāļģāļąāˇāļą:/queue"
+admin_23 : "**{0} āˇāˇāˇāˇāļąāˇ āļ´āˇāļŊāˇāļ¸ āļāļŊāˇāļ¸āˇ āļāļģāļą āļŊāļ¯āˇ **\n\nāļ¸āˇāļģ⎠āļāˇ
āļ´āˇāļŊāˇāļ¸ āļ´āļģāˇāļāˇāˇāˇ āļāļģāļąāˇāļą:/queue"
+admin_24 : "**āļˇāˇāˇāˇāļāļē:**\n/loop [āˇāļāˇâāļģāˇāļē/āļ
āļļāļŊ āļāļģāļąāˇāļą] āˇāˇ [1-10 āļ
āļāļģ āļ
āļāļāļē]\n\n**āļāļ¯āˇāˇāļģāļĢāļē:** /loop 5"
+admin_25 : "āļŊāˇāļ´āļē āˇāļļāļŊ āļāļģ āļāļ {0} āˇāļ¯āˇāˇ**{1}** āˇāˇāļģ. Bot āļ¯āˇāļąāˇ āˇāļŦ āļāļĢāˇāļŠāˇāļēāļ¸ āļ¸āļ āļ¯āˇāļąāļ§ āˇāˇāļ¯āļąāļē āˇāļą āˇāļāļāˇāļāļē āļąāˇāˇāļ āļąāˇāˇāļāļ⎠āļāļģāļąāˇ āļāļ **{1}** āˇāˇāļģ"
+admin_26 : "āļŊāˇāļ´āˇ āˇāˇāļ¯āļąāļē āˇāļŗāˇāˇ āļāļģāˇāļĢāˇāļāļģ 1-10 āļ
āļāļģ āļ
āļāļ āļˇāˇāˇāˇāļ⎠āļāļģāļąāˇāļą"
+admin_27 : "Loop Play āļ
āļļāļŊ āļāļģ āļāļ"
+
+# Bot
+# Start
+start_1 : "Thanks for having me in {0}.\n{1} is alive.\n\nFor any assistance or help, checkout our support group and channel."
+start_2 : "Hello, My name is {0}.\n\nI'm a telegram streaming bot with some useful features. Supporting platforms like Youtube, Spotify, Resso, AppleMusic , Soundcloud etc.\n\nFeel free to add me to your groups."
+start_3 : "Welcome To {0}\n\nI don't need any **admin permission** to work ( until asked for ).\n\nAssistant Username:- @{1}\nAssistant ID:- {2}"
+start_4 : "{0}'s Owner[{1}] has just joined your chat."
+start_5 : "A member of {0}'s Sudo User[{1}] has just joined your chat."
+start_6 : "âī¸ **Supergroup Needed** âī¸\n\nPlease convert your **group** to **supergroup** and then add me back.\n\n**How to make supergroup?**\nâ
Make your group's chat history **visible** once."
+start_7 : "**Blacklisted Chat**\n\nYou're chat has been blacklisted by the Bot. Please ask any SudoUser to whitelist chat first. Check [Sudolist from here]({0})"
+
+# Help
+help_1 : "āˇāˇāļŠāˇ āˇāˇāˇāˇāļāļģ āˇāļŗāˇāˇ āļ´āˇāļ āļļāˇāļāˇāļāļ¸āˇ āļāˇāļŊāˇāļ⎠āļāļģāļąāˇāļą.\n\nāˇāˇāļēāļŊ⎠āˇāˇāļ°āˇāļąāļēāļąāˇ āˇāļ¸āļ āļˇāˇāˇāˇāļ⎠āļāˇ
āˇāˇāļ: /"
+help_2 : "āļāļ¯āˇāˇ āˇāļŗāˇāˇ PM āˇāļŊāˇāļąāˇ āļ¸āˇāˇ āˇāļ¸āˇāļļāļąāˇāļ° āļāļģāļāļąāˇāļą."
+
+# Settings
+setting_1 : "âī¸ **Music Bot Settings**\n\nđ**Group:** {0}\nđ**Group ID:** `{1}`\n\nđĄ**Choose the function buttons from below which you want to edit or change.**"
+setting_3 : "âī¸ What is This?\n\n1) Direct: Plays search queries directly. Use -v to play videos in direct mode.\n\n2) Inline: Returns Inline Markup Buttons for choosing between video & audio."
+setting_4 : "âī¸ What is This?\n\nđĨ Everyone: Anyone can use admin commands(skip, pause, resume etc) present in this group.\n\nđ Admin Only: Only admins and authorized users can use admin commands."
+setting_5 : "No Authorized Users Found\n\nYou can allow any non-admin to use my admin commands by /auth and delete by using /unauth"
+setting_9 : "âī¸ What is This?\n\nWhen activated, Bot will delete its message after {0} to make your chat clean and clear."
+setting_10 : "âī¸ What is This?\n\n1) Group: Plays music in the group where the command is given .\n\n2) Channel: Plays music in the channel you want. Set channel id via /channelplay"
+setting_11 : "âī¸ What is This?\n\n1) Everyone: Anyone present in this group can play music here.\n\n2) Admin Only: Only admins can play the music in this group."
+setting_12 : "â You've no channel id defined for channel mode. Please define with /channelplay."
+setting_13 : "Can't change play mode in active group call. Please stop the voice chat first with /stop."
+setting_14 : "âī¸ What is This?\n\nWhen activated, Bot will delete its executed commands (/play, /pause, /shuffle, /stop etc) immediately.\n\nBot will be requiring delete messages admin right for this to work properly."
+setting_15 : "Failed to resolve peer, Make sure you have added bot in your channel and promoted it as admin.\n\nTry setting /channelplay again.."
+
+set_cb_1 : "āˇāˇâāļģāˇāˇâāļē āļāļāˇāļāˇāˇ āļ´āˇāļąāļŊāļē āļŊāļļ⎠āļāļąāˇāļ¸āˇāļąāˇ..."
+set_cb_2 : "āˇāˇāļŠāˇāļē⎠āļāļāˇāļāˇāˇ āļ´āˇāļąāļŊāļē āļŊāļļ⎠āļāļąāˇāļ¸āˇāļąāˇ..."
+set_cb_3 : "āˇāļāˇâāļēāˇāļ´āļą āļ´āļģāˇāˇāˇāļŊāļ āļ´āˇāļąāļŊāļē āļŊāļļ⎠āļāļąāˇāļ¸āˇāļąāˇ..."
+set_cb_4 : "Play āļ¸āˇāļ¯āˇāļŊ⎠āļ´āˇāļąāļŊāļē āļŊāļļ⎠āļāļąāˇāļ¸āˇāļąāˇ..."
+set_cb_5 : "āļ´āˇāļģāˇāˇāˇāļ¯āˇ āļ¸āˇāļ¯āˇāļŊ⎠āļ´āˇāļąāļŊāļē āļŊāļļ⎠āļāļąāˇāļ¸āˇāļąāˇ..."
+set_cb_6 : "āˇāˇāļąāˇāˇāļāļ¸āˇ āˇāˇāļāˇāˇāļ¸."
+set_cb_7 : "āˇāļāˇâāļēāˇāļ´āļą āļ´āļģāˇāˇāˇāļŊāļ āļŊāˇāļēāˇāˇāˇāļāˇāˇ āļŊāļļ⎠āļāļąāˇāļ¸āˇāļąāˇ.. āļāļģāˇāļĢāˇāļāļģ āļģāˇāļŗāˇ āˇāˇāļ§āˇāļąāˇāļą."
+set_cb_8 : "āļāļ´āˇāˇ āļŊāļļ⎠āļāˇāļąāˇāļ¸.."
+
+# Misc
+ustats_1 : "No User Stats Found."
+ustats_2 : "Grettings!, You have played **{0}** tracks till now with a whopping count of **{1}** times.\n\nTop {2} played by you:\n\n"
+
+gstats_1 : "Getting Global Stats, This could take some time..."
+gstats_2 : "No Stats Found."
+gstats_3 : "Getting Global Top 10 {0} on the bot, This could take some time.."
+gstats_4 : "**Total Queries on Bot:** {0}\n\n{1} has played **{2}** tracks till now with a whopping count of **{3}** times.\n\n**Top {4} Tracks:**\n"
+gstats_5 : "**Top {0} Chats of {1}:**\n\n"
+gstats_6 : "**Top {0} Users of {1}:**\n\n"
+gstats_7 : "This chat group has played **{0}** tracks till now with a whopping count of **{1}** times.\n\nTop {2} played by this chat group:\n\n"
+gstats_8 : "Getting Bot's general stats and information.. This could take some time..."
+gstats_9 : "**GLOBAL TOP 10 STATS OF THE BOT**\n\nSelect the buttons from below for which you want to check global stats from bot's servers."
+gstats_10 : "**Global Stats of {0}**\n\nSelect the buttons from below for which you want to check global stats from bot's servers."
+gstats_11 : "**General Stats of {0}**\nSelect the buttons from below for which you want to check global stats from bot's servers.\n\nTo check top tracks, chats, users and other stuffs, please use /gstats"
+
+
+# Play
+#Play Callback
+playcb_1 : "āļ¸āˇāļē āļāļļ āˇāļŗāˇāˇ āļąāˇāˇāˇ! āļāļļāˇāļ¸ āļāˇāļāļē āˇāˇāļēāļąāˇāļą."
+playcb_2 : "āļāˇ
āļ āļ´āˇâāļģāļāˇāļĩāļŊāļē āļŊāļļ⎠āļāļąāˇāļ¸āˇāļąāˇ"
+
+# Channel Play
+cplay_1 : "āļāļļāļ§ āļ¸āˇāļ¸ āļāļāˇāļļāˇāˇ[{0}] āˇāˇāļ§ āļāļąāˇāļ¸ āļąāˇāļŊāˇāļāˇāˇāļāļ§ āˇāˇ āļāļļ⎠āļāļāˇāļļāˇāˇ āˇāļ¸āˇāļļāļąāˇāļ°āˇāļ āļąāˇāļŊāˇāļāˇāˇāļāļ§ āļąāˇāļŊāˇāļāˇāˇāļŊ āˇāļāļāˇāļāļē āˇāˇāļ¯āļąāļē āļāˇ
āˇāˇāļ.\n\n**āˇāļ¸āˇāļļāļąāˇāļ°āˇāļ āļąāˇāļŊāˇāļāˇāˇ āˇāļŗāˇāˇ:**\n`/{1} āˇāļļāˇāļŗāˇ`\n\n** āˇāˇāļąāļ⎠āļāļąāˇāļ¸ āļąāˇāļŊāˇāļāˇāˇāļ⎠āˇāļŗāˇāˇ:**\n`/{1} [Channel ID]`"
+cplay_2 : "āļ¸āˇāļ¸ āļāļāˇāļļāˇāļ§ āˇāļ¸āˇāļļāļąāˇāļ°āˇāļ āļąāˇāļŊāˇāļāˇāˇāļ⎠āļąāˇāļ¸āˇāļ."
+cplay_3 : "āļąāˇāļŊāˇāļāˇāˇ {0}\n\n__Channel ID__: {1} āˇāˇāļ āļ
āļģāˇāļŽ āļ¯āļāˇāˇāˇ āļāļ"
+cplay_4 : "āļąāˇāļŊāˇāļāˇāˇ āļŊāļļ⎠āļāˇāļąāˇāļ¸āļ§ āļ
āļ´āˇāˇāˇāˇāļ⎠āˇāˇāļē.\n\nāļāļļ āļāļļ⎠āļąāˇāļŊāˇāļāˇāˇāļ§ āļļāˇāļ§āˇ āļāļ⎠āļāļģ āļāļē āļ´āļģāˇāļ´āˇāļŊāļ āļŊāˇāˇ āļāˇāˇāˇ āļāļģ āļāļ⎠āļļ⎠āˇāˇāļāˇāļ āļāļģ āļāļąāˇāļą.\n/channelplay āˇāļģāˇāˇ āļąāˇāļŊāˇāļāˇāˇ āˇāˇāļąāˇāˇ āļāļģāļąāˇāļą āˇāˇ /playmode āˇāļģāˇāˇ āļąāˇāļŊāˇāļ⎠āļ°āˇāˇāļą āļ´āˇâāļģāļāˇāļģāļē āļ
āļļāļŊ āļāļģāļąāˇāļą"
+cplay_5 : "āļąāˇāļŊāˇāļ⎠āļ´āļ¸āļĢāļ⎠āˇāˇāļē āļ¯āļāˇāˇāļēāˇ."
+cplay_6 : "āļ¸āˇāļ¸ āļāļĢāˇāļŠāˇāļēāļ¸ āˇāļ¸āļ āˇāļ¸āˇāļļāļąāˇāļ° āˇāˇāļ¸āļ§ āļāļļ āļąāˇāļŊāˇāļāˇāˇāˇ [{0}] **āˇāˇāļ¸āˇāļāļģāˇ** āˇāˇāļē āļēāˇāļāˇāļē.\n**āļąāˇāļŊāˇāļāˇāˇāˇ āˇāˇāļ¸āˇāļāļģāˇ:** @{1}\n\nāˇāˇāļāļŊāˇāļ´āļēāļ⎠āļŊāˇāˇ āļāļļāļ§ āļāļļ⎠āļāļĢāˇāļŠāˇāļēāļ¸ āļāļ¸ āļąāˇāļŊāˇāļāˇāˇāļ§ āˇāļ¸āˇāļļāļąāˇāļ° āļāˇ
āˇāˇāļāˇāļē āļāļąāˇāļ´āˇāˇ `/channelplay linked` āˇāļ¸āļ āˇāļ¸āˇāļļāļąāˇāļ° āˇāˇāļ¸āļ§ āļāļāˇāˇāˇāˇ āļāļģāļąāˇāļą."
+
+#Play
+play_1 : "đ āˇāˇāļ¸āˇāˇāļ¸ āˇāļāˇāļ¸āˇāļąāˇ... āļāļģāˇāļĢāˇāļāļģ āļģāˇāļŗāˇ āˇāˇāļ§āˇāļąāˇāļą!"
+play_2 : "**đˇāļąāˇāļŊāˇāļ⎠āļ´āˇāļŊ⎠āļ¸āˇāļ¯āˇāļŊāˇāļē**\nđ āˇāˇāļ¸āˇāˇāļ¸ āˇāļāˇāļ¸āˇāļąāˇ... āļāļģāˇāļĢāˇāļāļģ āļģāˇāļŗāˇ āˇāˇāļ§āˇāļąāˇāļą!\n\n**āˇāļ¸āˇāļļāļąāˇāļ°āˇāļ āļąāˇāļŊāˇāļāˇāˇ:** {0}"
+play_3 : "āˇāˇāļ¸āˇāˇāļ¸ āˇāˇāļāˇāˇāļ¸āļ§ āļ
āˇāļ¸āļ⎠āˇāˇāļē!"
+play_4 : "đ **āļ´āļģāˇāļ´āˇāļŊāļāļēāˇāļąāˇāļ§ āļ´āļ¸āļĢāļ⎠āˇāˇāļ¯āļąāļē āļāļģāļąāˇāļą**\nāļ¸āˇāļ¸ āˇāļ¸āˇāˇāļē⎠āˇāļāļāˇāļāļē āˇāˇāļ¯āļąāļē āļāˇ
āˇāˇāļāˇāļ⎠āļ´āļģāˇāļ´āˇāļŊāļāļēāˇāļąāˇāļ§ āˇāˇ āˇāļāˇâāļēāˇāļ´āļą āļ´āļģāˇāˇāˇāļŊāļāļēāˇāļąāˇāļ§ āļ´āļ¸āļĢāˇ.\n\n/playmode āˇāļģāˇāˇ āļ¸āˇāļ¯āˇāļŊāˇāļē āˇāˇāļąāˇāˇ āļāļģāļąāˇāļą āˇāˇ āļāļļ āļ¯āˇāļąāļ§āļ¸āļ⎠āļ´āļģāˇāļ´āˇāļŊāļ āļąāļ¸āˇ, /admincache āˇāļģāˇāˇ admincache āļąāˇāˇāļ āļ´āˇāļģāļĢāļē āļāļģāļąāˇāļą"
+play_5 : "āˇāˇâāļģāˇāˇâāļē āļāˇāļąāˇāˇ āˇāˇāļāˇāˇāļ¸āļ§ āļ
āˇāļ¸āļ⎠āˇāˇāļē.\n\nāˇāˇâāļģāˇāˇâāļē āļāˇāļąāˇ āļ´āˇâāļģāļ¸āˇāļĢāļē 100 mb āļ§ āˇāļŠāˇ āļ
āļŠāˇ āˇāˇāļē āļēāˇāļāˇāļē"
+play_6 : "**āļāˇāļŊ āˇāˇāļ¸āˇāˇ āļāļāˇāļ¸āˇāļą āļŊāļ¯āˇ**\n\n**āļ
āˇāˇāļģ āļŊāļ⎠āļāˇāļŊ āˇāˇāļ¸āˇāˇ: **{0}āļ¸āˇāļąāˇāļāˇāļāˇ(āļē)\n**āļŊāˇāļļāˇāļĢ⎠āļāˇāļŊ āˇāˇāļ¸āˇāˇ:** {1}āļ¸āˇāļąāˇ(āļē)"
+play_7 : "āˇāļ¸āˇāˇāļąāˇāļą! CPU āļ
āļ°āˇ āļļāļģ āļāˇāļ§āˇ
⎠āˇāˇāļāˇāˇāˇāļąāˇ Bot āļāļŠ āļ¯āˇāļąāˇāļąāˇ āˇāˇāļ¸āˇāļ āˇāˇāļŠāˇāļē⎠āļāļ¸āļāˇāļ¸āˇ āļāļĢāļąāļāļ§ āļ´āļ¸āļĢāˇ. āˇāˇāļąāļ⎠āļļāˇāˇāˇ āļāļāˇāļļāˇāˇ āļ¯āˇāļąāˇ āˇāˇāļŠāˇāļē⎠āļāļ¸āļāˇāļ¸āˇ āļˇāˇāˇāˇāļ⎠āļāļģāļēāˇ. āˇāˇâāļģāˇāˇâāļē āˇāˇāļ āļ¸āˇāļģ⎠āˇāˇāļ¸āļ§ āļāļāˇāˇāˇāˇ āļāļģāļąāˇāļą āˇāˇ āļ´āˇāˇāˇ āļąāˇāˇāļ āļāļāˇāˇāˇāˇ āļāļģāļąāˇāļą"
+play_8 : "āˇāļŊāļāļ⎠āˇāˇāļŠāˇāļē⎠āļāˇāļąāˇ āļ¯āˇāļāˇāˇāļ⎠āļąāˇāˇāˇ!\n\n**āˇāˇāˇāļē āļ¯āļāˇāˇāļą āļāļāˇāļāˇ:** {0}"
+play_9 : "āˇāˇāļŠāˇāļē⎠āļāˇāļąāˇ āļ´āˇâāļģāļ¸āˇāļĢāļē 1 GiB āļ§ āˇāļŠāˇ āļ
āļŠāˇ āˇāˇāļē āļēāˇāļāˇāļē"
+play_10 : "**Youtube Playlist āˇāˇāˇāˇāˇāˇāļāļāļē**\n\nāļāļļāļ§ āˇāļ¸āˇāļ´āˇāļģāˇāļĢ Youtube Playlist āˇāˇāļ¯āļąāļē āļāˇāļģāˇāļ¸āļ§ āļ
āˇāˇāˇâāļē āļ¸āˇāļ¯āˇāļŊāˇāļē āļāˇāļģāļąāˇāļą"
+play_11 : "đāˇāˇāļģāˇāˇāļē: **{0}\n\nâŗāļāˇāļŊ āˇāˇāļ¸āˇāˇ:** {1} Mins"
+play_12 : "**Spotify Playlists**\n\nāļāļŊāˇāļŊāļą āļŊāļ¯āˇāļ¯āˇ:- {0}"
+play_13 : "**Apple Playlists**\n\nāļāļŊāˇāļŊāļą āļŊāļ¯āˇāļ¯āˇ:- {0}"
+play_14 : "**URL āļāļ āˇāļāˇâāļēāˇāļ´āļąāļē āļāˇ
āļąāˇāˇāˇāļ.**\nāļ¸āˇāļ¸ url āļāļ āļ´āˇāļ āˇāļŗāˇāļąāˇ āļāļąāˇāļ¸ āˇāˇāļ¯āˇāļāˇāˇāļāļ§ āļ
āļēāļ⎠āˇāˇāļ¯ āļēāļąāˇāļą āļ´āˇāļ¯āˇāļ¸āļēāļ§ āļāļģāˇāļĢāļāˇ: Youtube, AppleMusic, Spotify, Resso āˇāˇ Soundcloud.\n\nāļāļļāļ§ M3u8 āˇāˇ āļ¯āˇāļģāˇāˇāļŽ āˇāļļāˇāļŗāˇ āˇāļŗāˇāˇ /stream āļˇāˇāˇāˇāļ⎠āļāˇ
āˇāˇāļ."
+play_15 : "**āˇāļĸāˇāˇāˇ āļ´āˇâāļģāˇāˇāˇāļē āļ
āļąāˇāˇāļģāļĢāļē āļāļģ āļāļ**\nāļ´āļ¯āˇāļ°āļ⎠āļ¸āļāˇāļąāˇ āļāļļ⎠āļ°āˇāˇāļą āˇāļļāˇāļŗāˇāļē āˇāļĸāˇāˇāˇ āļ´āˇâāļģāˇāˇāˇāļēāļ⎠āļŊāˇāˇ āˇāļŗāˇāļąāˇāļāˇāļą āļāļ. āˇāļĸāˇāˇāˇ āļ´āˇâāļģāˇāˇāˇāļē āļāˇâāļģāˇāļŠāˇ āļāˇāļģāˇāļ¸āļ§ āļ
āˇāˇāˇâāļēāļ¯?"
+play_16 : "āļāļĢāˇāļŠ āˇāˇāˇāˇāļāļģ āļŊāļļ⎠āļāˇāļąāˇāļ¸āļ§ āļ
āˇāļ¸āļ⎠āˇāˇāļē. āˇāˇāļąāļ⎠āļāļąāˇāļ¸ āˇāˇāļŊāˇāļŊāļ¸āˇ āļāˇāļģāˇāļ¸āļ§ āļāļāˇāˇāˇāˇ āļāļģāļąāˇāļą."
+play_17 : "Unable to play this type of spotify query!\n\nI can only play spotify tracks, albums, artists and playlists"
+play_18 : "**No Active Voice Chat Found**\n\nTo use force play, there must be an active voice chat going on in your group. **Force Play** stops the playing track on voice chat and starts playing the searched track instantly without disturbing/clearing queue."
+
+
+
+#Playlist
+playlist_1 : "**āļˇāˇāˇāˇāļāļē:** /play [āˇāļāļāˇāļ āļąāˇāļ¸āļē āˇāˇ Youtube āˇāļļāˇāļŗāˇāļē āˇāˇ āˇāˇâāļģāˇāˇâāļē āˇāˇāļ āļ´āˇāˇ
āˇāļāˇāļģ⎠āļ¯āˇāļąāˇāļą]\nāļāļļāļ§ Bots Server Playlist āˇāˇāļ¯āļąāļē āļāˇāļģāˇāļ¸āļ§ āļ
āˇāˇāˇâāļē āļąāļ¸āˇ! āļ´āˇāļ āļļāˇāļāˇāļāļ¸ āļāļļāļąāˇāļą."
+playlist_2 : "āļāļļāļ⎠āļ°āˇāˇāļą āļŊāˇāļēāˇāˇāˇāļāˇāˇ āļŊāļļ⎠āļāļąāˇāļ¸āˇāļąāˇ. āļāļģāˇāļĢāˇāļāļģ āļģāˇāļŗāˇ āˇāˇāļ§āˇāļąāˇāļą"
+playlist_3 : "āļāļļāļ§ Bot's Server āˇāˇ āļ°āˇāˇāļą āļŊāˇāļēāˇāˇāˇāļāˇāˇāļ⎠āļąāˇāļ¸āˇāļ."
+playlist_4 : "āļŊāļļāˇāļāļ⎠āļ°āˇāˇāļą āļŊāˇāļēāˇāˇāˇāļāˇāˇ:\n\n"
+playlist_5 : "āļāˇāļŊ āˇāˇāļ¸āˇāˇ- {0} Mins"
+playlist_6 : "āļ°āˇāˇāļą āļŊāˇāļēāˇāˇāˇāļ⎠āļ¸āļ⎠āļ¯āˇāļ¸āˇāļ¸ āˇāļŗāˇāˇ PM āˇāˇ āļ¸āˇ āļ
āļ¸āļāļąāˇāļą."
+playlist_7 : "āļ°āˇāˇāļą āļŊāˇāļēāˇāˇāˇāļāˇāˇāˇ āļāļāˇāˇ
āļ āļāļĢāˇāļŠ: {0}\n\nāļāļļ⎠āļ°āˇāˇāļą āļŊāˇāļēāˇāˇāˇāļāˇāˇāˇ āļāļ⎠āˇāˇāˇāˇāˇāˇāļ āļ°āˇāˇāļą āļ´āļŽāļēāļ⎠āļ¸āˇāļāˇāļ¸āļ§ āļļāˇāļāˇāļāļ¸āˇ āļāļļāļąāˇāļą.\n\nāˇāļ¸āˇāļ´āˇāļģāˇāļĢ āļ°āˇāˇāļą āļŊāˇāļēāˇāˇāˇāļāˇāˇ āļ¸āļ⎠āļ¯āˇāļ¸āˇāļ¸āļ§: Del Whole Playlist āļļāˇāļāˇāļāļ¸ āļāļļāļąāˇāļą."
+playlist_8 : "āļ¯āˇāļąāļ§āļ¸āļ⎠āļ´āˇāļāˇ\n\nāļ¸āˇāļ¸ āļ°āˇāˇāļą āļ´āļŽāļē āļāļļāļ⎠āļ°āˇāˇāļą āļŊāˇāļēāˇāˇāˇāļāˇāˇāˇ āļ´āˇāļāˇ."
+playlist_9 : "āˇāļ¸āˇāˇāļąāˇāļą! āļāļļāļ§ āļ°āˇāˇāļą āļŊāˇāļēāˇāˇāˇāļāˇāˇāļ āˇāļāļāˇāļāļē {0}āļ⎠āļ´āļ¸āļĢāļ⎠āļāˇāļļāˇāļē āˇāˇāļ."
+playlist_10 : "āļ°āˇāˇāļą āļŊāˇāļēāˇāˇāˇāļ⎠āļāļāļ⎠āļāˇāļģāˇāļ¸\n\n{0}\nāļāļļ⎠āļ°āˇāˇāļą āļŊāˇāļēāˇāˇāˇāļāˇāˇāļ§ āļāļāļ⎠āļāļģāļą āļŊāļ¯āˇ."
+playlist_11 : "āļāļļāļ⎠āļ°āˇāˇāļą āļ´āļŽāļē āˇāˇāļģāˇāļŽāļ⎠āļ¸āļ⎠āļāļ."
+playlist_12 : "āļāļļāļ⎠āļ°āˇāˇāļą āļ´āļŽāļē āļ¸āˇāļāˇāļ¸āļ§ āļ
āˇāļ¸āļ⎠āˇāˇāļē."
+playlist_13 : "āˇāˇāˇāˇāļ¯āˇāļēāļāļēāˇāļąāˇ āļāļļāļ⎠āˇāļ¸āˇāļ´āˇāļģāˇāļĢ āļ°āˇāˇāļą āļŊāˇāļēāˇāˇāˇāļ⎠āļ¸āļ⎠āļāļ."
+playlist_14 : "**āļāļļāļ§ āļāļļāļ⎠āˇāļ¸āˇāļ´āˇāļģāˇāļĢ āļ°āˇāˇāļą āļŊāˇāļēāˇāˇāˇāļāˇāˇ āļ¸āļ⎠āļ¯āˇāļ¸āˇāļ¸āļ§ āļ
āˇāˇāˇâāļē āļļ⎠āļāļļāļ§ āˇāˇāˇāˇāˇāˇāˇāļ¯?**\n\nāļāļļāļ⎠āļ°āˇāˇāļą āļŊāˇāļēāˇāˇāˇāļāˇāˇ āļāļļāļ§ āļ
āˇāˇāļ¸āˇ āˇāļąāˇ āļāļ⎠āļ
āļāļģ āļ¸āˇāļē āļ´āˇāˇāˇ āļ´āˇâāļģāļāˇāˇāˇāļ°āļąāļē āļāˇ
āļąāˇāˇāˇāļ."
+playlist_15 : "[āˇāļ¸āˇāļ´āˇāļģāˇāļĢ āļ°āˇāˇāļą āļŊāˇāļēāˇāˇāˇāļāˇāˇ āļ´āļģāˇāļāˇāˇāˇ āļāļģāļąāˇāļą]({0})"
+playlist_16 : "āļ´āˇāļŊāˇāļ¸āˇ āˇāˇāˇāļ āļ°āˇāˇāļą āļŊāˇāļēāˇāˇāˇāļāˇāˇ:"
+playlist_17 : "āļ´āˇāļŊāˇāļ¸āˇ āļ´āˇāˇāˇāļ§āˇāļ¸ -"
+playlist_18 : "[āˇāļ¸āˇāļ´āˇāļģāˇāļĢ āļ´āˇāļŊāˇāļ¸āˇ āˇāˇāˇāļ āļ°āˇāˇāļą āļŊāˇāļēāˇāˇāˇāļāˇāˇ āļ´āļģāˇāļāˇāˇāˇ āļāļģāļąāˇāļą]({0})\n\bāļ
āˇāˇāļąāˇ āļ´āˇāļŊāˇāļ¸āˇ āˇāˇāļŽāˇāļąāļē : **{1}**"
+
+
+#Playmode
+playmode_1 : "āļāļļāļ⎠āļāļĢāˇāļŠāˇāļēāļ¸ āļāˇāˇ
āˇāˇāļ¸āˇāˇāļ¸āˇ āˇāˇāļ¯āļąāļē āļāˇāļģāˇāļ¸āļ§ āļāļļāļ§ āļ
āˇāˇāˇâāļē āļ¸āˇāļ¯āˇāļŊāˇāļē āļāˇāļģāļąāˇāļą[{0}]."
+playmode_2 : "{0} āˇāˇāˇāˇāļąāˇ āˇāˇāļāˇāˇāļ¸āˇ āˇāˇāļąāˇāˇ āļāļģ āˇāˇāļģāˇāļŽāļ⎠āˇāˇāļģāļāˇāļą āļŊāļ¯āˇ "
+
+#Stream
+str_1 : "āļāļģāˇāļĢāˇāļāļģ M3u8 āˇāļļāˇāļŗāˇ āˇāˇ āļ¯āļģāˇāˇāļ āˇāļļāˇāļŗāˇ āˇāļ´āļēāļąāˇāļą."
+str_2 : "â
āˇāļŊāļāļ⎠āļ´āˇâāļģāˇāˇāˇāļē āˇāļāˇâāļēāˇāļ´āļąāļē āļāļģ āļāļ\n\nāļāļģāˇāļĢāˇāļāļģ āˇāļļāˇāļŗāˇāļē āˇāˇāļāˇāˇāļ¸āļ§ āļģāˇāļŗāˇ āˇāˇāļ§āˇāļąāˇāļą.."
+str_3 : "youtube āˇāļĸāˇāˇāˇ āļ´āˇâāļģāˇāˇāˇ āļ´āˇâāļģāˇāˇāˇ āļāˇāļģāˇāļ¸āļ§ āļąāˇāˇāˇāļ. āˇāļĸāˇāˇāˇ āļāļāˇāļāˇāļēāļ⎠āˇāļ¸āˇ āļąāˇāˇāˇāļĢāˇ"
+
+#TopPlay
+tracks_1 : "**Processing {0} Top 10 Playlist**\nThis could take some mins(around 3-4 mins).. Please Wait...\n\n**đ¤Requested By:** {1}\n\nCheck Top 10 tracks by /stats"
+tracks_2 : "**āļ¯āˇāˇāļē**\n\nāļāˇāˇāļ¸ āļąāˇ**{0} āļāˇāˇ
āļ¸ āļ°āˇāˇāļą āļŊāˇāļēāˇāˇāˇāļāˇāˇ 10** bot āļ⎠āˇāˇāˇāˇāļ¯āˇāļēāļāļēāļąāˇ āļ¸āļ. āļāļģāˇāļĢāˇāļāļģ āˇāˇāļąāļ⎠āļ°āˇāˇāļą āļŊāˇāļēāˇāˇāˇāļāˇāˇāļ⎠āļāļāˇāˇāˇāˇ āļāļģāļąāˇāļą"
+
+
+# TOOLS
+
+#Lyrics
+lyrics_1 : "**āļˇāˇāˇāˇāļāļē:**\n\n/lyrics [ Music Name]"
+lyrics_2 : "āļ⎠āļ´āļ¯ āˇāˇāļēāļ¸āˇāļąāˇ"
+lyrics_3 : "â āļ´āļ¯ āļģāļ āļąāļē āļāˇāļą āļāļ¸āļ§ āļ
āļ´āˇāˇāˇāˇāļ⎠āˇāˇāļēđ.\n\nđĄ**āˇāˇāˇāˇāļ¸āļ§ āļāļāˇāˇāˇāˇ āļāˇ
āˇ:** {0}"
+lyrics_5 :
+lyrics_4 : "āļ´āˇāļ āļļāˇāļāˇāļāļ¸ āļ¸āļ āļāˇāļŊāˇāļ⎠āļāļģ āļ¯āˇāļ⎠āļ
āļēāˇāļ āˇāļ āļāˇāļ´āˇāļŊ⎠āˇāļģāˇāļ āļ⎠āˇāˇāˇāˇāļ¸āˇ āˇāˇ
āļāˇāˇāˇ āļāˇāļąāˇāļ¸āļ§ āˇāˇāˇāˇ āļ´āļ¯ āļŊāļļ⎠āļāļąāˇāļą."
+
+#Ping
+ping_1 : "āļ´āˇāļ!!!!"
+
+# Song
+song_1 : "āļāļļāļ§ āļē⎠āļ§āˇāļēāˇāļļ⎠āˇāˇāļāˇāļąāˇ āˇāļāļāˇāļāļē āˇāˇ āˇāˇāļŠāˇāļē⎠āļļāˇāļāļ āļāˇ
āˇāˇāļāˇāļ⎠āļ´āˇāļ¯āˇāļāļŊāˇāļ āļāļāˇāļļāˇāˇ āˇāļŊāļ¯āˇ āļ´āļ¸āļĢāˇ. āļāļģāˇāļĢāˇāļāļģ āļ¸āˇāˇ āļ´āˇāļ¯āˇāļāļŊāˇāļ āļāļāˇāļļāˇāˇ āˇāļŊāˇāļąāˇ āļāļģāļ¸āˇāļˇ āļāļģāļąāˇāļą."
+song_2 : "**āļˇāˇāˇāˇāļāļē:**\n\n/song [āˇāļāļāˇāļ āļąāˇāļ¸āļē] āˇāˇ [Youtube Link]"
+song_3 : "āˇāļĸāˇāˇāˇ āˇāļļāˇāļŗāˇāļē āļ
āļąāˇāˇāļģāļĢāļē āˇāˇāļē. āļ¸āļ§ āˇāļĸāˇāˇāˇ āļē⎠āļ§āˇāļēāˇāļļ⎠āˇāˇāļŠāˇāļē⎠āļļāˇāļāļ āļāˇ
āļąāˇāˇāˇāļ."
+song_4 : "**đāˇāˇāļģāˇāˇāļē:**- {0}\n\nāļāļļāļ§ āļļāˇāļāļ āļāˇāļģāˇāļ¸āļ§ āļ
āˇāˇāˇâāļē āˇāļģāˇāļāļē āļāˇāļģāļąāˇāļą."
+song_5 : "āˇāļŊāļāļ⎠Youtube āˇāļļāˇāļŗāˇāļēāļ⎠āļąāˇāˇāˇ"
+song_6 : "āļāļāˇāļ⎠āļŊāļļ⎠āļāļąāˇāļ¸āˇāļąāˇ.. \n\nāļāļģāˇāļĢāˇāļāļģ āļģāˇāļŗāˇ āˇāˇāļ§āˇāļąāˇāļą.."
+song_7 : "āˇāˇāļŠāˇāļēāˇāˇ āˇāļŗāˇāˇ āļ´āˇāļāˇāļą āļāļāˇāļ⎠āļŊāļļ⎠āļāˇāļąāˇāļ¸āļ§ āļ
āˇāļ¸āļ⎠āˇāˇāļē. āļāļģāˇāļĢāˇāļāļģ āˇāˇāļąāļ⎠āļāļąāˇāļ¸ āļ°āˇāˇāļą āļ´āļŽāļēāļ⎠āļāļāˇāˇāˇāˇ āļāļģāļąāˇāļą."
+song_8 : "āļļāˇāļāļ āļāˇāļģāˇāļ¸ āļāļģāļ¸āˇāļˇ āˇāˇāļē\n\nāļļāˇāļāļ āļāˇāļģāˇāļ¸āˇ āˇāˇāļāļē āļ¸āļąāˇāļ¯āļāˇāļ¸āˇ āˇāˇāļē āˇāˇāļ. āļāļģāˇāļĢāˇāļāļģ āļāļąāˇāļą.."
+song_9 : "Youtube-DL āˇāˇāļāˇāļąāˇ āļāˇāļāļē āļļāˇāļāļ āļāˇāļģāˇāļ¸ āļ
āˇāˇāļģāˇāļŽāļ āˇāˇāļē\n\n**āˇāˇāļāˇāˇ:** {0}"
+song_10 : "āˇāˇāˇāˇāļ¯āˇāļēāļ āˇāˇāļāˇāļąāˇ āļ§āˇāļŊāˇāļāˇâāļģāˇāļ¸āˇ āļāļŠāˇāļāļ āļāˇāļģāˇāļ¸ āļ
āˇāˇāļģāˇāļŽāļ āˇāˇāļē."
+song_11 : "āļāļŠāˇāļāļ āļāˇāļģāˇāļ¸ āļāļģāļ¸āˇāļˇ āļāļģ āļāļ\n\nāļāļŠāˇāļāļ āļāˇāļģāˇāļ¸āˇ āˇāˇāļāļē āļ¸āļąāˇāļ¯āļāˇāļ¸āˇ āˇāˇāļē āˇāˇāļ. āļāļģāˇāļĢāˇāļāļģ āļāļąāˇāļą.."
+
+# Tools - Queue
+queue_1 : "āļāļģāˇāļĢāˇāļāļģ āļģāˇāļŗāˇ āˇāˇāļ§āˇāļąāˇāļą.. āļ´āˇāļŊāˇāļ¸ āļŊāļļ⎠āļāļąāˇāļ¸āˇāļąāˇ.."
+queue_2 : "āļ´āˇāļŊāˇāļ¸āˇ āļāļāˇāˇ
āļ āļ´āˇāļŊ⎠āļąāˇāļ."
+queue_3 : "**āļ´āˇāļŊāˇāļ¸āˇ āļ´āˇāļŊāˇ: ** [āļ¸āˇāļāˇāļąāˇāļąāˇ āļāˇāļ⎠āļ´āˇāļŊāˇāļ¸āˇ āˇāˇāˇāļ āļ´āˇāļŊ⎠āļ´āļģāˇāļāˇāˇāˇ āļāļģāļąāˇāļą]({0})"
+queue_4 : "âŗ āļ´āˇāļŊāˇāļ¸āļ§ āļāļāļ⎠āļāļģāļą āļŊāļ¯āˇ **#{0}\n\nđĄāˇāˇāļģāˇāˇāļē:** {1}\n**âąāļāˇāļŊ āˇāˇāļ¸āˇāˇ:** {2}\nđ¤**āļāļāļ⎠āļāļģāļą āļŊāļ¯āˇāļ¯āˇ:** {3}"
+
+# All Streaming Lines
+stream_1 : "đĄ **āˇāļāļāˇāļāļē āļāļģāļ¸āˇāļˇ āˇāˇāļē** đĄ\n\nđ¤**āļāļŊāˇāļŊāļą āļŊāļ¯āˇāļ¯āˇ:** {0}\nđĻ**āˇāˇāˇāˇāļāļģ: **[Here]({1})"
+stream_2 : "đĄ **āˇāļāļāˇāļāļē āļāļģāļ¸āˇāļˇ āˇāˇāļē URL āˇāļģāˇāˇ ** đĄ\n\nđ¤**āļāļŊāˇāļŊāļą āļŊāļ¯āˇāļ¯āˇ:** {0}"
+stream_3 : "đĄ **āˇāļāļāˇāļāļē āļāļģāļ¸āˇāļˇ āˇāˇāļē** đĄ\n\n**đˇāˇāˇāļģāˇāˇāļē:** {0}\nâī¸**āļāˇāļŊ āˇāˇāļ¸āˇāˇ**: {1}\nđ¤**āļāļŊāˇāļŊāļą āļŊāļ¯āˇāļ¯āˇ:** {2}"
+stream_4 : "đĄ **āˇāļāļāˇāļāļē āļāļģāļ¸āˇāļˇ āˇāˇāļē** đĄ\n\n**đˇāˇāˇāļģāˇāˇāļē:** [{0}]({1})\nâī¸**āļāˇāļŊ āˇāˇāļ¸āˇāˇ**: {2}\nđ¤**āļāļŊāˇāļŊāļą āļŊāļ¯āˇāļ¯āˇ:** {3}"
+
+# Inline Buttons
+
+#General Buttons
+CLOSE_BUTTON : "đ āˇāˇāļąāˇāļą"
+CLOSEMENU_BUTTON : "đ āļ¸āˇāļąāˇāˇ āˇāˇāļąāˇāļą"
+BACK_BUTTON : "âŦ
āļāļ´āˇāˇ"
+UNBAN_BUTTON : "đ āˇāˇāļāļģāˇāļ⎠āļāˇāļąāļ¸ āļāˇāļ⎠āļāļģāļąāˇāļą"
+
+#Lyrics
+L_B_1 : "đ āļ¯āˇāļąāˇ āļ´āļ¯ āļģāļ āļąāļē āļ´āļģāˇāļāˇāˇāˇ āļāļģāļąāˇāļą"
+
+# Start
+S_B_1 : "đ āˇāˇāļ°āˇāļą"
+S_B_2 : "đ§ āˇāˇāļāˇāˇāļ¸āˇ"
+S_B_3 : "đ¨ āˇāˇāˇāļē"
+S_B_4 : "đ¨ āļąāˇāļŊāˇāļāˇāˇ"
+S_B_5 : "â āļ¸āˇāˇ āļāļēāˇāļ⎠āˇāļ¸āˇāˇāļēāļ§ āļāļāļ§ āļāļāļ⎠āļāļģāļąāˇāļą"
+S_B_6 : "đĄ āļāˇāļ§āˇ āļģāˇāļ´āˇāˇ"
+S_B_7 : "đ¤ āļļāˇāļ§āˇ āˇāˇāļ¸āˇāļāļģāˇ"
+S_B_8 : "đāˇāˇāļ°āˇāļą āļ¸āˇāļąāˇāˇ "
+
+#Help
+H_B_1 : "āļ´āļģāˇāļ´āˇāļŊāļ āˇāˇāļ°āˇāļą"
+H_B_2 : "āˇāˇāļ¯āļą āˇāˇāļ°āˇāļą"
+H_B_3 : "āļļāˇāļ§āˇ āˇāˇāļ°āˇāļą"
+H_B_4 : "āļ
āļ¸āļāļģ āˇāˇāļ°āˇāļą"
+H_B_5 : "āļ¸āˇāļąāˇāˇ āˇāˇāļąāˇāļą"
+H_B_6 : "SudoUser Commands"
+
+#PlayMode
+PM_B_1 : "āˇāˇāļĸāˇāˇ āˇāˇāļ¯āļąāļē"
+PM_B_2 : "āļ´āˇāļŊ āļ´āˇāļŊ āļāˇāˇāˇāˇ"
+PM_B_3 : "āļąāˇāļŊāˇāļ⎠āˇāˇāļ¯āļąāļē"
+
+#Play
+P_B_1 : "đĩ āˇāˇâāļģāˇāˇâāļē āˇāˇāļ¯āļąāļē āļāļģāļąāˇāļą"
+P_B_2 : "đĨ āˇāˇāļŠāˇāļē⎠āˇāˇāļ¯āļąāļē āļāļģāļąāˇāļą"
+P_B_3 : "đŽ āˇāļĸāˇāˇāˇ āļ´āˇâāļģāˇāˇāˇāļē āļāļģāļ¸āˇāļˇ āļāļģāļąāˇāļą"
+P_B_4 : "đĩ āˇāļāļāˇāļ āļŊāˇāļēāˇāˇāˇāļāˇāˇ āˇāˇāļ¯āļąāļē āļāļģāļąāˇāļą"
+
+#Playlist
+PL_B_1 : "đ āˇāļāļāˇāļ āļŊāˇāļēāˇāˇāˇāļāˇāˇ āˇāˇāļ¯āļąāļē āļāļģāļąāˇāļą "
+PL_B_2 : "â āˇāļāļāˇāļ āļŊāˇāļēāˇāˇāˇāļāˇ"
+PL_B_3 : "â āļ
āļ¸āļāļģ"
+PL_B_4 : "đĄ āˇāˇāļ¯āļą āļāļāļģāļē"
+PL_B_5 : "đ āˇāļ¸āˇāļ´āˇāļģāˇāļĢ āˇāļāļāˇāļ āļŊāˇāļēāˇāˇāˇāļāˇāˇ āļ¸āļāļąāˇāļą"
+PL_B_6 : "âī¸ āˇāļāļāˇāļ āļŊāˇāļēāˇāˇāˇāļāˇāˇ āļ¸āļāļąāˇāļą"
+PL_B_7 : "âī¸ āļāˇāˇ āļ¸āļ§ āˇāˇāˇāˇāˇāˇāˇāļēāˇ. āļāļē āļ¸āļāļąāˇāļą"
+PL_B_8 : "đĸ āˇāˇāļŗāļ¸ āļāˇāļ 10 āļ⎠āˇāˇāļ¯āļąāļē āļāļģāļąāˇāļą"
+PL_B_9 : "đ¤ āļāˇāļŊāˇāļē āˇāˇāļŗāļ¸ āļāˇāļ 10 āļ⎠āˇāˇāļ¯āļąāļē āļāļģāļąāˇāļą"
+PL_B_10 : "đ āˇāļ¸āˇāˇāļē⎠āˇāˇāļŗāļ¸ āļāˇāļ 10 āļ⎠āˇāˇāļ¯āļąāļē āļāļģāļąāˇāļą"
+PL_B_11 : "đ¤āļ´āˇāļ¯āˇāļāļŊāˇāļ āˇāˇāļŗāļ¸ āļāˇāļ 10 āļ⎠āˇāˇāļ¯āļąāļē āļāļģāļąāˇāļą"
+
+#Settings
+ST_B_1 : "đ Aud āļāˇāļĢāˇāļāˇāļ¸āļāļˇāˇāˇāļē"
+ST_B_2 : "đĨ Vid āļāˇāļĢāˇāļāˇāļ¸āļāļˇāˇāˇāļē"
+ST_B_3 : "đŠ Aut āļ´āļģāˇāˇāˇāļŊāļāļēāļąāˇ"
+ST_B_4 : "đąāļāļ´āļāļģāļĢ āļ´āˇāˇāļģāˇāˇ"
+ST_B_5 : "âļī¸ Play Mode"
+ST_B_6 : "đŗī¸âđ āļˇāˇāˇāˇāˇ"
+ST_B_7 : "đ āļ´āˇāļģāˇāˇāˇāļ¯āˇ āļ¸āˇāļ¯āˇāļŊāˇāļē"
+ST_B_8 : "{0} āļ
āļŠāˇ āļāˇāļĢāˇāļāˇāļ¸āļ āˇāˇāļģāˇāˇāļē āļāļ´āļāļģāļĢ"
+ST_B_9 : "{0} āļ¸āļ°āˇâāļēāļ¸ āļāˇāļĢāˇāļāˇāļ¸āļ āˇāˇâāļģāˇāˇâāļē"
+ST_B_10 : "{0} āļāˇāˇāˇ āļāļāˇāļāˇāˇāļē⎠āˇāˇāļģāˇāˇāļē āļāļ´āļāļģāļĢ"
+ST_B_11 : "{0} āļ
āļŠāˇ āļāˇāļĢāˇāļāˇāļ¸āļ āˇāˇāļŠāˇāļēāˇāˇāļāˇ"
+ST_B_12 : "{0} āļ¸āļ°āˇâāļēāļ¸ āļāˇāļĢāˇāļāˇāļ¸āļ āˇāˇāļŠāˇāļēāˇāˇ"
+ST_B_13 : "{0} āļāˇāˇāˇ āļāļāˇāļāˇāˇāļē⎠āˇāˇāļŠāˇāļēāˇ"
+ST_B_14 : "â
āˇāļļāļŊ āļāļģ āļāļ"
+ST_B_15 : "â āļāļļāˇāļ°āˇāļāļēāˇ"
+ST_B_16 : "đ¤ āļ´āļģāˇāļ´āˇāļŊāļāˇāļģāˇ"
+ST_B_17 : "đĨ āˇāˇāļ¸āˇāļ¸"
+ST_B_18 : "đ āļļāļŊāļēāļŊāļ⎠āļ´āļģāˇāˇāˇāļŊāļ āļŊāˇāļēāˇāˇāˇāļāˇ"
+ST_B_19 : "đ āˇāˇāˇāˇāļ¸āˇ āļ¸āˇāļ¯āˇāļŊāˇāļē"
+ST_B_20 : "â
āˇāˇāļĸāˇ"
+ST_B_21 : "â
āļ´āˇāˇ
āļ§"
+ST_B_22 : "đ¨ââī¸ Admin Commands"
+ST_B_23 : "đ āˇāļ¸āˇāˇāļē"
+ST_B_24 : "đˇ āļąāˇāļŊāˇāļāˇāˇ"
+ST_B_25 : "đĢ Play āˇāļģāˇāļāļē"
+ST_B_26 : "đ āˇāˇāļ°āˇāļą āļ¸āļāļąāˇāļą"
+
+#Song
+SG_B_1 : "âī¸ āļ´āˇāļ¯āˇāļāļŊāˇāļ āļāļāˇāļļāˇāˇ āˇāˇāˇāˇāļ āļāļģāļąāˇāļą"
+SG_B_2 : "đ āˇāˇāļģāˇāˇāļē āļāļ´āļāļģāļĢ"
+SG_B_3 : "đĨ āˇāˇāļŠāˇāļēāˇ"
+
+#Stats
+SA_B_1 : "đĸ Top 10 Chat"
+SA_B_2 : "đĸ Top 10 Tracks"
+SA_B_3 : "đ§ Top 10 Users"
+SA_B_4 : "đˇ Top 10 Here"
+SA_B_5 : "đĄ Overall Stats"
+SA_B_6 : "đ¤ User Stats"
+SA_B_7 : "đĸ Global Top 10 Stats"
+SA_B_8 : "đ¤ Bot Stats"
+
+
+
+# Sudo Users [ If you are translating this to some other language .. you can leave all these strings in english language]
+
+#Sudo
+sudo_1 : "{0} is already a sudo user."
+sudo_2 : "Added **{0}** to Sudo Users."
+sudo_3 : "Not a part of Bot's Sudo."
+sudo_4 : "Removed from Bot's Sudo User"
+sudo_5 : "âī¸ **Owners:** \n"
+sudo_6 : "\nâī¸ **Sudo Users:** \n"
+sudo_7 : "No Sudo Users"
+
+#Block
+block_1 : "{0} āļ¯āˇāļąāļ§āļ¸āļ⎠āļļāˇāļ§āˇ āļāļāˇāļąāˇ āļ
āˇāˇāˇāļģ āļāļģ āļāļ."
+block_2 : "āļļāˇāļ§āˇ āˇāļŊ āˇāˇāļģāļĢ āļŊāˇāļēāˇāˇāˇāļāˇāˇāļ§ **{0}** āļāļāļ⎠āļāļģāļą āļŊāļ¯āˇ. āļ´āļģāˇāˇāˇāļŊāļāļēāˇāļ§ āļ¯āˇāļąāˇ āļāˇāˇāˇāļ¯āˇ āļāˇāļąāˇāļ¯āˇāˇāˇāļēāļ⎠āļēāļ§āļ⎠bot āļˇāˇāˇāˇāļ āļāˇāļģāˇāļ¸āļ§ āļąāˇāˇāˇāļ⎠āˇāļąāˇ āļāļ.\n\nāļ
āˇāˇāˇāļģ āļāˇ
āļ´āļģāˇāˇāˇāļŊāļāļēāˇāļąāˇ āļ´āļģāˇāļāˇāˇāˇ āļāļģāļąāˇāļą: /blockedusers"
+block_3 : "āļ´āļģāˇāˇāˇāļŊāļāļē⎠āļ¯āˇāļąāļ§āļ¸āļ⎠āļąāˇāļ¸āˇāļŊ⎠āˇāˇ āļ
āˇāˇāˇāļģ āļāļģ āļąāˇāļ."
+block_4 : "āļ
āˇāˇāˇāļģ āļŊāˇāļēāˇāˇāˇāļāˇāˇāˇāļąāˇ āļ´āļģāˇāˇāˇāļŊāļ āļāˇāļ⎠āļāļģāļą āļŊāļ¯āˇ. āļ´āļģāˇāˇāˇāļŊāļāļēāˇāļ§ āļ¯āˇāļąāˇ āļļāˇāļ§āˇ āļˇāˇāˇāˇāļ⎠āļāˇāļģāˇāļ¸āļ§ āˇāˇāļ⎠āˇāļąāˇ āļāļ."
+block_5 : "āļ
āˇāˇāˇāļģ āļāˇ
āļ´āļģāˇāˇāˇāļŊāļāļēāļąāˇ āˇāļ¸āˇ āļąāˇāˇāˇāļē"
+block_6 : "āļ
āˇāˇāˇāļģ āļāˇ
āļ´āļģāˇāˇāˇāļŊāļ āļŊāˇāļēāˇāˇāˇāļāˇāˇ āļŊāļļ⎠āļāˇāļąāˇāļ¸.. āļāļģāˇāļĢāˇāļāļģ āļģāˇāļŗāˇ āˇāˇāļ§āˇāļąāˇāļą"
+block_7 : "**āļ
āˇāˇāˇāļģ āļāˇ
āļ´āļģāˇāˇāˇāļŊāļāļēāˇāļąāˇ:**\n\n"
+
+#Blacklist Chats
+black_1 : "**āļˇāˇāˇāˇāļāļē:**\n/blacklistchat [CHAT_ID]"
+black_2 : "āļāļāˇāļļāˇāˇ āļ¯āˇāļąāļ§āļ¸āļ⎠Blacklisted āļāļģ āļāļ."
+black_3 : "āļāļāˇāļļāˇāˇ āˇāˇāļģāˇāļŽāļ⎠Blacklisted āļāļģ āļāļ"
+black_4 : "**āļˇāˇāˇāˇāļāļē:**\n/whitelistchat [CHAT_ID]"
+black_5 : "āļāļāˇāļļāˇāˇ āļ¯āˇāļąāļ§āļ¸āļ⎠āˇāˇāļ¯āˇ āļŊāˇāļēāˇāˇāˇāļāˇāļāļ āļāļģ āļāļ."
+black_6 : "āļāļāˇāļļāˇāˇ āˇāˇāļģāˇāļŽāļ⎠āˇāˇāļ¯āˇ āļŊāˇāļēāˇāˇāˇāļāˇāļāļ āļāļģ āļāļ"
+black_7 : "**Blacklisted āļāļāˇāļļāˇāˇ:**\n\n"
+black_8 : "Blacklisted āļāļāˇāļļāˇāˇ āļąāˇāļ"
+
+#videolimit
+vid_1 : "**āļˇāˇāˇāˇāļāļē:**\n/set_video_limit [Number of chats allowed] or [Disable]"
+vid_2 : "āˇāˇāļ¸āˇāˇ āˇāˇāļāˇāˇāļ¸ āˇāļŗāˇāˇ āļāļģāˇāļĢāˇāļāļģ āˇāļāļāˇâāļēāˇāļāˇāļ¸āļ āļ
āļāļ āļˇāˇāˇāˇāļ⎠āļāļģāļąāˇāļą."
+vid_3 : "āˇāˇāļŠāˇāļē⎠āļāļ¸āļāˇāļ¸āˇ āļāļ´āļģāˇāļ¸ āˇāˇāļ¸āˇāˇ āļāļāˇāļļāˇāˇ {0} āļ¯āļāˇāˇāˇ āļ
āļģāˇāļŽ āļ¯āļāˇāˇāˇ āļāļ."
+vid_4 : "āˇāˇāļŠāˇāļē⎠āļāļ¸āļāˇāļ¸āˇ āļ
āļļāļŊ āļāļģ āļāļ"
+
+#maintenance
+maint_1 : "**āļˇāˇāˇāˇāļāļē:**\n/maintenance [enable|disable]"
+maint_2 : "āļąāļŠāļāˇāļ⎠āļ¸āˇāļ¯āˇāļŊāˇāļē āˇāˇāļāˇâāļģāˇāļē āļāļģ āļāļ"
+maint_3 : "āļąāļŠāļāˇāļ⎠āļ¸āˇāļ¯āˇāļŊāˇāļē āļ
āļāˇâāļģāˇāļē āļāļģ āļāļ"
+
+#log
+log_1 : "**āļˇāˇāˇāˇāļāļē:**\n/logger [enable|disable]"
+log_2 : "Logging āˇāļāˇâāļģāˇāļē āļāļģāļą āļŊāļ¯āˇ"
+log_3 : "Logging āļ
āļāˇâāļģāˇāļē āļāļģāļą āļŊāļ¯āˇ"
+
+#videomode
+vidmode_1 : "**āļˇāˇāˇāˇāļāļē:**\n/videomode [download|m3u8]"
+vidmode_2 : "āˇāˇāļŠāˇāļē⎠āļ´āˇāļŊ⎠āļ´āˇâāļģāļāˇāļģāļē āļļāˇāļāˇāļąāˇāļ¸āˇ āļŊāˇāˇ āˇāļāˇāˇ āļāļ. āļļāˇāļ§āˇ āļ¯āˇāļąāˇ āļ°āˇāˇāļą āļ´āļŽ āļļāˇāļāļ āļāļģāļąāˇ āļāļ."
+vidmode_3 : "āˇāˇāļŠāˇāļē⎠āļ´āˇāļŊ⎠āļ¸āˇāļ¯āˇāļŊāˇāļē m3u8 āļŊāˇāˇ āˇāļāˇāˇ āļāļ. Bot āļ¯āˇāļąāˇ āˇāļĸāˇāˇāˇ āļ°āˇāˇāļą āļ´āļŽ āˇāļąāˇ āļāļ."
+
+#broadcast
+broad_1 : "**Bot āˇāˇāļāˇāļąāˇ āļ´āˇāļąāˇ {1}āļ⎠āˇāļ¸āļ {0} āļāļāˇāļļāˇāˇ āļāˇāˇ
āˇāˇāļāˇāˇāļąāļē āļāˇ
āļ´āļĢāˇāˇāˇāļŠāļē.**"
+broad_2 : "Assistent Broadcast āļāļģāļ¸āˇāļˇ āļāļģāļą āļŊāļ¯āˇ..."
+broad_3 : "**Assistant Broadcast:**\n\n"
+broad_4 : "Assistant {0} Broadcasted in {1} chats\n"
+broad_5 : "**Usage**:\n/broadcast [MESSAGE] or [Reply to a Message]"
+broad_6 : "Please provide some text to broadcast."
+broad_7 : "**Broadcasted Message to {0} Users.**"
+
+#Heroku
+heroku_1 : "āļāļģāˇāļĢāˇāļāļģ āļāļļāļ⎠Heroku API key, āļāļļāļ⎠āļēāˇāļ¯āˇāļ¸āˇ āļąāļ¸ heroku āˇāˇ āļąāˇāˇāˇāļģāļ¯āˇāˇ āˇāˇāļąāˇâāļēāˇāˇ āļāļģ āļāļ⎠āļļāˇāļ§ āˇāļ āļļāļŊ⎠āļāļąāˇāļą"
+heroku_2 : "āļāļļāļ§ āļŊāļļ⎠āļāļ āˇāˇāļāˇāļ⎠Heroku āļēāˇāļ¯āˇāļ¸āˇ āˇāļŊ āļŊāˇāļ⎠āļ´āļ¸āļĢāˇ"
+heroku_3 : "**āļˇāˇāˇāˇāļāļē:**\n/get_var [Var Name]"
+heroku_4 : "āļāˇāˇāļąāˇ var āļāļāļ⎠āˇāˇāļē⎠āļāˇāļąāˇāļ¸āļ§ āļąāˇāˇāˇāļ⎠āˇāˇāļē."
+heroku_5 : ".env āļāˇāļąāˇāˇ āˇāļ¸āˇ āļąāˇāˇāˇāļē."
+heroku_6 : "**āļˇāˇāˇāˇāļāļē:**\n/del_var [Var Name]"
+heroku_7 : "{0} āļ¸āļ⎠āļ¯āļ¸āļą āļŊāļ¯āˇ."
+heroku_8 : "**āļˇāˇāˇāˇāļāļē:**\n/set_var [Var Name] [Var Value]"
+heroku_9 : "{0} āˇāˇāļģāˇāļŽāļ⎠āļēāˇāˇāļāˇāļāˇāļŊāˇāļą āļāļģ āļāļ"
+heroku_10 : "{0} āˇāˇāļģāˇāļŽāļ⎠āļāļāļ⎠āļāļģ āļāļ"
+heroku_11 : "Heroku āļēāˇāļ¯āˇāļ¸āˇ āˇāļŗāˇāˇ āļ´āļ¸āļĢāˇ"
+heroku_12 : "Heroku āļˇāˇāˇāˇāļāļē āļ´āļģāˇāļāˇāˇāˇ āļāˇāļģāˇāļ¸. āļāļģāˇāļĢāˇāļāļģ āļģāˇāļŗāˇ āˇāˇāļ§āˇāļąāˇāļą"
+heroku_13 : "āļ´āˇāļāˇāļą āļēāˇāˇāļāˇāļāˇāļŊāˇāļą āˇāļŗāˇāˇ āļ´āļģāˇāļāˇāˇāˇ āļāļģāļ¸āˇāļąāˇ..."
+heroku_14 : "Git āˇāˇāļ°āˇāļą āļ¯āˇāˇāļēāļāˇ"
+heroku_15 : "āˇāļŊāļāļ⎠āļąāˇāˇāļą Git āļģāˇāļ´āˇāˇāļāˇ."
+
+#Private bot mode
+pbot_1 : "**āļˇāˇāˇāˇāļāļē:**\n/authorize [CHAT_ID]"
+pbot_2 : "**āļˇāˇāˇāˇāļāļē:**\n/unauthorize [CHAT_ID]"
+pbot_3 : "āļ
āˇāˇāļģ āļŊāļ⎠āļŊāˇāļēāˇāˇāˇāļāˇāˇāļ§ āļŊāļļ⎠āļ¯āˇāļąāˇ āļāļāˇāļļāˇāˇ āļāļ⎠āļāļģāļą āļŊāļ¯āˇ"
+pbot_4 : "āļ
āˇāˇāļģ āļŊāļ⎠āļŊāˇāļēāˇāˇāˇāļāˇāˇāˇāļąāˇ āļŊāļļ⎠āļ¯āˇāļąāˇ āļāļāˇāļļāˇāˇ āļāˇāļ⎠āļāļģāļą āļŊāļ¯āˇ"
+pbot_5 : "āļāļāˇāļļāˇāˇ āļ¯āˇāļąāļ§āļ¸āļ⎠āļļāļŊāļēāļŊāļ⎠āļŊāˇāļēāˇāˇāˇāļāˇāˇāˇ āļāļ"
+pbot_6 : "āļļāļŊāļēāļŊāļ⎠āļŊāˇāļēāˇāˇāˇāļāˇāˇāˇ āļāˇāˇāļąāˇ āļāļāˇāļļāˇāļ⎠āļąāˇāļ¸āˇāļ"
+pbot_7 : "chat_id āˇāļāˇâāļēāˇāļ´āļąāļē āļāˇāļģāˇāļ¸āļ§ āļ
āļ´āˇāˇāˇāˇāļ⎠āˇāˇāļē.\n\nāļāˇāˇ āˇāļāļāˇâāļēāˇāļāˇāļ¸āļ āˇāˇ āļąāˇāˇāˇāļģāļ¯āˇ āļāļāˇāļāˇāļē āˇāˇāļāˇāļ āļāļģ āļāļąāˇāļą. āļāļāˇāļļāˇāˇ āļ´āļģāˇāˇāˇāļŊāļ āļąāˇāļ¸āļē āˇāˇ āˇāļļāˇāļŗāˇ āļˇāˇāˇāˇāļ⎠āļąāˇāļāļģāļąāˇāļą."
+pbot_8 : "āļāļģāˇāļĢāˇāļāļģ āļģāˇāļŗāˇ āˇāˇāļ§āˇāļąāˇāļą.... āļļāļŊāļēāļŊāļ⎠āļāļāˇāļļāˇāˇ āļŊāļļ⎠āļāļąāˇāļ¸āˇāļąāˇ."
+pbot_9 : "**āļŊāļļ⎠āļāļ⎠āļāļāˇāļļāˇāˇ: **\n\n"
+pbot_10 : "āļ´āˇāļ¯āˇāļāļŊāˇāļ āļāļāˇāļļāˇāˇ"
+pbot_11 : "āļ
āˇāˇāļģ āļŊāļ⎠āļāļāˇāļļāˇāˇ āˇāļ¸āˇ āļąāˇāˇāˇāļē"
+pbot_12 : "āļ´āˇāļ¯āˇāļāļŊāˇāļ āļļāˇāļ§āˇ āļ´āˇâāļģāļāˇāļģāļē āļ
āļļāļŊ āļāļģ āļāļ.\ āˇāˇ\nāļāļļ⎠āļļāˇāļ§āˇ āļ´āˇāļ¯āˇāļāļŊāˇāļ āļļāˇāļ§āˇ āļŊāˇāˇ āļˇāˇāˇāˇāļ⎠āļąāˇāļāļģāļąāˇāļą **PRIVATE_BOT_MODE** = **True** āˇāˇāļāˇāˇāļ¸āļ§ āˇāļ āļļāļŊ⎠āļāļąāˇāļą"
+pbot_13 : "\n**āļŊāļļ⎠āļąāˇāļāļ⎠āļāļāˇāļļāˇāˇ: **\n\n"
+
+#Gbanned
+gban_1 : "You want to gban yourself? How Fool!"
+gban_2 : "Should i block myself? Lol"
+gban_3 : "You want to block a sudo user?"
+gban_4 : "{0} is already **gbanned** from the bot."
+gban_5 : "**Initializing Gobal Ban on {0}**\n\nExpected Time : {1}."
+gban_6 : "**Gbanned Successfully**\n\nBanned **{0}** from **{1}** chats."
+gban_7 : "{0} is not **gbanned **yet from the bot."
+gban_8 : "**Ungbanning {0}**\n\nExpected Time : {1}."
+gban_9 : "**UnGbanned Successfully**\n\nUnbanned **{0}** in **{1}** chats."
+gban_10 : "No Gbanned Users Found."
+gban_11 : "Please wait a while.. Fetching Gbanned users list"
\ No newline at end of file
diff --git a/strings/langs/tr.yml b/strings/langs/tr.yml
new file mode 100644
index 0000000000000000000000000000000000000000..b52aac465700e27cae44e396c272b083783bd2f8
--- /dev/null
+++ b/strings/langs/tr.yml
@@ -0,0 +1,417 @@
+name : đšđˇ Turkish
+
+# General Strings
+general_1 : "Bir kullanÄącÄąnÄąn mesajÄąnÄą yanÄątlayÄąn veya username/user_id verin."
+general_2 : "Hata! Komutun YanlÄąÅ KullanÄąmÄą."
+general_3 : "Sorgunuz iÅlenirken bazÄą **istisnalar oluÅtu**.\n\nİstisna TÃŧrÃŧ:- {0}"
+general_4 : "Bu sohbet grubunda isimsiz bir yÃļneticisiniz!\nYÃļnetici HaklarÄąndan KullanÄącÄą HesabÄąna geri dÃļnÃŧn."
+general_5 : "Bu eylemi gerçekleÅtirmek için sesli sohbet haklarÄąna sahip yÃļnetici olmanÄąz gerekir."
+general_6 : "Bot sesli sohbette yayÄąn yapmÄąyor."
+
+# Classes - Telegram.py
+tg_1 : "Bot Åu anda indirilenlerle **aÅÄąrÄą yÃŧklenmiÅ**.\n\n**Deneme SÃŧresi:** {0} (__beklenen sÃŧre__))"
+tg_2 : "Failed to download the media from telegram."
+
+# Core - Call.py
+call_1 : "Bot, asistan hesabÄąnÄą kanalÄąnÄąza davet etmek için **YÃļnetici** İzni gerektirir.\n\nKanal oynatma modunu Åununla devre dÄąÅÄą bÄąrakÄąn: : /playmode"
+call_2 : "Asistan, grubunuz veya kanalÄąnÄązda yasaklanmÄąÅ, lÃŧtfen yasaÄÄą kaldÄąrÄąn.\n\n**Asistan KullanÄącÄą AdÄą:** @{0}\n**Asistan KimliÄi:** {1}"
+call_3 : "Asistan HesabÄąnÄą sohbetinize davet ederken İstisna OluÅtu.\n\n**Nedeni**: {0}"
+call_4 : "Bot, asistan hesabÄąnÄą sohbet grubunuza davet etmek için **KullanÄącÄąlarÄą BaÄlantÄą Yoluyla Davet Et** İzni gerektirir."
+call_5 : "Asistan HesabÄą 5 Saniye içinde katÄąlacak.. LÃŧtfen Bekleyin!"
+call_6 : "Asistan HesabÄą[{0}] BaÅarÄąyla KatÄąldÄą.\n\nMÃŧzik Åimdi BaÅlatÄąlÄąyor"
+call_7 : "**ZararlÄą YÃļnetici HakkÄą Verildi **\n\nLÃŧtfen ** KULLANICILARI YASAK** haklarÄąnÄą bottan kaldÄąrÄąn."
+call_8 : "**ZararlÄą YÃļnetici HakkÄą Verildi **\n\nLÃŧtfen bottan **YENİ YÃNETİCİLER EKLE** haklarÄąnÄą kaldÄąrÄąn."
+call_9 : "**YayÄąn deÄiÅtirilemedi**\nParçayÄą tekrar deÄiÅtirmek için /skip butonunu kullanÄąn."
+call_10 : "Oynatma Listesinden Sonraki ParçayÄą İndirme"
+
+# PLUGINS - Auth.py
+auth_1 : "Grubunuzun Yetkili KullanÄącÄąlar Listesinde yalnÄązca 20 KullanÄącÄąnÄąz olabilir (AUL)"
+auth_2 : "Grubunuzun Yetkili KullanÄącÄąlar Listesine Eklendi."
+auth_3 : "Zaten Yetkili KullanÄącÄąlar Listesinde."
+auth_4 : "Bu Grubun Yetkili KullanÄącÄąlar Listesinden KaldÄąrÄąldÄą."
+auth_5 : "Hedeflenen kullanÄącÄą Yetkili KullanÄącÄą deÄil."
+auth_6 : "Yetkili KullanÄącÄąlar AlÄąnÄąyor... LÃŧtfen Bekleyin"
+auth_7 : "**Yetkili KullanÄącÄąlar Listesi[AUL]:**\n\n"
+auth_8 : "â TarafÄąndan eklendi:-"
+
+# PLUGINS - Admins
+admin_1 : "MÃŧzik zaten DuraklatÄąldÄą."
+admin_2 : "đ§ Sesli Sohbet DuraklatÄąldÄą {}!"
+admin_3 : "MÃŧzik zaten yeniden baÅlatÄąldÄą."
+admin_4 : "đ§ Sesli Sohbeti SÃŧrdÃŧren {}!"
+admin_5 : "MÃŧziÄin sesi zaten kapalÄą."
+admin_6 : "đ§ Sesli Sohbetin Sesi KapatÄąldÄą {}!"
+admin_7 : "MÃŧziÄin sesi zaten aÃ§ÄąldÄą."
+admin_8 : "đ§ Sesli Sohbetin Sesi AÃ§ÄąldÄą {}!"
+admin_9 : "đ§ Sesli Sohbeti Bitiren/Durduran {}!"
+admin_10 : "đ§ Sesli Sohbet {} tarafÄąndan atlandÄą!. SÄąrada ArtÄąk MÃŧzik Yok."
+admin_11 : "AkÄąÅ **{0}** olarak deÄiÅtirilirken hata oluÅtu\n\nLÃŧtfen /skip komutunu tekrar kullanÄąn."
+admin_12 : "DÃļngÃŧ çalmanÄąn etkinleÅtirilmesi nedeniyle belirli bir parçaya geçilemiyor. Bu ÃļzelliÄi kullanmak için lÃŧtfen dÃļngÃŧsel oynatmayÄą `/loop disable` Ãŧzerinden devre dÄąÅÄą bÄąrakÄąn."
+admin_13 : "LÃŧtfen 1, 2 veya 4 gibi belirli parçalar için sayÄąsal sayÄąlar kullanÄąn."
+admin_14 : "Belirli bir numaraya atlamak için sÄąrada en az 2 parça gerekir. /queue ile sÄąrayÄą kontrol et"
+admin_15 : "VerdiÄiniz deÄer için sÄąrada yeterli parça yok. LÃŧtfen 1 ile {0} arasÄąnda bir sayÄą seçin"
+admin_16 : "Belirli bir parçaya geçilemedi.\n\nSÄąrayÄą /queue gÃļre kontrol edin"
+admin_17 : "{0}.. LÃŧtfen bekleyin"
+admin_18 : "YÃļnetici Listesi BulunamadÄą\n\nLÃŧtfen yÃļnetici listesini /admincache veya /reload yoluyla yeniden yÃŧkleyin"
+admin_19 : "Bunu gerçekleÅtirmek için sesli sohbet haklarÄąna sahip yÃļnetici olmanÄąz gerekir.\nZaten yÃļneticiyseniz, /admincache aracÄąlÄąÄÄąyla admincache'i yeniden yÃŧkleyin "
+admin_20 : "YÃļnetici ÃļnbelleÄi baÅarÄąyla yeniden yÃŧklendi."
+admin_21 : "SÄąrada karÄąÅtÄąrÄąlacak bir Åey yok"
+admin_22 : "KarÄąÅtÄąrÄąlamadÄą.\n\nSÄąrayÄą kontrol edin: /queue"
+admin_23 : "**SÄąra KarÄąÅtÄąrÄąldÄą: {0}**\n\nKarÄąÅtÄąrÄąlan sÄąrayÄą kontrol edin: /queue"
+admin_24 : "**KullanÄąm:**\n/loop [enable/disable] veya [1-10 arasÄą sayÄą]\n\n**Ãrnek:** /loop 5"
+admin_25 : "DÃļngÃŧ, {0} tarafÄąndan **{1}** kez etkinleÅtirildi. Bot Åimdi sesli sohbette çalmakta olan mÃŧziÄi **{1}** kez tekrarlayacak"
+admin_26 : "DÃļngÃŧ oynatma için lÃŧtfen 1-10 arasÄąndaki sayÄąlarÄą kullanÄąn"
+admin_27 : "DÃļngÃŧ Oynatma devre dÄąÅÄą bÄąrakÄąldÄą"
+
+# Bot
+# Start
+start_1 : "Beni {0}'e davet ettiÄiniz için teÅekkÃŧrler.\n{1} çalÄąÅÄąyor.\n\nHerhangi bir yardÄąm için destek grubumuza veya kanalÄąmÄąza gÃļz atÄąn.."
+start_2 : "Merhaba, Benim adÄąm {0}.\n\nBazÄą kullanÄąÅlÄą Ãļzelliklere sahip bir telegram mÃŧzik botuyum. Youtube, Spotify, Resso, AppleMusic , Soundcloud vb. Destekleyici platformlar\n\nBeni gruplarÄąnÄąza eklemekten çekinmeyin."
+start_3 : "HoÅ Geldiniz {0}\n\nÃalÄąÅmak için herhangi bir **yÃļnetici iznine** ihtiyacÄąm yok ( isteninceye kadar).\n\nAsistan KullanÄącÄą AdÄą:- @{1}\nAsistan KimliÄi:- {2}"
+start_4 : "{0}'s Owner[{1}] sohbetinize katÄąldÄą."
+start_5 : "{0} adlÄą kullanÄącÄąnÄąn Sudo KullanÄącÄąsÄąnÄąn[{1}] bir Ãŧyesi sohbetinize az Ãļnce katÄąldÄą."
+start_6 : "âī¸ **SÃŧper Grup Gerekli** âī¸\n\nLÃŧtfen **grubunuzu** **sÃŧper gruba** dÃļnÃŧÅtÃŧrÃŧn ve sonra beni tekrar ekleyin.\n\n**Ãst grup nasÄąl yapÄąlÄąr?**\nâ
Grubunuzun sohbet geçmiÅini oluÅturun **gÃļrÃŧnÃŧr** yapÄąn Ãļnce."
+
+# Help
+help_1 : "Daha fazla bilgi için aÅaÄÄądaki butonlara tÄąklayÄąn. Komutlar ve ÃļÄreticileri gÃļrmek istiyorsanÄąz ( botun nasÄąl çalÄąÅtÄąÄÄą hakkÄąnda merak edilenler ve her Åey ):-\n\nTÃŧm komutlar aÅÅaÄÄądaki butonlara basarak gÃļrebilirsiniz: /"
+help_2 : "YardÄąm için PM'den bana ulaÅÄąn."
+
+# Settings
+setting_1 : "âī¸ **MÃŧzik Botu AyarlarÄą**\n\nđ**Grup:** {0}\nđ**Grup KimliÄi:** `{1}`\n\nđĄ**AÅaÄÄądan istediÄiniz iÅlev butonlarÄąnÄą seçin dÃŧzenlemek veya deÄiÅtirmek için.**"
+setting_3 : "âī¸ Bu Nedir?\n\n1) DoÄrudan: Arama sorgularÄąnÄą doÄrudan oynatÄąr. VideolarÄą doÄrudan modda oynatmak için -v kullanÄąn.\n\n2) SatÄąr İçi: Video ve ses arasÄąnda seçim yapmak için SatÄąr İçi İÅaretleme DÃŧÄmelerini dÃļndÃŧrÃŧr."
+setting_4 : "âī¸ Bu Nedir?\n\nđĨ Herkes: Bu grupta bulunan yÃļnetici komutlarÄąnÄą (skip, pause, resume vb.) herkes kullanabilir.\n\nđ YalnÄązca YÃļnetici: YalnÄązca yÃļneticiler ve yetkili kullanÄącÄąlar yÃļnetici komutlarÄąnÄą kullanabilir."
+setting_5 : "Yetkili KullanÄącÄą BulunamadÄą\n\nYÃļnetici olmayan herhangi bir kiÅinin /auth ile yÃļnetici komutlarÄąmÄą kullanmasÄąna ve /unauth kullanarak kullanmamasÄąna izin verebilirsiniz"
+setting_9 : "âī¸ Bu Nedir?\n\nEtkinleÅtirildiÄinde Bot, sohbetinizi temiz ve anlaÅÄąlÄąr kÄąlmak için {0} tarihinden sonra mesajÄąnÄą siler.."
+setting_10 : "âī¸ Bu Nedir?\n\n1) Grup: Komutun verildiÄi gruptaki mÃŧziÄi çalar.\n\n2) Kanal: İstediÄiniz kanaldaki mÃŧziÄi çalar. /channelplay ile kanal kimliÄini ayarla"
+setting_11 : "âī¸ Bu Nedir?\n\n1) Herkes: Bu grupta bulunan herkes burada mÃŧzik çalabilir.\n\n2) YalnÄązca YÃļnetici: Bu gruptaki mÃŧziÄi yalnÄązca yÃļneticiler çalabilir."
+setting_12 : "â Kanal modu için tanÄąmlanmÄąÅ kanal kimliÄiniz yok. LÃŧtfen /channelplay ile tanÄąmlayÄąn."
+setting_13 : "Etkin grup aramasÄąnda oynatma modu deÄiÅtirilemez. LÃŧtfen Ãļnce /stop ile sesli sohbeti durdurun."
+setting_14 : "âī¸ Bu Nedir?\n\nEtkinleÅtirildiÄinde, Bot yÃŧrÃŧtÃŧlen komutlarÄą (/play, /pause, /shuffle, /stop vb.) hemen siler.\n\nBot, bunun dÃŧzgÃŧn çalÄąÅmasÄą için admin hakkÄąnÄąn mesajlarÄą sil yetkisi gerektirecektir.."
+setting_15 : "EŠçÃļzÃŧmlenemedi, KanalÄąnÄąza bot eklediÄinizden ve onu yÃļnetici olarak terfi ettirdiÄinizden emin olun.\n\n/channelplay'i tekrar ayarlamayÄą deneyin..."
+
+set_cb_1 : "Ses Kalitesi Panelini Alma..."
+set_cb_2 : "Video Kalitesi Alma Paneli..."
+set_cb_3 : "Auth KullanÄącÄąlarÄą Panelini Alma..."
+set_cb_4 : "Oynatma Modu Panelini Alma..."
+set_cb_5 : "Temizleme Modu Panelini Alma..."
+set_cb_6 : "DeÄiÅiklikleri Ayarlama."
+set_cb_7 : "Auth KullanÄącÄą Listesi AlÄąnÄąyor.. LÃTFEN BEKLEYİNİZ."
+set_cb_8 : "Geri alma.."
+
+# Misc
+gstats_1 : "Global İstatistikleri Alma, Bu Biraz Zaman Alabilir..."
+gstats_2 : "Global İstatistik BulunamadĹ."
+gstats_3 : "**Bot'taki Toplam Sorgu:** {0}\n\n{1}, Åu ana kadar **{2}** parça çalmÄąÅ ve **{3}** gibi çok sayÄąda parça çalmÄąÅtÄąr.\n\n**En İyi {4} Parçalar:**\n"
+
+ustats_1 : "KullanĹcĹ İstatistikleri BulunamadĹ."
+ustats_2 : "Selamlar!, Åimdiye kadar çok sayÄąda **{1}** kez **{0}** parça çaldÄąnÄąz.\n\nEn çok {2} çaldÄąÄÄąnÄąz parça:\n\n"
+
+tops_1 : "Botun Global İlk 10 Sohbetini Alma, Bu biraz zaman alabilir..."
+tops_2 : "İstatistik BulunamadĹ"
+tops_3 : "**{1}'in En İyi {0} Sohbetleri:**\n\n"
+tops_4 : "Botun Global İlk 10 KullanĹcĹsĹnĹ Alma, Bu Biraz Zaman Alabilir..."
+tops_5 : "**{1}'nin En İyi {0} KullanĹcĹsĹ:**\n\n"
+tops_6 : "Bu Sohbetin En İyi 10 ParçasÄąnÄą Almak, Bu Biraz Zaman Alabilir..."
+tops_7 : "Botun Global İlk 10 ParçasÄąnÄą Alma, Bu Biraz Zaman Alabilir..."
+tops_8 : "Bu sohbet grubu, Åu ana kadar **{1}** defadan fazla sayÄąda **{0}** parça çaldÄą.\n\nBu sohbet grubu tarafÄąndan en çok çalÄąnan {2} parça:\n\n"
+tops_9 : "Bot'un Genel İstatistiklerini Ve Bilgilerini Almak.. Bu Biraz Zaman Alabilir..."
+tops_10 : "**BOT'UN GLOBAL İSTATİSTİKLERİ**\n\nBot sunucularÄąndan genel istatistikleri kontrol etmek istediÄiniz butonlarÄą aÅaÄÄądan seçin."
+
+
+# Play
+#Play Callback
+playcb_1 : "Bu Senin İçin DeÄil! Kendi ÅarkÄąnÄą Ara."
+playcb_2 : "Sonraki Sonucu Alma"
+
+# Channel Play
+cplay_1 : "Bu sohbetteki kanallarda[{0}] herhangi bir kanala veya sohbetinizin baÄlantÄąlÄą kanalÄąna mÃŧzik çalabilirsiniz.\n\n**BaÄlÄą kanal için:**\n`/{1}baÄlÄą`\n\n** DiÄer herhangi bir kanal için:**\n`/{1} [Kanal KimliÄi]`"
+cplay_2 : "Bu sohbette baÄlantÄąlÄą kanal yok."
+cplay_3 : "{0}\n\n__Kanal KimliÄi__ ile TanÄąmlanmÄąÅ Kanal: {1}"
+cplay_4 : "Kanal alÄąnamadÄą.\n\nKanalÄąnÄąza bot eklediÄinizden ve onu yÃļnetici olarak terfi ettirdiÄinizden emin olun.\nKanalÄą /channelplay ile deÄiÅtirin veya /playmode ile kanal oynatma modunu devre dÄąÅÄą bÄąrakÄąn"
+cplay_5 : "YalnÄązca Kanallar Desteklenir."
+cplay_6 : "KanalÄą bu gruba baÄlamak için[{0}] kanalÄąn **Sahibi** olmanÄąz gerekir.\n**Kanal Sahibi:** @{1}\n\nAlternatif olarak grubunuzu o kanala baÄlayabilirsiniz. ve ardÄąndan `/channelplay baÄlantÄąlÄą ile baÄlanmayÄą deneyin`"
+
+#Play
+play_1 : "đ Sorgu İÅleniyor... LÃŧtfen Bekleyin!"
+play_2 : "**đˇKanal Oynatma Modu**\nđ Sorgu İÅleniyor... LÃŧtfen Bekleyin!\n\n**BaÄlÄą Kanal:** {0}"
+play_3 : "Sorgu İÅlenemedi!"
+play_4 : "đ **YalnÄązca YÃļneticiler OynatÄąr**\nYalnÄązca YÃļneticiler ve Yetkilendirme KullanÄącÄąlarÄą bu grupta mÃŧzik çalabilir.\n\nModu /playmode aracÄąlÄąÄÄąyla deÄiÅtirin ve zaten yÃļneticiyseniz, /admincache aracÄąlÄąÄÄąyla admincache'i yeniden yÃŧkleyin"
+play_5 : "Ses dosyasÄą iÅlenemedi.\n\nSes DosyasÄą Boyutu 100 mb'den KÃŧçÃŧk OlmalÄą"
+play_6 : "**SÃŧre SÄąnÄąrÄą AÅÄąldÄą**\n\n**İzin Verilen SÃŧre: **{0} dakika\n**AlÄąnan SÃŧre:** {1} dakika(s)"
+play_7 : "ÃzgÃŧnÃŧm! Bot, CPU aÅÄąrÄą yÃŧkleme sorunlarÄą nedeniyle yalnÄązca sÄąnÄąrlÄą sayÄąda gÃļrÃŧntÃŧlÃŧ gÃļrÃŧÅmeye izin verir. DiÄer birçok sohbet Åu anda gÃļrÃŧntÃŧlÃŧ aramayÄą kullanÄąyor. Sese geçmeyi deneyin veya daha sonra tekrar deneyin"
+play_8 : "Geçerli Bir Video DosyasÄą UzantÄąsÄą DeÄil!\n\n**Desteklenen Biçimler:** {0}"
+play_9 : "Video Dosya Boyutu 1 GB'den KÃŧçÃŧk OlmalÄą"
+play_10 : "**Youtube Oynatma Listesi ÃzelliÄi**\n\nYoutube Oynatma Listesinin tamamÄąnÄą oynatmak istediÄiniz Modu seçin"
+play_11 : "đBaÅlÄąk: **{0}\n\nâąī¸SÃŧre:** {1} Dakika"
+play_12 : "**Spotify Oynatma Listeleri**\n\nđTalep Eden:- {0}"
+play_13 : "**Apple Oynatma Listeleri**\n\nđTalep Eden:- {0}"
+play_14 : "**URL doÄrulanamÄąyor.**\nBot, bu url'nin Åu platformlardan birine ait olup olmadÄąÄÄąnÄą merak ediyor: Youtube, AppleMusic, Spotify, Resso ve Soundcloud.\n\nM3u8 veya Uzak BaÄlantÄąlar için /stream'i kullanabilirsiniz.."
+play_15 : "**CanlÄą YayÄąn AlgÄąlandÄą**\n\nSistemler, stream baÄlantÄąnÄązÄą canlÄą yayÄąn olarak algÄąladÄą. CanlÄą yayÄąn oynamak istiyormusunuz ?"
+play_16 : "Parça ayrÄąntÄąlarÄą getirilemedi. baÅka ÅarkÄą dene."
+
+
+#Playlist
+playlist_1 : "**KullanÄąm:** /play [MÃŧzik AdÄą veya Youtube BaÄlantÄąsÄą veya Sesi YanÄątla]\n\nBot'un Sunucu Oynatma Listesini oynatmak istiyorsanÄąz! AÅaÄÄądaki butona basÄąn."
+playlist_2 : "Ãalma listeniz alÄąnÄąyor. LÃŧtfen bekleyin"
+playlist_3 : "Bot Sunucusunda oynatma listeniz yok."
+playlist_4 : "Getirilen Oynatma Listesit:\n\n"
+playlist_5 : " SÃŧre - {0} Dakika"
+playlist_6 : "Ãalma Listelerini silmek için PM'de bana ulaÅÄąn."
+playlist_7 : "Ãalma Listesindeki Parçalar: {0}\n\nÃalma Listenizdeki Belirli Bir ParçayÄą Silmek İçin Butonlara BasÄąn.\n\nTÃŧm Ãalma Listesini Silmek İçin: Del Butonuna BasÄąn."
+playlist_8 : "Zaten Var\n\nBu parça çalma listenizde var."
+playlist_9 : "ÃzgÃŧnÃŧm! Bir oynatma listesinde yalnÄązca {0} mÃŧziÄiniz olabilir."
+playlist_10 : "Oynatma Listesi Ekleme\n\n{0}\ Oynatma Listenize Eklendi."
+playlist_11 : "Listeniz baÅarÄąyla silindi."
+playlist_12 : "Listeniz silinemedi."
+playlist_13 : "TÃŧm çalma listelerinizi sunucudan silindi. "
+playlist_14 : "**TÃŧm oynatma listenizi silmek istediÄinizden emin misiniz?**\n\nOynatma listenizi kaybedeceksiniz ve bu daha sonra kurtarÄąlamaz."
+playlist_15 : "[TÃŧm Oynatma Listesini Kontrol Et]({0})"
+playlist_16 : "SÄąraya AlÄąnmÄąÅ Oynatma Listesi:"
+playlist_17 : "SÄąradaki Pozisyon-"
+playlist_18 : "[TÃŧm SÄąradaki Oynatma Listesini Kontrol Et]({0})\n\nSon SÄąradaki Pozisyon : **{1}**"
+
+
+#Playmode
+playmode_1 : "Grubunuzdaki sorgularÄą oynatmak istediÄiniz modu seçin[{0}]."
+playmode_2 : "Ayarlar {0} tarafÄąndan baÅarÄąyla deÄiÅtirildi ve kaydedildi"
+
+#Stream
+str_1 : "LÃŧtfen M3u8 BaÄlantÄąlarÄą veya Dizin BaÄlantÄąlarÄą SaÄlayÄąn."
+str_2 : "â
Geçerli AkÄąÅ DoÄrulandÄą\n\nLÃŧtfen baÄlantÄąnÄąn iÅlenmesini bekleyin.."
+str_3 : "Youtube canlÄą yayÄąn akÄąÅÄą yapÄąlamÄąyor. CanlÄą Biçim BulunamadÄą"
+
+#TopPlay
+tracks_1 : "**{0} En İyi 10 Oynatma Listesi iÅleniyor**\n\n**đTalep Eden:** {1}\nđĸ**Kanal Oynatma:** {2}\n\n /stats'a gÃļre En İyi 10 parçayÄą kontrol edin"
+tracks_2 : "**Hata**\n\nBot'un sunucularÄąnda **{0} En İyi 10 Oynatma Listesi** yok. LÃŧtfen baÅka bir oynatma listesi deneyin"
+
+
+# TOOLS
+
+#Lyrics
+lyrics_1 : "**KullanÄąm:**\n\n/lyrics [ ÅarkÄą ADÄą]"
+lyrics_2 : "ÅarkÄą SÃļzleri Arama"
+lyrics_3 : "â ÅarkÄą sÃļzleri getirilemediđ.\n\nđĄ**Aramaya çalÄąÅÄąldÄą:** {0}"
+lyrics_5 :
+lyrics_4 : "Uzun spam tÃŧrlerinde ÅarkÄą sÃļzÃŧ aramasÄąndan kaÃ§Äąnmak için aÅaÄÄądaki dÃŧÄmeyi tÄąklayÄąn ve aranÄąlan ÅarkÄą sÃļzlerini alÄąn."
+
+#Ping
+ping_1 : "Ping!!!!"
+
+# Song
+song_1 : "YouTube'dan MÃŧzik veya Video'yu yalnÄązca Ãļzel sohbette indirebilirsiniz. LÃŧtfen beni Ãļzel sohbette baÅlat."
+song_2 : "**KullanÄąm:**\n\n/song [ÅarkÄą AdÄą] veya [Youtube Link]"
+song_3 : "CanlÄą BaÄlantÄą AlgÄąlandÄą. CanlÄą youtube videolarÄąnÄą indiremiyorum. "
+song_4 : "**đ BaÅlÄąk:**- {0}\n\nİndirmek istediÄiniz tÃŧrÃŧ seçin."
+song_5 : "Geçerli bir Youtube BaÄlantÄąsÄą deÄil"
+song_6 : "Format AlÄąnÄąyor.. \n\nLÃŧtfen Bekleyin.."
+song_7 : "Video için kullanÄąlabilir biçimler alÄąnamadÄą. LÃŧtfen baÅka bir parça deneyin."
+song_8 : "İndirme BaÅladÄą\n\nİndirme hÄązÄą yavaÅ olabilir. LÃŧtfen bekleyin.."
+song_9 : "Youtube-DL'den ÅarkÄą indirilemedi\n\n**Nedeni:** {0}"
+song_10 : "Sunuculardan telegrama yÃŧklenemedi."
+song_11 : "YÃŧkleme BaÅladÄą\n\nYÃŧkleme hÄązÄą yavaÅ olabilir. LÃŧtfen bekleyin.."
+
+# Tools - Queue
+queue_1 : "LÃŧtfen Bekleyin.. SÄąra AlÄąnÄąyor.."
+queue_2 : "SÄąrada Hiç BirÅey Yok."
+queue_3 : "**Queued Tracks: ** [Checkout More Queued Tracks From Here]({0})"
+queue_4 : "âŗ SÄąraya eklendi **#{0}\n\nđBaÅlÄąk:** {1}\n**âąSÃŧre:** {2}\nđ**Talep Eden:** {3}"
+
+# All Streaming Lines
+stream_1 : "đĄ **YayÄąn BaÅladÄą**\n\nđ**Talep Eden:** {0}\nđĻ**Bilgi: **[Buradan]({1})"
+stream_2 : "đĄ **URL ile YayÄąna BaÅladÄą **\n\nđ**Talep Eden:** {0}"
+stream_3 : "đĄ **YayÄąn BaÅladÄą**\n\n**đBaÅlÄąk:** {0}\nâī¸**SÃŧre**: {1}\nđ¤**İsteyen:** {2}"
+stream_4 : "đĄ **AkÄąÅ BaÅlatÄąldÄą**\n\n**đBaÅlÄąk:** [{0}]({1})\nâī¸**SÃŧre**: {2}\nđ¤**İsteyen:** {3}"
+
+# Inline Buttons
+
+#General Buttons
+CLOSE_BUTTON : "đ Kapat"
+CLOSEMENU_BUTTON : "đ MenÃŧyÃŧ Kapat"
+BACK_BUTTON : "âŦ
Geri"
+UNBAN_BUTTON : "đ AsistanÄąn yasaÄÄąnÄą kaldÄąr"
+
+#Lyrics
+L_B_1 : "đ ÅarkÄą SÃļzlerini Åimdi Kontrol Et"
+
+# Start
+S_B_1 : "đ Komutlar"
+S_B_2 : "đ§ Ayarlar"
+S_B_3 : "đ¨ Destek"
+S_B_4 : "đ¨ Kanal"
+S_B_5 : "â Beni Grubuna ekle"
+S_B_6 : "đĄ Git Repo"
+S_B_7 : "đ¤ Bot Owner"
+S_B_8 : "đ NasÄąl kullanÄąlÄąr? Komutlar MenÃŧsÃŧ."
+
+#Help
+H_B_1 : "Admin Commands"
+H_B_2 : "Play Commands"
+H_B_3 : "Bot Commands"
+H_B_4 : "Extra Commands"
+H_B_5 : "Close Menu"
+
+#PlayMode
+PM_B_1 : "DirectPlay"
+PM_B_2 : "InlineMarkup"
+PM_B_3 : "ChannelPlay"
+
+#Play
+P_B_1 : "đĩ Play Audio"
+P_B_2 : "đĨ Play Video"
+P_B_3 : "đŽ Start Live Stream"
+P_B_4 : "đĩ Play Playlist"
+
+#Playlist
+PL_B_1 : "đ Play Playlist"
+PL_B_2 : "â Playlists"
+PL_B_3 : "â Additional"
+PL_B_4 : "đĄ Play Mode"
+PL_B_5 : "đ Del Whole Playlist"
+PL_B_6 : "âī¸ Delete Playlist"
+PL_B_7 : "âī¸ Yes, I'm sure. Delete it"
+PL_B_8 : "đĸ Play Top 10"
+PL_B_9 : "đ¤ Play Global Top 10 Tracks"
+PL_B_10 : "đ Play Group's Top 10 Tracks"
+PL_B_11 : "đ¤ Play Personal Top 10 Tracks"
+
+#Settings
+ST_B_1 : "đ Aud Quality"
+ST_B_2 : "đĨ Vid Quality"
+ST_B_3 : "đŠ Auth Users"
+ST_B_4 : "đą Dashboard"
+ST_B_5 : "âļī¸ Play Mode"
+ST_B_6 : "đŗī¸âđ Language"
+ST_B_7 : "đ Clean Mode"
+ST_B_8 : "{0} Low Quality Audio"
+ST_B_9 : "{0} Medium Quality Audio"
+ST_B_10 : "{0} High Quality Audio"
+ST_B_11 : "{0} Low Quality Video"
+ST_B_12 : "{0} Medium Quality Video"
+ST_B_13 : "{0} High Quality Video"
+ST_B_14 : "â
Enabled"
+ST_B_15 : "â Disabled"
+ST_B_16 : "đ¤ Admins"
+ST_B_17 : "đĨ Everyone"
+ST_B_18 : "đ Authorized Users Lists"
+ST_B_19 : "đ Search Mode"
+ST_B_20 : "â
Direct"
+ST_B_21 : "â
Inline"
+ST_B_22 : "⯠Play Mode"
+ST_B_23 : "đ Group"
+ST_B_24 : "đˇ Channel"
+ST_B_25 : "đĢ Play Type"
+ST_B_26 : "đ Command Clean"
+
+#Song
+SG_B_1 : "âī¸ Open Private Chat"
+SG_B_2 : "đ Audio"
+SG_B_3 : "đĨ Video"
+
+#Stats
+SA_B_1 : "đĸ Top 10 Chat"
+SA_B_2 : "đĸ Top 10 Tracks"
+SA_B_3 : "đ§ Top 10 Users"
+SA_B_4 : "đˇ Top 10 Here"
+SA_B_5 : "đĄ Overall Stats"
+SA_B_6 : "đ¤ User Stats"
+SA_B_7 : "đĸ Global Top 10 Stats"
+SA_B_8 : "đ¤ Bot Stats"
+
+
+
+# Sudo Users [ If you are translating this to some other language .. you can leave all these strings in english language]
+
+#Sudo
+sudo_1 : "{0} zaten bir sudo kullanÄącÄąsÄą."
+sudo_2 : "Sudo KullanÄącÄąlarÄąna **{0}** eklendi."
+sudo_3 : "Bot'un Sudo'sunun bir parçasÄą deÄil."
+sudo_4 : "Bot'un Sudo KullanÄącÄąsÄąndan kaldÄąrÄąldÄą"
+sudo_5 : "âī¸ **Owners:** \n"
+sudo_6 : "\nâī¸ **Sudo Users:** \n"
+sudo_7 : "Sudo KullanÄącÄąsÄą Yok"
+
+#Block
+block_1 : "{0} bot tarafÄąndan zaten engellendi."
+block_2 : "Botun Engellenenler Listesine **{0}** eklendi. KullanÄącÄą artÄąk hiçbir koÅulda bot kullanamayacak.\n\nEngellenen kullanÄącÄąlarÄą kontrol edin: /blockedusers"
+block_3 : "KullanÄącÄą zaten Ãŧcretsiz ve engellenmedi."
+block_4 : "KullanÄącÄą engelleme listesinden kaldÄąrÄąldÄą. KullanÄącÄą artÄąk bot kullanabilecek."
+block_5 : "Engellenen KullanÄącÄą BulunamadÄą"
+block_6 : "Engellenen KullanÄącÄąlar Listesi AlÄąnÄąyor.. LÃŧtfen Bekleyin"
+block_7 : "**EngellenmiÅ kullanÄącÄąlar:**\n\n"
+
+#Blacklist Chats
+black_1 : "**KullanÄąm:**\n/blacklistchat [CHAT_ID]"
+black_2 : "Sohbet zaten kara listeye alÄąndÄą."
+black_3 : "Sohbet baÅarÄąyla kara listeye alÄąndÄą"
+black_4 : "**KullanÄąm:**\n/whitelistchat [CHAT_ID]"
+black_5 : "Sohbet zaten beyaz listede."
+black_6 : "Sohbet baÅarÄąyla beyaz listeye alÄąndÄą"
+black_7 : "**Kara Listeye AlÄąnmÄąÅ Sohbetler:**\n\n"
+black_8 : "Kara Listeye AlÄąnmÄąÅ Sohbet Yok"
+
+#videolimit
+vid_1 : "**KullanĹm:**\n/set_video_limit [İzin verilen sohbet sayĹsĹ] veya [Disable]"
+vid_2 : "LÃŧtfen Limiti Ayarlamak için SayÄąsal Rakamlar KullanÄąn."
+vid_3 : "GÃļrÃŧntÃŧlÃŧ GÃļrÃŧÅmelerin Maksimum SÄąnÄąrÄą, {0} Sohbet İçin TanÄąmlandÄą."
+vid_4 : "GÃļrÃŧntÃŧlÃŧ GÃļrÃŧÅmeler Devre DÄąÅÄą"
+
+#maintenance
+maint_1 : "**KullanÄąm:**\n/maintenance [enable|disable]"
+maint_2 : "BakÄąm için EtkinleÅtirildi"
+maint_3 : "BakÄąm Modu Devre DÄąÅÄą"
+
+#log
+log_1 : "**KullanÄąm:**\n/logger [enable|disable]"
+log_2 : "GÃŧnlÃŧk Loglar Etkin"
+log_3 : "GÃŧnlÃŧk Loglar Devre DÄąÅÄą"
+
+#videomode
+
+vidmode_1 : "**KullanÄąm:**\n/videomode [download|m3u8]"
+vidmode_2 : "Video Oynatma Modu, indirici olarak ayarlandÄą. Bot Åimdi parçalarÄą indirecek."
+vidmode_3 : "Video Oynatma Modu m3u8 olarak ayarlandÄą. Bot Åimdi parçalarÄą canlÄą olarak çalacak."
+
+#broadcast
+broad_1 : "**Bottan {1} Pinli {0} Sohbette YayÄąnlanan Mesaj.**"
+broad_2 : "Asistan YayÄąnÄą BaÅlatÄąldÄą..."
+broad_3 : "**YardÄąmcÄą YayÄąn:**\n\n"
+broad_4 : "Asistan 1, {0} sohbette yayÄąnlandÄą\n"
+broad_5 : "Asistan 2, {0} sohbette yayÄąnlandÄą\n"
+broad_6 : "Asistan 3, {0} sohbette yayÄąnlandÄą\n"
+broad_7 : "Asistan 4, {0} sohbette yayÄąnlandÄą\n"
+broad_8 : "Asistan 5, {0} sohbette yayÄąnlandÄą\n"
+broad_9 : "**KullanÄąm**:\n/broadcast [Mesaj] veya [Bir MesajÄą YanÄątla]"
+broad_10 : "LÃŧtfen yayÄąnlamak için biraz metin saÄlayÄąn."
+broad_11 : "**{0} KullanÄącÄąya YayÄąnlanan Mesaj.**"
+
+#Heroku
+heroku_1 : "Please make sure your Heroku API Key, Your App name are configured correctly in the heroku"
+heroku_2 : "You can only get logs of Heroku Apps"
+heroku_3 : "**Usage:**\n/get_var [Var Name]"
+heroku_4 : "Unable to find any such var."
+heroku_5 : ".env file not found."
+heroku_6 : "**Usage:**\n/del_var [Var Name]"
+heroku_7 : "{0} Deleted."
+heroku_8 : "**Usage:**\n/set_var [Var Name] [Var Value]"
+heroku_9 : "{0} has been updated successfully"
+heroku_10 : "{0} has been added successfully"
+heroku_11 : "Only for Heroku Apps"
+heroku_12 : "Checking Heroku Usage. Please Wait"
+heroku_13 : "Checking for available updates..."
+heroku_14 : "Git Command Error"
+heroku_15 : "Invalid Git Repsitory"
+
+#Private bot mode
+pbot_1 : "**KullanÄąm:**\n/authorize [CHAT_ID]"
+pbot_2 : "**KullanÄąm:**\n/unauthorize [CHAT_ID]"
+pbot_3 : "Yetkili listeye verilen sohbet eklendi"
+pbot_4 : "Verilen sohbet yetkili listeden kaldÄąrÄąldÄą"
+pbot_5 : "Sohbet zaten yetkili listede"
+pbot_6 : "Yetkili listede bÃļyle bir sohbet yok"
+pbot_7 : "Chat_id doÄrulanamadÄą.\n\nSayÄąsal olduÄundan ve doÄru biçimde olduÄundan emin olun. Sohbet kullanÄącÄą adÄą veya baÄlantÄąlarÄą kullanmayÄąn."
+pbot_8 : "LÃŧtfen bekleyin... Yetkili sohbetler getiriliyor."
+pbot_9 : "**Getirilen Sohbetler: **\n\n"
+pbot_10 : "Ãzel sohbet"
+pbot_11 : "Yetkili sohbet bulunamadÄą"
+pbot_12 : "Ãzel Bot Modu devre dÄąÅÄą.\n\nBotunuzu Ãļzel bot olarak kullanmak için **PRIVATE_BOT_MODE** = **True** olarak ayarladÄąÄÄąnÄązdan emin olun"
+pbot_13 : "\n**Getirilmeyen Sohbetler: **\n\n"
diff --git a/strings/readme.md b/strings/readme.md
new file mode 100644
index 0000000000000000000000000000000000000000..038bdff5702a3fec7d7976cf468f2a849697ce5b
--- /dev/null
+++ b/strings/readme.md
@@ -0,0 +1,18 @@
+# Yukki Multi-Language Support
+
+- These all are the languages currently available in Yukki Music Bot. You can edit or change all strings available.
+
+| Code | Language | Contributor |
+|-|-------|-------|
+| en | English | Thanks to [TeamYukki](https://t.me/TeamYukki)
+| si | Sinhala | Thanks to [Damantha](https://t.me/MrItzme) & [Supun](https://t.me/Supunma)
+| hi | Hindi | Thanks to [TeamYukki](https://t.me/TeamYukki)
+| ar | Arabic | Thanks to [Mustafa](https://t.me/tr_4z)
+| te | Telugu | Thanks to [Telugu Coders](https://t.me/tgshadow_fighters)
+
+
+### We need your help in translating Yukki Music Bot. How to Contribute?
+
+You can edit [`en.yml`](https://github.com/TeamYukki/YukkiMusicBot/blob/master/strings/langs/en.yml) present in langs folder to your own language and send us the edited file at [@YukkiSupport](https://t.me/YukkiSupport)
+
+- > Points to remember while editing : - Make sure you dont change any `{0}` or `{1}` while editing your codes - Donât change "general_1" or any other such keys present.