             }
         }
         get {
-            guard accessPermission == .authorized else {
+            guard type(of: self).accessPermission == .authorized else {
                 return nil
             }
             return _currentLocation

    }

    func locationManager(_: CLLocationManager, didChangeAuthorization _: CLAuthorizationStatus) {
        NotificationCenter.default.post(name: NSNotification.Name("gpsStateChanged"), object: accessPermission)
    }
}

    }

    func requestLocation() {
        guard type(of: self).accessPermission == .authorized else { return }
        if #available(iOS 9.0, *) {
            locationManager.requestLocation()
        } else {
