 
     @available(iOS 9.0, *)
     private func toApplicationShortcut(bundleIdentifier: String) -> UIApplicationShortcutItem {
-        return UIMutableApplicationShortcutItem(type: bundleIdentifier + "." + id, localizedTitle: title, localizedSubtitle: subtitle, icon: icon!.toApplicationShortcutIcon(), userInfo: nil)
+        return UIMutableApplicationShortcutItem(type: bundleIdentifier + "." + type, localizedTitle: title, localizedSubtitle: subtitle, icon: icon!.toApplicationShortcutIcon(), userInfo: nil)
     }
 
 }

    @available(iOS 9.0, *)
    init(shortcutItem: UIApplicationShortcutItem) {
        if let range = shortcutItem.type.rangeOfCharacterFromSet(NSCharacterSet(charactersInString: "."), options: .BackwardsSearch) {
            id = shortcutItem.type.substringFromIndex(range.endIndex)
        }
        else {
            id = "unknown"
        }
        title = shortcutItem.localizedTitle
        subtitle = shortcutItem.localizedSubtitle

    func handle(viewController: UIViewController?, shortcut: Shortcut) -> Bool {
        guard let viewController = viewController as? QuickActionSupport else { return false }
        if #available(iOS 9.0, *) {
            // FIXME: Can't use `shortcutType`: Segmentation fault: 11
            //let shortcutType = T.init(type: shortcut.type)
            viewController.prepareForQuickAction(T.init(type: shortcut.type)!)
            return true
        }
        else {
