                             }
 
                             dispatch_async(dispatch_get_main_queue(), {
-                                self.posts.extend(posts)
-                                self.bottomOffset += 20
+                                self.loadingCompletion = {
+                                    self.posts.extend(posts)
+                                    self.bottomOffset += 20
+                                }
                                 self.reloadTable()
                             })
                         })

    }
    var loadingBottom = false
    var lastPoint: CGPoint?
    
    required override init() {
        super.init(nibName: nil, bundle: nil)

                    }

                    dispatch_async(dispatch_get_main_queue(), {
                        self.loadingCompletion = {
                            self.posts = posts
                            self.heightCache.removeAll()
                        }
                        self.reloadTable()
                    })
                })
