     }
 }
 
-class PFSTableViewCell: UITableViewCell {
+open class PFSTableViewCell: UITableViewCell {
     
     private(set) var disposeBag = DisposeBag()
     
-    override func awakeFromNib() {
+    open override func awakeFromNib() {
         self.layoutMargins = UIEdgeInsetsZero //or UIEdgeInsetsMake(top, left, bottom, right)
         self.separatorInset = UIEdgeInsetsZero //if you also want to adjust separatorInset
     }
     
-    override func prepareForReuse() {
+    open override func prepareForReuse() {
         super.prepareForReuse()
         disposeBag = DisposeBag() // because life cicle of every cell ends on prepare for reuse
     }


extension PFSTableviewController: RMTableViewRefresh{
    
    func footerRefreshingFor(tableView: UITableView) {}
    
    func headerRefreshingFor(tableView: UITableView) {}
}

open class PFSTableViewController: PFSViewController {

        // Dispose of any resources that can be recreated.
    }
    
    open func emptyFooterView()  {
        for tableView in self.tableViews {
            tableView.tableFooterView = UIView()
            tableView.rowHeight = UITableViewAutomaticDimension
