public override Task <Optional <InteractivityResult <T> > > ParseAsync(SocketReaction value, DateTime startTime)
        {
            int index = Emotes.FindIndex(x => x.Equals(value.Emote));

            return(Task.FromResult(Optional.Create(
                                       index >= Values.Count
                ? new InteractivityResult <T>(default, DateTime.UtcNow - startTime, false, true)