     {:db (update-in db [:wallet :accounts checksum] assoc
                     :min-block min-block
                     :min-block-transfers-count min-block-transfers-count)}))
+
+(fx/defn set-max-block-with-transfers
+  [{:keys [db]} address transfers]
+  (let [max-block (reduce
+                   (fn [max-block {:keys [block]}]
+                     (if (> block max-block)
+                       block
+                       max-block))
+                   (get-in db [:wallet :accounts address :max-block] 0)
+                   transfers)]
+    {:db (assoc-in db [:wallet :accounts address :max-block] max-block)}))
 
 (defn update-fetching-status
   [db addresses fetching-type state]

             "count" (count transfers)
             "limit" limit)
  (let [checksum (eip55/address->checksum address)
        min-known-block (or (get-min-known-block db address)
                            (:ethereum/current-block db))
        effects (cond-> [(when (seq transfers)
                           (set-lowest-fetched-block checksum transfers))]

                  (seq transfers)
                  (concat (mapv add-transfer transfers))

(defn get-min-known-block [db address]
  (get-in db [:wallet :accounts (eip55/address->checksum address) :min-block]))

(defn get-max-block-with-transfers [db address]
  (get-in db [:wallet :accounts (eip55/address->checksum address) :max-block]))

(defn min-block-transfers-count [db address]
  (get-in db [:wallet :accounts
              (eip55/address->checksum address)
