     }
 }
 
+extension TabNavigationImagePickerController {
+    fileprivate class var resourceBundlePath: String { return String(describing: self) + ".bundle/" }
+}
+
 // MARK: - _AssetsViewController.
 
 fileprivate class _AssetsViewController: UICollectionViewController {

            if let isFlashActive = change?[.newKey] as? Bool {
                print("new flash mode: " + isFlashActive.description)
                if isFlashActive {
                    humanReadingInfos = [[#imageLiteral(resourceName: "flash_auto")], humanReadingInfos].joined().reversed()
                }
            }
        } else {

            // _lockFocusAndExpose(at: previewLayer.captureDevicePointOfInterest(for: location))
            _focus(using: .autoFocus, exposure: .autoExpose, at: pointOfInterest, monitorSubjectAreaChange: false)
            _animateScalingContinuousIndicator(at: location)
            if !humanReadingInfos.contains{ $0.type == .autoModesLocked } {
                humanReadingInfos = [[(_HumanReading.autoModesLocked, "自动曝光/自动对焦锁定")], humanReadingInfos.filter({ $0.type != .autoModesLocked })].joined().reversed()
            }
        case .changed: break
            // print("Long press gesture is changing.")
        case .failed: fallthrough
