# Buggy code
async def _build_queue_search_page(ctx: commands.Context, page_num, search_list):
    search_num_pages = math.ceil(len(search_list) / 10)
    search_idx_start = (page_num - 1) * 10
    search_idx_end = search_idx_start + 10
    track_match = ""
    for i, track in enumerate(
        search_list[search_idx_start:search_idx_end], start=search_idx_start
    ):
        track_idx = i + 1
        if type(track) is str:
            track_location = audio_dataclasses.LocalPath(track).to_string_hidden()
            track_match += "`{}.` **{}**\n".format(track_idx, track_location)
        else:
            track_match += "`{}.` **{}**\n".format(track[0], track[1])
    embed = discord.Embed(
        colour=await ctx.embed_colour(),
        title=_("Matching Tracks:"),
        description=track_match,
    )
    embed.set_footer(
        text=(_("Page {page_num}/{total_pages}") + " | {num_tracks} tracks").format(
            page_num=page_num, total_pages=search_num_pages, num_tracks=len(search_list)
        )
    )
    return embed


# Traceback (RuntimeError)
Traceback (most recent call last):
File "/home/martinebots/martinebotsvenv/lib/python3.7/site-packages/discord/ext/commands/core.py", line 79, in wrapped
ret = await coro(*args, **kwargs)
File "/home/martinebots/martinebotscogs/cogs_modified/audio/audio.py", line 3183, in play
await self._enqueue_tracks(ctx, query)
File "/home/martinebots/martinebotscogs/cogs_modified/audio/audio.py", line 3885, in _enqueue_tracks
result, called_api = await self.music_cache.lavalink_query(ctx, player, query)
File "/home/martinebots/martinebotscogs/cogs_modified/audio/apis.py", line 911, in lavalink_query
results = await player.load_tracks(query)
File "/home/martinebots/martinebotsvenv/lib/python3.7/site-packages/lavalink/rest_api.py", line 300, in load_tracks
self.__check_node_ready()
File "/home/martinebots/martinebotsvenv/lib/python3.7/site-packages/lavalink/rest_api.py", line 268, in __check_node_ready
raise RuntimeError("Cannot execute REST request when node not ready.")
RuntimeError: Cannot execute REST request when node not ready.

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "/home/martinebots/martinebotsvenv/lib/python3.7/site-packages/discord/ext/commands/bot.py", line 863, in invoke
await ctx.command.invoke(ctx)
File "/home/martinebots/martinebotsvenv/lib/python3.7/site-packages/discord/ext/commands/core.py", line 728, in invoke
await injected(*ctx.args, **ctx.kwargs)
File "/home/martinebots/martinebotsvenv/lib/python3.7/site-packages/discord/ext/commands/core.py", line 88, in wrapped
raise CommandInvokeError(exc) from exc
discord.ext.commands.errors.CommandInvokeError: Command raised an exception: RuntimeError: Cannot execute REST request when node not ready.```

# Fixed code
async def _build_queue_search_page(ctx: commands.Context, page_num, search_list):
    search_num_pages = math.ceil(len(search_list) / 10)
    search_idx_start = (page_num - 1) * 10
    search_idx_end = search_idx_start + 10
    track_match = ""
    for i, track in enumerate(
        search_list[search_idx_start:search_idx_end], start=search_idx_start
    ):
        track_idx = i + 1
        if type(track) is str:
            track_location = audio_dataclasses.LocalPath(track).to_string_user()
            track_match += "`{}.` **{}**\n".format(track_idx, track_location)
        else:
            track_match += "`{}.` **{}**\n".format(track[0], track[1])
    embed = discord.Embed(
        colour=await ctx.embed_colour(),
        title=_("Matching Tracks:"),
        description=track_match,
    )
    embed.set_footer(
        text=(_("Page {page_num}/{total_pages}") + " | {num_tracks} tracks").format(
            page_num=page_num, total_pages=search_num_pages, num_tracks=len(search_list)
        )
    )
    return embed