<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 async def attempt_add_reaction(msg: discord.Message, reaction: typing.Union[str, discord.Emoji])\ -> typing.Optional[discord.Reaction]: """ Try to add a reaction to a message, ignoring it if it fails for any reason. :param msg: The message to add the reaction to. :param reaction: The reaction emoji, could be a string or `discord.Emoji` :return: A `discord.Reaction` or None, depending on if it failed or not. """

    try:
        return await msg.add_reaction(reaction)
    except discord.HTTPException:
        pass