async def resetup(self, ctx):
        """Re-SetUp the juke box, idk why would you wanna do that but you can, so yay"""

        state = GuildState(ctx.guild)
        jb_channel = state.jb_channel
        if jb_channel == None:
            await ctx.send("F**k U person, Use Setup Command, U Sick F**k")
        else:
            try:
                self.reset_phase = True
                state.jb_embed_id = state.jb_queue_id = state.jb_image_id = state.jb_loading_id = None
                async for msg in jb_channel.history():
                    await msg.delete()

                #! IMAGE
                image_msg = await state.jb_channel.send(self.we_tube_bg_url)
                state.jb_image_id = image_msg.id

                #! EMBED
                reactions = {
                    "тПпя╕П": "play/pause",
                    "тП╣я╕П": "stop",
                    "тПоя╕П": "previous",
                    "тПня╕П": "forward",
                    "ЁЯФБ": "loop",
                    "ЁЯФА": "shuffle"
                }
                embed = discord.Embed(title="Not Playing Anything right now.",
                                      color=discord.Colour.from_rgb(
                                          0, 255, 255))
                embed.set_image(url=self.juke_box_url)

                embed_msg = await state.jb_channel.send(embed=embed)
                state.jb_embed_id = embed_msg.id
                for reaction in reactions:

                    await embed_msg.add_reaction(reaction)
                #! LOADING
                loading_msg = await state.jb_channel.send(
                    f"0:00/0:00 - {':black_large_square: '*10}")
                state.jb_loading_id = loading_msg.id

                #! QUEUE
                queue_msg = await state.jb_channel.send("__QUEUE LIST__")
                state.jb_queue_id = queue_msg.id

                await state.jb_channel.send("Done")
                self.reset_phase = False

            except:
                pass
    async def juke_update(self):
        for guild in self.client.guilds:
            state = GuildState(guild)
            voice = get(self.client.voice_clients, guild=guild)
            if state.jb_channel and voice:
                tstate = TempState(guild)
                queue = [x for x in tstate.queue if type(x) != str]
                if state.jb_embed_id:
                    embed_msg = await state.jb_channel.fetch_message(
                        state.jb_embed_id)
                    if embed_msg:
                        if tstate.old_queue_embed != tstate.queue:
                            tstate.old_queue_embed = tstate.queue
                            if queue == []:
                                embed = discord.Embed(
                                    title="Not Playing Anything right now.",
                                    color=discord.Colour.from_rgb(0, 255, 255))
                                embed.set_image(url=self.juke_box_url)
                                await embed_msg.edit(embed=embed)
                            else:
                                vid = queue[0]
                                embed = discord.Embed(
                                    title=vid.title,
                                    color=discord.Colour.from_rgb(0, 255, 255))
                                embed.set_image(url=vid.thumbnail)

                                await embed_msg.edit(embed=embed)
                    else:
                        state.jb_embed_id = None

                if state.jb_queue_id:
                    queue_msg = await state.jb_channel.fetch_message(
                        state.jb_queue_id)
                    if queue_msg:
                        if tstate.old_queue_queue != tstate.queue:
                            tstate.old_queue_queue = tstate.queue
                            if queue == []:

                                await queue_msg.edit(content="__QUEUE LIST__")
                            else:
                                string = "__QUEUE__\n"
                                for index in range(len(tstate.queue)):
                                    i = tstate.queue[index]
                                    ostring = string[:]
                                    string += f"{index+1}. {i.title} ({i.duration}) - Requested by `{i.requester}`\n"
                                    if len(string) > 2000:
                                        string = ostring
                                        break

                                await queue_msg.edit(content=string)
                    else:
                        state.jb_queue_id = None

                if state.jb_loading_id:
                    loading_msg = await state.jb_channel.fetch_message(
                        state.jb_loading_id)
                    if loading_msg:
                        if voice.is_playing():
                            if queue != []:
                                vid = queue[0]

                                def two_dig(number):
                                    if number < 10:
                                        return f"0{number}"
                                    else:
                                        return str(number)

                                if vid.duration.count(":") == 1:
                                    ntime = f"{tstate.time//60}:{two_dig(tstate.time%60)}"
                                else:
                                    ntime = f"{tstate.time//3600}:{two_dig(tstate.time%3600//60)}:{two_dig(tstate.time//60)}"

                                ntime = str(timedelta(seconds=tstate.time))

                                amt = int(tstate.time / vid.seconds *
                                          10) if vid.seconds != 0 else 0

                                ntime = ntime.split(":")
                                for i in range(3 -
                                               len(vid.duration.split(":"))):
                                    ntime.pop(i)
                                ntime = ":".join(ntime)

                                await loading_msg.edit(
                                    content=
                                    f"{ntime}/{vid.duration} {':black_square_button:'*amt +':black_large_square:'*(10-amt)}"
                                )

                            else:
                                await loading_msg.edit(
                                    content=
                                    f"0:00/0:00 - {':black_large_square:'*10}")

                    else:
                        state.jb_loading_id = None