descartar compartilhamento personalizado viewcontroller

Estou tentando criar um controlador de exibição personalizado para ser usado com uma extensão de compartilhamento. Tudo funciona, mas não sei como descartar o controlador de exibição personalizado. Basicamente, inicio minha extensão de compartilhamento do safari e quero descartá-lo completamente e retornar à visualização do safari. Sei que isso não deve ser difícil, mas sou novo em compartilhar extensões. Abaixo está o meu código base. Obrigado. Prumo

//
//  ShareViewController.swift
//  ShareExtension


import UIKit
import Social
import MobileCoreServices

class ShareViewController: UIViewController {
    private var url: NSURL?


    @IBAction func backButton(_ sender: Any) {
        print("back button pressed")

       self.dismiss(animated: true, completion: nil)
    }


    override func viewDidLoad()  {
        super.viewDidLoad()
    }


    private func getURL() {
        let extensionItem = extensionContext?.inputItems.first as! NSExtensionItem
        let itemProvider = extensionItem.attachments?.first as! NSItemProvider
        let propertyList = String(kUTTypePropertyList)
        if itemProvider.hasItemConformingToTypeIdentifier(propertyList) {
            itemProvider.loadItem(forTypeIdentifier: propertyList, options: nil, completionHandler: { (item, error) -> Void in
                guard let dictionary = item as? NSDictionary else { return }
                OperationQueue.main.addOperation {
                    if let results = dictionary[NSExtensionJavaScriptPreprocessingResultsKey] as? NSDictionary,
                        let urlString = results["URL"] as? String,
                        let url = NSURL(string: urlString) {
                        self.url = url
                    }
                }
            })
        } else {
            print("error")
        }
    }
}

questionAnswers(1)

yourAnswerToTheQuestion