 		}
 	}
 
+	public func simpleSpeechRecognizerStatus() -> PrivacyAuthorizationSimpleStatus {
+		if #available(iOS 10, *) {
+			switch SFSpeechRecognizer.authorizationStatus() {
+			case .notDetermined:
+				return .notDetermined
+			case .restricted, .denied:
+				return .unauthorized
+			case .authorized:
+				return .authorized
+			}
+		} else {
+			return .notAvailable
+		}
+	}
+
 	public func locationStatus() -> CLAuthorizationStatus {
 		return CLLocationManager.authorizationStatus()
+	}
+
+	public func simpleLocationStatus() -> PrivacyAuthorizationSimpleStatus {
+		switch CLLocationManager.authorizationStatus() {
+		case .notDetermined:
+			return .notDetermined
+		case .restricted, .denied:
+			return .unauthorized
+		case .authorizedAlways, .authorizedWhenInUse:
+			return .authorized
+		}
 	}
 
 	// MARK: CLLocationManagerDelegate

		return _locationManager!
	}

	public func eventStatus() -> EKAuthorizationStatus {
		return EKEventStore.authorizationStatus(for: .event)
	}

	public func reminderStatus() -> EKAuthorizationStatus {
		return EKEventStore.authorizationStatus(for: .reminder)
	}

	public func photosStatus() -> PHAuthorizationStatus {
		return PHPhotoLibrary.authorizationStatus()
	}

	public func mediaStatus() -> MPMediaLibraryAuthorizationStatus {
		return MPMediaLibrary.authorizationStatus()
	}

	public func microphoneStatus() -> AVAuthorizationStatus {
		return AVCaptureDevice.authorizationStatus(forMediaType: AVMediaTypeAudio)
	}

	public func siriStatus() -> Int? {

	case location
}

public enum PrivacyAuthorizationSimpleStatus {
	case notAvailable
	case notDetermined
	case authorized
	case unauthorized
}

public struct PrivacyAuthorizationStatus {
	let eventStatus: PrivacyAuthorizationSimpleStatus
	let reminderStatus: PrivacyAuthorizationSimpleStatus
	let photosStatus: PrivacyAuthorizationSimpleStatus
	let mediaStatus: PrivacyAuthorizationSimpleStatus
	let microphoneStatus: PrivacyAuthorizationSimpleStatus
	let siriStatus: PrivacyAuthorizationSimpleStatus
	let cameraStatus: PrivacyAuthorizationSimpleStatus
	let speechRecognizerStatus: PrivacyAuthorizationSimpleStatus
	let locationStatus: PrivacyAuthorizationSimpleStatus
}

public struct PrivacyAuthorizationNotification {
	public static let AuthorizationChanged = NSNotification.Name("PrivacyAuthorizationNotification_AuthorizationChanged")
}
