I made a discord bot that assigns the role of a member but it is not working

This is my code I am using repl it

client = discord.Client()

async def on_ready():
    print('We have logged in as {0.user}'.format(client))

async def on_message(message):
    if message.author == client.user:
    member = message.author

    role = discord.utils.find(lambda r: r.name == 'Member', message.guild.roles)
    if role in member.roles :
      await message.channel.send(message.author.mention + " please move this conversation to #unverified-chat")

      var = discord.utils.get(message.guild.roles, name="Member")
      if member is not None :
        await member.add_roles(var)
        await message.channel.send('Hello ' + message.author.mention + '! You have been granted the role of a member')


I get error even when I have given the bot administrator permission :-

Traceback (most recent call last):
  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/discord/client.py", line 343, in _run_event
    await coro(*args, **kwargs)
  File "main.py", line 24, in on_message
    await member.add_roles(var)
  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/discord/member.py", line 777, in add_roles
    await req(guild_id, user_id, role.id, reason=reason)
  File "/opt/virtualenvs/python3/lib/python3.8/site-packages/discord/http.py", line 248, in request
    raise Forbidden(r, data)
discord.errors.Forbidden: 403 Forbidden (error code: 50013): Missing Permissions

The error says that I haven't given the bot required permissions but I have given it all the permissions (Administrator Permission included). Can anyone explain this to me?