                           :download-slots default-download-slots
                           :num-of-uploads 0
                           :num-of-downloads 0
-                          :download-progress {}}))
+                          :download-progress {}
+                          :download-status {}}))
 
 (enable-console-print!)
 

(defn request-file-download [track-id]
  (if (nil? (get (:music-files @app-state) track-id))
    (do
      (swap! app-state assoc :music-files (merge (:music-files @app-state)
                                                 {track-id (new js/Blob)}))
      (swap! app-state assoc :num-of-downloads (inc (:num-of-downloads @app-state)))

                                          track-order))
        not-downloaded-tracks (filter #(not (nil? %1))
                                      (map (fn [id]
                                             (if-not (or (is-track-downloading? id)
                                                         (is-track-downloaded? id))
                                               id))
                                           track-order))
        nearest-tracks (sort (fn [a b]
