 
 extension GCCountryPickerViewController {
     
-    /// Called after the controller's view is loaded into memory.
-    ///
-    /// This method is called after the view controller has loaded its view hierarchy into memory. This method is called regardless of whether the view hierarchy was loaded from a nib file or created programmatically in the loadView() method. You usually override this method to perform additional initialization on views that were loaded from nib files.
-    
     public override func viewDidLoad() {
         
         super.viewDidLoad()

        return headerView
    }
    
    /// Tells the delegate that the specified row is now selected.
    ///
    /// The delegate handles selections in this method. One of the things it can do is exclusively assign the check-mark image (checkmark) to one row in a section (radio-list style). This method isn’t called when the isEditing property of the table is set to true (that is, the table view is in editing mode). See "Managing Selections" in Table View Programming Guide for iOS for further information (and code examples) related to this method.
    ///
    /// - Parameter tableView: A table-view object informing the delegate about the new row selection.
    /// - Parameter indexPath: An index path locating the new selected row in tableView.
    
    public override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
        
        self.delegate?.countryPicker(self, didSelectCountry: self.countries[indexPath.section][indexPath.row])


extension GCCountryPickerViewController: UISearchResultsUpdating {
    
    public func updateSearchResults(for searchController: UISearchController) {
        
        var searchResults = [GCCountry]()
