diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,9 +1,13 @@
 
+Version 0.4
+-----
+
+* Introduced the discrete event priorities.
+
 Version 0.3
 -----
 
 * Using the mwc-random package for generating random numbers by default.
-
 
 Version 0.2
 -----
diff --git a/Simulation/Aivika/Branch/BR.hs b/Simulation/Aivika/Branch/BR.hs
--- a/Simulation/Aivika/Branch/BR.hs
+++ b/Simulation/Aivika/Branch/BR.hs
@@ -2,7 +2,7 @@
 {-# LANGUAGE FlexibleInstances #-}
 
 -- |
--- Module     : Simulation.Aivika.Branch.Br
+-- Module     : Simulation.Aivika.Branch.BR
 -- Copyright  : Copyright (c) 2016-2017, David Sorokin <david.sorokin@gmail.com>
 -- License    : BSD3
 -- Maintainer : David Sorokin <david.sorokin@gmail.com>
diff --git a/Simulation/Aivika/Branch/Event.hs b/Simulation/Aivika/Branch/Event.hs
--- a/Simulation/Aivika/Branch/Event.hs
+++ b/Simulation/Aivika/Branch/Event.hs
@@ -22,7 +22,7 @@
 import Control.Monad
 import Control.Monad.Trans
 
-import qualified Simulation.Aivika.PriorityQueue.Pure as PQ
+import qualified Simulation.Aivika.PriorityQueue.EventQueue.Pure as PQ
 
 import Simulation.Aivika.Trans
 import Simulation.Aivika.Trans.Internal.Types
@@ -50,11 +50,11 @@
                            queueBusy = f,
                            queueTime = t }
 
-  enqueueEvent t (Event m) =
+  enqueueEventWithPriority t priority (Event m) =
     Event $ \p ->
     BR $ \ps ->
     let pq = queuePQ $ runEventQueue $ pointRun p
-    in modifyIORef pq $ \x -> PQ.enqueue x t m
+    in modifyIORef pq $ \x -> PQ.enqueue x t priority m
 
   runEventWith processing (Event e) =
     Dynamics $ \p ->
@@ -84,7 +84,7 @@
            r  = pointRun p
        f <- fmap PQ.queueNull $ readIORef pq
        unless f $
-         do (t2, c2) <- fmap PQ.queueFront $ readIORef pq
+         do (t2, priority2, c2) <- fmap PQ.queueFront $ readIORef pq
             let t = queueTime q
             t' <- readIORef t
             when (t2 < t') $ 
@@ -99,6 +99,7 @@
                      n2 = fromIntegral $ floor ((t2 - t0) / dt)
                  invokeBR ps $
                    c2 $ p { pointTime = t2,
+                            pointPriority = priority2,
                             pointIteration = n2,
                             pointPhase = -1 }
                  call q p ps
diff --git a/Simulation/Aivika/Branch/Internal/BR.hs b/Simulation/Aivika/Branch/Internal/BR.hs
--- a/Simulation/Aivika/Branch/Internal/BR.hs
+++ b/Simulation/Aivika/Branch/Internal/BR.hs
@@ -54,9 +54,6 @@
 
 instance Monad m => Monad (BR m) where
 
-  {-# INLINE return #-}
-  return = BR . const . return
-
   {-# INLINE (>>=) #-}
   (BR m) >>= k = BR $ \ps ->
     m ps >>= \a ->
diff --git a/aivika-branches.cabal b/aivika-branches.cabal
--- a/aivika-branches.cabal
+++ b/aivika-branches.cabal
@@ -1,5 +1,5 @@
 name:            aivika-branches
-version:         0.3.2
+version:         0.4
 synopsis:        Nested discrete event simulation module for the Aivika library
 description:
     This package extends the aivika-transformers [1] library and allows creating branches to run
@@ -17,10 +17,10 @@
 category:        Simulation
 license:         BSD3
 license-file:    LICENSE
-copyright:       (c) 2016-2017. David Sorokin <david.sorokin@gmail.com>
+copyright:       (c) 2016-2023. David Sorokin <davsor@mail.ru>
 author:          David Sorokin
-maintainer:      David Sorokin <david.sorokin@gmail.com>
-homepage:        http://www.aivikasoft.com
+maintainer:      David Sorokin <davsor@mail.ru>
+homepage:        https://gitflic.ru/project/dsorokin/aivika-branches
 cabal-version:   >= 1.10
 build-type:      Simple
 tested-with:     GHC == 8.0.1
@@ -51,8 +51,8 @@
                      containers >= 0.4.0.0,
                      random >= 1.0.0.3,
                      mwc-random >= 0.13.1.0,
-                     aivika >= 5.9.1,
-                     aivika-transformers >= 5.9.1
+                     aivika >= 6.0.0,
+                     aivika-transformers >= 6.0.0
 
     other-extensions:   TypeFamilies,
                         MultiParamTypeClasses,
@@ -66,4 +66,4 @@
 source-repository head
 
     type:     git
-    location: https://github.com/dsorokin/aivika-branches
+    location: https://gitflic.ru/project/dsorokin/aivika-branches
