         sendSubview(toBack: backgroundImageView)
         addSubview(tiledPDFView)
         
-        let doubleTapOne = UITapGestureRecognizer(target: self, action:#selector(PDFPageView.handleDoubleTap(_:)))
+        let doubleTapOne = UITapGestureRecognizer(target: self, action:#selector(handleDoubleTap))
         doubleTapOne.numberOfTapsRequired = 2
         doubleTapOne.cancelsTouchesInView = false
         addGestureRecognizer(doubleTapOne)
         
-        let singleTapOne = UITapGestureRecognizer(target: self, action:#selector(PDFPageView.handleSingleTap(_:)))
+        let singleTapOne = UITapGestureRecognizer(target: self, action:#selector(handleSingleTap))
         singleTapOne.numberOfTapsRequired = 1
         singleTapOne.cancelsTouchesInView = false
         addGestureRecognizer(singleTapOne)


internal final class PDFPageView: UIScrollView {
    /// The TiledPDFView that is currently front most.
    fileprivate var tiledPDFView: TiledView!
    
    fileprivate var PDFScale: CGFloat?
    
    private let ZOOM_LEVELS = 2
    private let ZOOM_STEP = 2

    private weak var pageViewDelegate: PDFPageViewDelegate?
    
    init(frame: CGRect, document: PDFDocument, pageNumber: Int, pageViewDelegate: PDFPageViewDelegate?) {
        let backgroundImage = document.getPDFPageImage(at: pageNumber + 1)
        guard let pageRef = document.coreDocument.page(at: pageNumber + 1) else { fatalError() }
        
        PDFPage = pageRef
        self.pageViewDelegate = pageViewDelegate
        
        // Determine the size of the PDF page.
        var pageRect = PDFPage.getBoxRect(.mediaBox)
        PDFScale = min(frame.size.width/pageRect.size.width, frame.size.height/pageRect.size.height)
        pageRect.size = CGSize(width: pageRect.size.width * PDFScale, height: pageRect.size.height * PDFScale)
        
        guard !pageRect.isEmpty else { fatalError() }
        
