                 self.subject = subject
                 self.tableView?.reloadData()
                 
-                delay(0.3) { [weak self] in
-                    self?.fetchProgress(of: subject)
-                }
+                self.fetchProgress(of: subject)
             } catch {
                 consolePrint("Refetch subject occurred error: \(error)")
             }

        guard subject.responseGroup != .large else {
            consolePrint("Subject-large is already exists")
            
            delay(0.3) { [weak self] in
                self?.fetchProgress(of: subject)
            }
            
            return
        }

            consolePrint("… get progress result of subject: \(subject.name)")
            NetworkSpinner.off()
            do {
                let progress = try result.resolve()
                
                // Prevent tableView scrolling lag issue
                DispatchQueue.main.async { [weak self] in
                    self?.progress = progress
                    self?.tableView?.reloadData()
                }
                
            } catch {
                consolePrint(error)
            }
