                         return
                     }
 
-                    sself.coordinatorDelegate?.reactionsMenuViewModel(sself, didReactionFailedWithError: error, reaction: reaction.rawValue, isAddReaction: false)
+                    if notifyDelegate {
+                        sself.coordinatorDelegate?.reactionsMenuViewModel(sself, didReactionFailedWithError: error, reaction: reaction.rawValue, isAddReaction: false)
+                    }
             })
         }
 
-        self.coordinatorDelegate?.reactionsMenuViewModel(self, didSendReaction: reaction.rawValue, isAddReaction: !selected)
-
-        if selected {
-            self.ensure3StateButtons(withReaction: reaction)
+        if notifyDelegate {
+            self.coordinatorDelegate?.reactionsMenuViewModel(self, didSendReaction: reaction.rawValue, isAddReaction: !selected)
         }
     }
 

                    return
                }

                sself.coordinatorDelegate?.reactionsMenuViewModel(sself, didReactionComplete: reaction.rawValue, isAddReaction: true)

            }, failure: {[weak self] (error) in
                print("[ReactionsMenuViewModel] react: Error: \(error)")

                    return
                }

                if notifyDelegate {
                    sself.coordinatorDelegate?.reactionsMenuViewModel(sself, didReactionComplete: reaction.rawValue, isAddReaction: false)
                }

                }, failure: {[weak self] (error) in
                    print("[ReactionsMenuViewModel] react: Error: \(error)")
